Переменная VBA Worksheet - PullRequest
       2

Переменная VBA Worksheet

1 голос
/ 18 марта 2019

Кажется, я не могу использовать переменные рабочего листа, как я ожидал.

Function Test()
    Test = Application.ThisCell.Worksheet.Range("A1").Value
End Function

Вышеприведенная функция работает как положено, возвращая значение ячейки "A1" в том же рабочем листе, что иЯчейка, из которой была вызвана функциявместо этого.

Я могу обойтись первым, но в формулах, которые требуют этого несколько раз, я бы предпочел получить местоположение листа только один раз.

Любые данные о том, почему мой второй примерне работает, и как исправить мою проблему будет приветствоваться.

1 Ответ

3 голосов
/ 18 марта 2019

При использовании Worksheet переменных вы должны использовать Set.

В вашем случае Set ws = Thisworkbook.Sheets("NameOfTheSheet")

Мысль ... вы пытаетесь настроить рабочий лист, используя некоторую переменную, ябудет жестко закодировать имя или использовать цикл для его получения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...