Dim FL1 As Worksheet
Dim FL2 As Worksheet
Dim FL3 As Worksheet
Dim FL4 As Worksheet
Dim FL5 As Worksheet
Sub aa()
Count = 5
For i = 1 To Count
Set "FL" & i = Workbooks.Open(Application.GetOpenFilename()).Worksheets("FL")
Next
End Sub
为什么不对?对象名不能这样赋值?
vba for 对象的赋值
答案:3 悬赏:10 手机版
解决时间 2021-02-21 04:08
- 提问者网友:niaiwoma
- 2021-02-20 09:49
最佳答案
- 五星知识达人网友:青灯有味
- 2021-02-20 10:29
"FL" & i 是字符串,不是变量不能放在等号左边,进行赋值运算。
修改如下:
Dim FL(1 To 5) As Worksheet
Sub aa()
Count = 5
For i = 1 To Count
Set FL(i) = Workbooks.Open(Application.GetOpenFilename()).Worksheets("FL")
Next
End Sub
修改如下:
Dim FL(1 To 5) As Worksheet
Sub aa()
Count = 5
For i = 1 To Count
Set FL(i) = Workbooks.Open(Application.GetOpenFilename()).Worksheets("FL")
Next
End Sub
全部回答
- 1楼网友:鸠书
- 2021-02-20 12:08
Set "FL" & i = XXX
这样式不行滴。比如i=1的时候,你实际左边是在给"FL1"字符串赋值。而不是你想要的FL1等对象。
- 2楼网友:酒醒三更
- 2021-02-20 12:00
将代码修改为:
function x(a as string) as integer
if a = "www" then
x = 12
else
x = 31
end if
end function
回到excel,在a1输入 www ,在b1输入 =x(a1)
改变a1的值,b1中的自定义函数起作用。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯