【问题标题】:Finding Lastrow with blank cells in the sheet [duplicate]在工作表中查找带有空白单元格的 Lastrow [重复]
【发布时间】:2015-10-22 01:33:31
【问题描述】:
lastrow = ThisWorkbook.Sheets("Numbers").Cells(Rows.Count, 1).End(xlUp).Row

我在第 55 行之前有数据,但最后一行给了我 70,因为公式被拖到第 70 行,并且根据公式,从 55 到 70 的行包含一个空格。我怎样才能避免这种情况?

【问题讨论】:

  • 查看this forum post 以获取End 的替代方案:)
  • 使用.FindLookIn:=xlValues 一起使用

标签: vba excel


【解决方案1】:

遍历范围内的所有单元格,然后计算出第一个非空白单元格。将 lastrow 设置为该单元格

lastrow = ThisWorkbook.Sheets("Numbers").Cells(Rows.Count, 1).End(xlUp).Row

for i = lastrow to 1 step -1
    if ThisWorkbook.Sheets("Numbers").Cells(i, 1) <> " " then
        lastrow = i
        exit for
    end if
next

【讨论】:

  • 一旦 lastrow 被赋予 i 的值,你就会想让它退出 for 循环。如果您不退出循环,它将继续运行并最终将 lastrow 的值设为 1。
  • @rwilson 当我第一次尝试得到 1 时,我想通了。谢谢。
猜你喜欢
  • 2014-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多