VBA定义了错误的最后一列

时间:2015-07-20 21:26:11

标签: excel excel-vba vba

我正在编写一个宏来查找数据库中的最后一列,但出于某种原因,它停在第9列,并认为它是最后一列。数据中没有空白导致此问题。我该如何解决?我知道代码是正确的,它在其他工作簿中运行良好,但不是这个......

以下是代码本身:

ActiveWorkbook.Sheets("Online - Care").Activate
With Sheets("Online - Care")
    LCol = .Cells(3, .Columns.Count).End(xlToLeft).Column
End With

2 个答案:

答案 0 :(得分:0)

也许这对你有用:

LCol = .cells.Find("*", searchorder:=xlByRows, searchdirection:=xlPrevious).column

搜索无空格并从第一个单元格(即工作表中的最后一次出现)查找上一个匹配项。

我不知道这是如何处理空白的,我以前从未实际使用它。

答案 1 :(得分:0)

耶!我想通了。这是因为我在几个电子表格中定义了相同的Lcol,它正在寻找Lcol的最后一个定义。

第1课:不同的电子表格,最后一栏的不同定义:)

谢谢大家的帮助!