怎么确定一个Excel表格的最大行数和最大列数?基于第一个问题,如果中间有跨行列的单元格,那么就有空值,不能简单通过循环确定最大行列数。
UsedRange是你所占用的区域。包括中间所跨的行和列。
获得一个Excel文档中已使用的表格最大行数和最大列数
Range range;
range = ws.GetUsedRange();//获得Worksheet已使用的范围
range = range.GetRows(); //获得总行数(LPDISPATCH类型)
long UsedRows = range.GetCount(); //即可获得已使用的行数了。
获得列数也是一样的方法,把GetRows()改为GetColumns即可。
Dim
xlWorkSheet
As
Excel.WorkSheet
=
xlApp.ActiveWorkbook.ActiveWorkSheet
Dim intRows As Integer = xlWorkSheet.UsedRange.Rows.Count
Dim intCols As Integer = xlWorkSheet.UsedRange.Columns.Count
Dim intRows As Integer = xlWorkSheet.UsedRange.Rows.Count
Dim intCols As Integer = xlWorkSheet.UsedRange.Columns.Count
UsedRange是你所占用的区域。包括中间所跨的行和列。
intRows, intCols就是你想要的最大行和最大列。
获得一个Excel文档中已使用的表格最大行数和最大列数
VB程序中的相关语句:
在一个连续的工作表中,可以使用语句取得最大行和列
With sheet.UsedRange
maxR = .Rows.Count
maxC = .Columns.Count
End With
MFC 中的代码如下:
_Worksheet ws;Range range;
range = ws.GetUsedRange();//获得Worksheet已使用的范围
range = range.GetRows(); //获得总行数(LPDISPATCH类型)
long UsedRows = range.GetCount(); //即可获得已使用的行数了。
获得列数也是一样的方法,把GetRows()改为GetColumns即可。