用_ExcelReadSheetToArray取得一个EXCEL表的行数太慢,请问还有没有别的方法?
本帖最后由 ziyaxian 于 2010-1-4 15:10 编辑我有多个EXCEL表都在5、6百行左右,我想每个表一行一行的处理数据,但用_ExcelReadSheetToArray取表的行数时过慢,请问还有没有别的快的方法取得一个EXCEL表的行数,谢谢!! 得到工作最后一行有内容的行数
$Q = $oExcel.Sheets("工作表名").Range("B65536").End($xlUp).Row + 1 请问这个$xlUp是什么呢? $xlUp表示第一行 本帖最后由 pchome2000 于 2010-1-1 10:48 编辑
Global Const $xlUp = -4162
local $oexcel = _excelbootopen("c:\test.xls")
$Q = $oExcel.Sheets("工作表名").Range("A65536").End($xlUp).Row + 1
;A列第65536行之上的最后有数据的单元格所在行数
msgbox(0,"test",$q) 谢谢,比原来快多了,还有个问题想问一下,我只想取得这个表的行数而不打开这个表,有什么方法做到吗? local $oexcel = _excelbootopen("c:\test.xls", 0)
0是隐藏打开,1是可见打开 学习了。谢谢 #include <Excel.au3>
Global Const $xlUp = -4162
local $oexcel = _ExcelBookOpen("c:\ceshi.xls")
$q = $oExcel.Sheets("sfz").Range("A65536").End($xlUp).Row + 1
;A列第65536行之上的最后有数据的单元格所在行数
msgbox(0,"test",$q)
运行上面的代码出错:
$q = $oExcel.Sheets("sfz").Range("A65536").End($xlUp).Row + 1
$q = $oExcel^ ERROR 呵呵,又发现了新大陆,节省了不少时间,学习了! 学习了,谢谢 真是谢谢了,,有问题来论坛真没错,, Global Const $xlUp = -4162
可否解释一下啊?
不过确实可以得到正解~!
这是等到有数据的最后一行 刚刚百度了一下,发现了那个-4162的意思
只能记下了 $oExcel.Sheets("sfz").Range("A65536").End($xlUp).Row + 1
是从A列的第65536行开始,向上找到第一个有数据的单元格,再加1就是有数据单元格下面的单元格。
页:
[1]
2