ptp*_*son 5 excel vba worksheet-function excel-vba
我正在编写一个宏以遍历一些记录,并希望进行for循环,以避免在循环时出现无限的机会,例如:
For i = 0 to COUNT
**do stuff with START_CELL.Offset(i,0)
Next
Run Code Online (Sandbox Code Playgroud)
我不记得如何从VBA进行计数,因此搜索将我发送到这里:使用VBA计数Column中的非空白单元格。一个建议是
n = Worksheets("Sheet1").Range("A:A").Cells.SpecialCells(xlCellTypeConstants).Count
Run Code Online (Sandbox Code Playgroud)
这似乎过于复杂,所以我做了一些进一步的挖掘,然后决定要使用:
COUNT = Application.WorksheetFunction.Count(COUNT_RANGE)
Run Code Online (Sandbox Code Playgroud)
该页面上的另一个示例 Application.WorksheetFunction.CountA(),但是现在我仍然很担心(偏执),我有理由避免使用它。有吗
谢谢大家
避免工作表功能的唯一阻碍因素是,如果您担心与旧版本的Excel向后兼容。新版本的Excel通常会引入新的工作表功能。如果您的用户版本的Excel中没有这些功能,您将遇到麻烦。
除此之外,并且如果您知道用户使用的版本上提供的功能,则它们通常非常有效,并且通常比VBA中的等效功能更快,尤其是如果他们避免循环访问单元格(如评论中所述)。