Преобразуйте номер столбца Excel в букву столбца

#excel #vba

Вопрос:

Возникла проблема при попытке получить букву столбца из номера столбца. Когда номер столбца равен 36, он возвращается пустым, когда он равен 35 или 37 или любому другому числу, он возвращается с результатами. Вот код:

 ActiveCell.Select
L5Num = ActiveCell.Column
L5 = Split(Columns(L5Num).Address, "$")(1)
 

Комментарии:

1. ИМО, использовать букву столбца — плохая идея. Просто используйте индекс столбца с Cells , например.

2. ^^^^ Вы бы использовали Worksheet("blahblah").Cells(RowNum,ColumnNum) , тогда вам не нужно анализировать строку.

3. L5 = Split(ActiveCell.Address, "$")(1) . Возвращается ваш текущий код AJ: . Но … не делай этого. Это контрпродуктивно и не нужно.

4. Зачем тебе это письмо? Как написано выше, ваш код возвращает AJ столбец 36, который является правильным обозначением.

5. Вы можете спокойно оборвать связь ActiveCell.Select . Использование Select — плохая практика и в лучшие времена, но в этом случае все, что вы делаете, — это выбираете уже выбранную ячейку.