Я отримав .xlsb
файл, який посилається на сторонню сторону, доданий у мене немає. Електронна таблиця використовує функцію, визначену в тому, що додає в деякі комірки аркуша, і ці комірки мають #NAME?
помилки
Я визначив функцію з тим самим іменем та параметрами у VBA. #NAME?
помилки все ще зберігаються, і це працює, лише якщо я "торкнувся" комірки. Що я маю на увазі під цим, я копіюю та вставляю ту саму формулу.
Чи існує більш елегантний спосіб замінити (висміяти) неіснуючу функцію?
Відповіді:
2 для відповіді № 1Щоб обійти # ІМЯ? помилку, знайти та замінити всі формули, що містять ім'я UDF, тим самим іменем UDF.
dim myudf as string, w as long
myudf = "=MyUdf("
for w=1 to worksheets.count
worksheets(w).cells.replace(what:=ucase(myudf), replacement:=lcase(myudf), _
matchcase:=false, lookat:=xlPart
next w
0 для відповіді № 2
Чи ввімкнено в книзі ручне обчислення? Якщо так, спробуйте перейти на автоматичний (Інструменти> Параметри> Розрахунок). Це може змусити його перерахувати, замість того, щоб "торкатися" кожної клітини.