Mar*_*ain 3 excel vba excel-vba
我希望我的宏从另一张表上的电话号码列表中读取,计算行数,然后从A1中构建一个数组:从行计数中....该数组将始终从A1开始.
Dim lrow As Variant
lrow = Cells(Rows.Count, 1).End(xlUp).Row
Dim PhonesArray as Variant
PhonesArray = " [A1:A" & lrow & "].Value2
Run Code Online (Sandbox Code Playgroud)
我无法将上边界(lrow)传递给PhonesArray.
它应该运行为
PhonesArray = [A1:A**40**].Value2
Run Code Online (Sandbox Code Playgroud)
lrow变量正确计算,但我无法将其传递给数组构造.静态范围按预期工作.如果此问题已得到解决,我们非常感谢您提供任何帮助并提前道歉.我无法通过搜索找到解决方案.
一般来说,用[A1]类型简写来引用你的单元格是一个坏主意,它不支持像这样的字符串放在一起.请Range()改用,你会有几个选择:
Range("A1:A" & lRow)Range("A1").Resize(lrow,1)鉴于您提供的代码,我将废弃该lrow变量并使用此代码:
Dim PhonesArray As Variant
With ThisWorkbook.Worksheets("Sheet1")
PhonesArray = Range(.Range("A1"), .Cells(.Rows.Count, 1).End(xlUp)).Value2
End With
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
66 次 |
| 最近记录: |