VBA,赋值给数组,数组显示空值

晃仙 2019-05-03 04:30:58
题目要求贴上来了,想问我的程序逻辑哪里错了 遇到两个问题 1 赋区域给数组后总是说数组值下标越界,可能是数组为空,但实际上赋值的区域不为空的 2 后来又说range作用于worksheet失败 搞了一下午也弄不清楚, worksheets(工作簿名字).range(cells(),cells()) 这样的表达是错的吗?如果不能这样引用该怎么改正呢?有有空又会的吗?第一次提问分数不多,万分感谢愿意回答的同学
...全文
1416 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
云声风语 2019-05-04
  • 打赏
  • 举报
回复
Excel运行这么大的表真不会出问题吗,还有就是我是不是理解成 set wname = worksheets(name)这段代码是你想引用的一个或者多个表,而括号里的name应该是一个或多个表的表名,所以会出现作用对象错误的提示。 我也是查了下代码怎么用,具体没有运行过,希望对您有所帮助。
milaoshu1020 2019-05-04
  • 打赏
  • 举报
回复
a=rng这里错了,a是 数组,rng是非数组对象,不可以这么赋值;
晃仙 2019-05-04
  • 打赏
  • 举报
回复
引用 3 楼 云声风语的回复:
Excel运行这么大的表真不会出问题吗,还有就是我是不是理解成 set wname = worksheets(name)这段代码是你想引用的一个或者多个表,而括号里的name应该是一个或多个表的表名,所以会出现作用对象错误的提示。 我也是查了下代码怎么用,具体没有运行过,希望对您有所帮助。
答案代码更为复杂,它是在统计表里一个一个找人名,每次选中人名再打开后面22张会议记录一个一个找是否有相同值
晃仙 2019-05-04
  • 打赏
  • 举报
回复
引用 3 楼 云声风语的回复:
Excel运行这么大的表真不会出问题吗,还有就是我是不是理解成 set wname = worksheets(name)这段代码是你想引用的一个或者多个表,而括号里的name应该是一个或多个表的表名,所以会出现作用对象错误的提示。 我也是查了下代码怎么用,具体没有运行过,希望对您有所帮助。
嗯嗯对,但是当我简化,不使用循环,在一个工作表引用另一个表格的区域时,她仍然报错
晃仙 2019-05-04
  • 打赏
  • 举报
回复
已解决啦,不用回复啦
晃仙 2019-05-03
  • 打赏
  • 举报
回复
然后这个式子里,end(xldown)显示-4121,这又是为什么
晃仙 2019-05-03
  • 打赏
  • 举报
回复
引用 楼主 qq_44093147的回复:
题目要求贴上来了,想问我的程序逻辑哪里错了 遇到两个问题 1 赋区域给数组后总是说数组值下标越界,可能是数组为空,但实际上赋值的区域不为空的 2 后来又说range作用于worksheet失败 搞了一下午也弄不清楚, worksheets(工作簿名字).range(cells(),cells()) 这样的表达是错的吗?如果不能这样引用该怎么改正呢?有有空又会的吗?第一次提问分数不多,万分感谢愿意回答的同学
Sub d() Dim j As Long, i As Long, name As String, wname As Worksheet, name1 As String, rng As Range, name2 As Range, a() j = 2 Worksheets("出席统计").Activate For j = 2 To 22 name = Cells(1, j).Value Set wname = Worksheets(name) Set rng = wname.Range(Cells(3, 2), Cells(3, 2).End(xlDown)) a = rng i = 1 For i = LBound(a) To UBound(a) Set name2 = Worksheets("出席统计").Cells.Find(name1) If Not name2 Is Nothing Then name2.Offset(0, j - 1).Value = "yes" End If Next i Next j 这是程序

2,462

社区成员

发帖
与我相关
我的任务
社区描述
VBA(Visual Basic for Applications)是Visual Basic的一种宏语言,是在其桌面应用程序中执行通用的自动化(OLE)任务的编程语言。
社区管理员
  • VBA
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧