2016-05-21 2 views
0

Встроенные функции Excel стилю с символами UPPERCASE. Я немного OCD, и, как и мои собственные рабочие листы, тоже должен быть UPPERCASE, так же, как встроенные функции Excel. Однако Excel 2013 (и более ранние версии) иногда меняет случай моих пользовательских функций Worksheet на CamelCase или в нижнем регистре, хотя я всегда записываю их в код VBA как UPPERCASE. Есть ли работа, чтобы исправить этот глюк? Почему Excel делает это?Почему Excel изменяет случай моей пользовательской функции рабочего листа?

+0

Если вы добавили ссылки на проект VBA, тогда редактор кода VBA ищет методы и имена свойств в связанных классах. AFAIK вы не можете изменить такое поведение, единственный способ, который я могу предложить, - удалить эти ссылки и использовать позднюю привязку без IntelliSense. – omegastripes

+0

Соответствуют ли они именам существующих функций Excel VBA? Съемка в темноте здесь. –

ответ

0

Возможно, я нашел хотя бы обходное решение. После того, как я создал свою собственную настраиваемую функцию, перейдите в Excel и выберите «Формулы» -> «Определенные имена» -> «Определить имя». Затем определите имя моей пользовательской функции в UPPERCASE. По-видимому, это не имеет значения. Это, конечно, вызывает ожидаемую ошибку. Однако, когда я вызываю свою пользовательскую функцию, она теперь постоянно UPPERCASE. Второй шаг - выбрать Формулы -> Определенные имена -> Диспетчер имен и удалить имя пользовательской функции. Вуаля! Теперь Excel позволяет мне идеально и последовательно называть эту пользовательскую функцию со всеми UPPERCASE. Однако остаются две проблемы. Во-первых, мне бы не хотелось обременять моих пользователей этим «трюком». Во-вторых, это все еще не отвечает почему Excel ведет себя таким образом. Возможно, это ключ?

Смежные вопросы