Как восстановить регистр по умолчанию для переменной в VBA (Excel 2010)? - PullRequest
23 голосов
/ 31 января 2011

В какой-то момент я случайно назвал переменную range (все в нижнем регистре), и с тех пор редактор Visual Basic для приложений отказывается использовать Range (в Pascal-case);это автоматически исправит это к нижнему регистру.Как я могу сбросить его «мозг», чтобы забыть о моем прошлом нарушении?

ПРИМЕЧАНИЕ. Я попытался выполнить глобальную замену всего, но в тот момент, когда я редактирую любую отдельную строку, она снова исправляется.

Очевидно, что это очень очень незначительная косметическая проблема, но наблюдение за тем, как R теряет сознание каждый раз, когда я печатаю Range, раздражает.

Ответы [ 2 ]

34 голосов
/ 31 января 2011

Вам необходимо изменить имя переменной в строке объявления (например, Dim оператор) где-то (где угодно, на самом деле).

Это одна из самых раздражающих «функций» VBA IDE (как будто контроль версий не был достаточно сложным с VBA, постоянная смена регистраций сводит меня с ума). Их регистры изменяются глобально в VBA IDE, независимо от фактической области видимости переменной. Кажется, в VBA IDE используется подход последних побед объявлений.

Обычно все, что вам нужно сделать, это просто обновить регистр в строке объявления где-нибудь, но VBA может быть упрямым. Я еще не взломал код полностью.

Примечание. Как отмечает @Scorchio в комментариях ниже, регистр переменной изменяется глобально в текущем проекте; другие проекты, которые могут быть открыты в VBA IDE (например, другие книги при работе в Excel), НЕ затрагиваются.

10 голосов
/ 26 августа 2015

Последнее объявление во времени выигрывает.

  1. Перейти на первую строку и набрать Dim Range As String
  2. Перейти к следующей строке
  3. Вернитесь и удалите Dim Range As String
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...