Извлечь номер первого столбца из адреса в VBA - PullRequest
0 голосов
/ 16 марта 2020

Я хочу извлечь число из первого столбца определенного range в VBA.
В настоящее время мой код выглядит следующим образом:

Sub Column_Number()
Sheet1.Range("A1").Value = Sheet1.Range("$C$6:$I$6").Address
End Sub

Ожидаемый результат в Cell A1 должен быть 3, поскольку Column C - это первый столбец в Range("$C$6:$I$6") и третий столбец в весь лист.

Я попытался go с решением из здесь , но не смог заставить его работать.
Вместо column number он вернул значение в Cell $C$6.

Как мне нужно изменить свой VBA, чтобы получить ожидаемый результат?

Ответы [ 2 ]

2 голосов
/ 16 марта 2020

Использовать Column свойство объекта Range. Попробуйте ниже.

Sub Column_Number()
    Sheet1.Range("A1").Value = Sheet1.Range("$C$6:$I$6").Column
End Sub
1 голос
/ 16 марта 2020

Таким образом, у вас будет номер столбца и его буква:

Dim sh As Worksheet, rng As Range
  Set sh = Sheet1
  Set rng = sh.Range("$C$6:$I$6")
  Debug.Print rng.column, Split(rng.Address, "$")(1)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...