/ / Як знущатися над визначеною користувачем функцією в Excel? - excel, excel-vba, excel-formula, vba

Як висміювати визначену користувачем функцію в Excel? - excel, excel-vba, excel-формула, vba

Я отримав .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

Чи ввімкнено в книзі ручне обчислення? Якщо так, спробуйте перейти на автоматичний (Інструменти> Параметри> Розрахунок). Це може змусити його перерахувати, замість того, щоб "торкатися" кожної клітини.