【发布时间】:2014-06-23 21:18:50
【问题描述】:
所以我在 VBA 中有这两行代码,它们在列底部找到一个空单元格,然后返回下一个单元格的指针。
RowPointer = ThisWorkbook.Sheets("Current").Cells(65000, 4).End(xlUp).Row
If ThisWorkbook.Sheets("Current").Cells(RowPointer, 4).Formula <> "" Then RowPointer = RowPointer + 1
问题是这种自下而上的搜索,我需要在列中找到第一个空单元格而不是最后一个。我已经看到了一些解决此问题的方法,它们使用循环来遍历列,但我正在使用的电子表格相当大,并且循环需要很长时间才能执行。所以我的问题是有没有一种简单的方法可以从上到下搜索一列以找到第一个空单元格?
【问题讨论】:
-
@brettdj 是重复的吗?如果
A1:A10和A12-A20不为空,那么第一个空白=A11,最后一个非空=A20,不是吗? -
@Ioannis 是的,因为这只是使用
Find的一个小改动(尽管我承认我确实链接回了一行中的非空白问题,而不是列问题中的空白)。 ... -
调整我链接到
Set ws = Sheets("Current")然后Set rng1 = ws.Columns(4).Find("", ws.Cells(Rows.Count, "D"), xlFormulas, , xlByColumns, xlNext)的问题中的代码会找到第一个空白结果