Dix*_*ine 9 excel vba excel-vba
我有一个包含70,000行数据的工作表和一个计算总行数的简单宏:
Dim LastRow as Integer
LastRow = SourceSheet.Cells.Find(what:="*", searchdirection:=xlPrevious, searchorder:=xlByRows).Row
MsgBox (LastRow)
Run Code Online (Sandbox Code Playgroud)
这会返回溢出错误.将LastRow更改为Long将返回正确的值70,000.
根据微软的网站,VBA整数应该能够保持-2,147,483,648和2,147,483,647之间的值.我的输出完全在这个范围内,为什么它会失败?
谢谢!
Mat*_*ewD 23
您正在查看的网站是针对Visual Studio(.NET)的.
VBA Integer是32,768.你需要使用很长时间.
VBA Long变量保存从-2,147,483,648到2,147,483,647的整数,并使用4个字节(32位)的内存.
Dim lLastRow as Long
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4458 次 |
| 最近记录: |