xlDown的概念理解
Conceptual understanding of xlDown
我们使用代码行找到最后一行
lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
我正在刷新我对xlDown的概念性理解。我指的是 Sheet1 中 B 列中的数据,如下所附。
我对 End(xlDown) 的理解是它从上到下搜索最后使用的单元格,然后按下 ctrl 可以模拟空白 cell.Its 概念。如果我们突出显示包含与空白混合的数据的列,然后按下 ctrl - 它将转到第一个空白单元格之前的单元格。在 B 列 Sheet 1 中按下 ctrl 进入 B2,然后进入 B18。但是,如果我使用以下代码片段,我会得到最后一行 1048576。
这段代码遵循什么逻辑?
任何人都可以解释一下以澄清这个微不足道的问题。
如果删除 .End()
:
,您将得到相同的结果
lastRow = .Cells(.Rows.Count, "B").Row
这是因为 ws.Cells(ws.Rows.Count, "B")
已经是 B
列的最后一个可能的单元格。允许对其调用 .End()
,但不会执行任何操作,因为无处可去。
否则你的理解是正确的。
我们使用代码行找到最后一行
lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
我正在刷新我对xlDown的概念性理解。我指的是 Sheet1 中 B 列中的数据,如下所附。
我对 End(xlDown) 的理解是它从上到下搜索最后使用的单元格,然后按下 ctrl 可以模拟空白 cell.Its 概念。如果我们突出显示包含与空白混合的数据的列,然后按下 ctrl - 它将转到第一个空白单元格之前的单元格。在 B 列 Sheet 1 中按下 ctrl 进入 B2,然后进入 B18。但是,如果我使用以下代码片段,我会得到最后一行 1048576。
这段代码遵循什么逻辑? 任何人都可以解释一下以澄清这个微不足道的问题。
如果删除 .End()
:
lastRow = .Cells(.Rows.Count, "B").Row
这是因为 ws.Cells(ws.Rows.Count, "B")
已经是 B
列的最后一个可能的单元格。允许对其调用 .End()
,但不会执行任何操作,因为无处可去。
否则你的理解是正确的。