Формула Excel продолжает возвращаться к исходному имени UDF - PullRequest
0 голосов
/ 02 мая 2018

Я сделал UDF под названием «GetField» и создал электронную таблицу, в которой он вызывался 384 раза. Затем начальник отметил, что, в соответствии с собственными стилями Excel, это действительно должно быть GETFIELD. Так что я изменил это. Но теперь я не могу изменить формулы на листе , чтобы использовать новую версию имени.

Если я щелкну в поле и удалю «d», Excel отобразит всплывающее окно с возможными попаданиями, включая GETFIELD. Если я выберу это, я вижу, что редактор меняет его на GETFIELD, но если я возвращаюсь в это поле, он снова меняет его на GetField. Я попробовал несколько вариантов темы, включая использование поиска / замены и повторный ввод всего текста, но каждый раз, когда он возвращается к первоначальному названию в верблюжьей шкуре.

Кто-нибудь знает способ заставить Excel обновить имя?

Ответы [ 2 ]

0 голосов
/ 02 мая 2018

Прежде всего, Excel не заботится о верхнем / нижнем регистре в именах функций, поэтому оба должны работать независимо от того, в каком случае ваш UDF.

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

Так, например, ваше исходное имя UDF GetField и вы хотите переименовать его в GETFIELD:

  1. Переименуйте ваш UDF в VBA с GetField на что-то еще, например MyTempName
  2. Найти / Заменить все формулы от GetField до MyTempName
  3. Переименуйте свой UDF в VBA с MyTempName на GETFIELD
  4. Найти / Заменить все формулы от MyTempName до GETFIELD
0 голосов
/ 02 мая 2018

В VBA IDE убедитесь, что нет дубликата функции со старым именем, например, в личной библиотеке xlsb.

...