明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1596|回复: 6

获取图层名时遇到的问题 谢谢

[复制链接]
发表于 2004-4-18 16:34:00 | 显示全部楼层 |阅读模式
这段程序 目的是每找到一个图层就把这个图层的名字给动态数组中的一个变量,不这道怎么了 红色的部分提示有问题,谢谢指教。同时很想知道更简单的方法,谢谢 Private Sub CommandButton1_Click()
Dim layerNames As String
Dim entry As AcadLayer
Dim layercount As Integer
Dim j As Integer
j = 0
layerNames = ""
For Each entry In ThisDrawing.Layers
layerNames = layerNames + entry.Name + vbCrLf
Dim layernamesarray() As String
For i = j To j
layernamesarray(i) = entry.Name
j = j + 1
Next
Next
For i = 0 To layercount - 1
MsgBox "图形中的图层有: " + vbCrLf + layernamesarray(i)
Next
End Sub
发表于 2004-4-18 16:50:00 | 显示全部楼层
你的数组元素个数没有指定吧 Sub listlayer()
Dim i As Integer
Dim s As Integer
Dim layerm() As String
s = ThisDrawing.Layers.Count - 1
ReDim layerm(s) As String
For i = 0 To s
layerm(i) = ThisDrawing.Layers.Item(i).Name
Debug.Print layerm(i)
Next End Sub
发表于 2004-4-18 17:07:00 | 显示全部楼层
太复杂了,错误又多,给你一个:
  1. Private Sub CommandButton1_Click()
  2. Dim strLayer() As String
  3. Dim i As Integer
  4. ReDim strLayer(ThisDrawing.Layers.Count - 1) As String
  5. For i = 0 To ThisDrawing.Layers.Count - 1
  6. strLayer(i) = ThisDrawing.Layers(i).Name
  7. MsgBox strLayer(i)
  8. Next i
  9. End Sub
 楼主| 发表于 2004-4-18 17:16:00 | 显示全部楼层
谢谢两位老大,写出我那么烂的程序因为我根本没学过vba,呵~~ lzh741206老大 写出这样的程序 你推荐教材吗,谢啦
发表于 2004-4-18 17:22:00 | 显示全部楼层
教材?我看的是帮助,没学过什么教材
 楼主| 发表于 2004-4-18 21:19:00 | 显示全部楼层
那我也看帮助去.........
发表于 2004-4-18 22:51:00 | 显示全部楼层
程序确实构精简,非常巧妙!


妙不可言......

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 07:44 , Processed in 0.161616 second(s), 23 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表