【问题标题】:Find the last cell with a value in specific column在特定列中查找具有值的最后一个单元格
【发布时间】:2012-01-25 18:07:06
【问题描述】:

这个问题被问了很多次,但我从来没有见过这样的。

如何在 col2 中找到最后一个具有值的单元格?

我稍后会使用它,所以用数据从第 1 行迭代到最后一行。

我想修改为只通过 col2 进行搜索

nInLastRow = oSheet.Cells.Find("*",System.Reflection.Missing.Value,
System.Reflection.Missing.Value, System.Reflection.Missing.Value, 
Excel.XlSearchOrder.xlByRows,Excel.XlSearchDirection.xlPrevious,    
false,System.Reflection.Missing.Value,System.Reflection.Missing.Value).Row;

我的例子:

      col1   col2   col3
 Row1 data   data   data
 Row2 data   data   data
 row3 data   data   data
 row4 data          data
 row5 data          data

为了做到这一点,我需要指定一个范围吗?但话又说回来,我不知道范围的大小。我试过用usedrange。但由于其他 cols(col1 & col3) 有更多数据,因此不合适。 干杯!

【问题讨论】:

    标签: c# excel


    【解决方案1】:

    是否会有任何列在数据值之间有空白单元格,或者第一个空白单元格是否总是在最后一个有值的单元格之后?如果是后者那么你可以使用.End(xlDown)(相当于在键盘上按End + Down Arrow

    这是一个使用 VBA 的示例。

    For Each rng In oSheet.Range("A1:D1")
       Set rngLastValue = rng.End(xlDown)
       Debug.Print "The last cell with a value in column " & rng.Column & " is " & rngLastValue.Address
    Next rng
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-20
      • 1970-01-01
      • 2020-11-05
      相关资源
      最近更新 更多