2015-07-20 4 views
0

Я пишу макрос, чтобы найти последний столбец в базе данных, но по какой-то причине он останавливается в столбце № 9 и думает, что он последний. Для устранения этой проблемы нет пробелов в данных. Как я могу это исправить? Я знаю, что код является правильным, и это хорошо работает в других книгах, но не этот ...VBA определяет неправильный последний столбец

Вот сам код:

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

Когда вы далеко вправо в строке 3 и ударяете 'end-left' вручную, где вы заканчиваете? –

+0

занимает меня до последней колонки. –

ответ

0

Возможно, это будет работать для вас:

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

Ищет ни один пробел и ищет предыдущее вхождение из первой ячейки (т. Е. Последнее вхождение в листе).

Я не уверен, как это относится к пробелу, хотя я никогда не использовал его раньше.

0

Yay! Я все понял. Это потому, что я определил тот же Lcol в нескольких электронных таблицах, и он искал последнее определение Lcol.

Урок № 1: различные таблицы, другое определение последнего столбца :)

Спасибо вам всем за то, чтобы помочь!