我们使用代码行找到最后一行
lastRow = .Cells(.Rows.Count, "A").End(xlUp).Row
我很清楚我对xlDown的概念理解。我引用Sheet1中B列中的数据,如下所示。
我对End(xlDown)的理解是它从上到下搜索在空白单元格之前找到最后使用过的单元格。可以通过按下ctrl来模拟它的概念。如果我们突出显示包含与空白混合的数据的列,然后按下ctrl - 它将转到第一个空白单元格之前的单元格。在B列表1中按下ctrl,进入B2,然后进入B18。但是,如果我使用以下代码片段,我将最后一行设为1048576。
此代码段的逻辑是什么? 任何人都可以解释一下,澄清这个微不足道的问题。
答案 0 :(得分:2)
如果删除.End()
:
lastRow = .Cells(.Rows.Count, "B").Row
这是因为ws.Cells(ws.Rows.Count, "B")
已经是B
列的最后一个可能单元格。允许在其上调用.End()
,但什么都不做,因为无处可去。
否则你的理解是正确的。