Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/UDF - недопустимое имя. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
UDF - недопустимое имя.
RAN Дата: Среда, 21.11.2012, 20:53 | Сообщение № 1
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Приветствую!
Возник вопрос.
Сегодня решил все-же заменить давно установленную чужую надстройку сумма прописью на свою.
Открыл свою надстройку с UDF, скопировал свою UDF в новую книгу, чуть подправил и стал тестить.
В одной ячейке этой книги запустил новую функцию, а в другой - старую из надстройки.
Получил ошибку - недопустимое имя. (UDF из надстройки)
Сменил имя новой UDF - итог тот же.
Пробовал перезапустить и файлы, и Excel - не работает.
Причем в других файлах работают обе функции, в мастере они исправно исчезают и появляются.
Где могла собака порыться?
Если это просто глюк файла - мне скопировать код в новую книгу не сложно.
А если ???


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 21.11.2012, 20:54
 
Ответить
СообщениеПриветствую!
Возник вопрос.
Сегодня решил все-же заменить давно установленную чужую надстройку сумма прописью на свою.
Открыл свою надстройку с UDF, скопировал свою UDF в новую книгу, чуть подправил и стал тестить.
В одной ячейке этой книги запустил новую функцию, а в другой - старую из надстройки.
Получил ошибку - недопустимое имя. (UDF из надстройки)
Сменил имя новой UDF - итог тот же.
Пробовал перезапустить и файлы, и Excel - не работает.
Причем в других файлах работают обе функции, в мастере они исправно исчезают и появляются.
Где могла собака порыться?
Если это просто глюк файла - мне скопировать код в новую книгу не сложно.
А если ???

Автор - RAN
Дата добавления - 21.11.2012 в 20:53
Serge_007 Дата: Среда, 21.11.2012, 21:01 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Давай файл, поглядим


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеДавай файл, поглядим

Автор - Serge_007
Дата добавления - 21.11.2012 в 21:01
RAN Дата: Среда, 21.11.2012, 21:21 | Сообщение № 3
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Файлы оставил на работе.
Но быстренько сотворил аналог.
В надстройке "Избранные" лежит UDF РубПропись. В этом файле ее копия РубПропись1.
В новом файле работают обе функции, а в этом - нет.
К сообщению приложен файл: 6824949.xls (45.0 Kb)


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 21.11.2012, 21:22
 
Ответить
СообщениеФайлы оставил на работе.
Но быстренько сотворил аналог.
В надстройке "Избранные" лежит UDF РубПропись. В этом файле ее копия РубПропись1.
В новом файле работают обе функции, а в этом - нет.

Автор - RAN
Дата добавления - 21.11.2012 в 21:21
Alex_ST Дата: Среда, 21.11.2012, 21:31 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Андрей, а где надстройка-то?
В твоём файле UDF РубПропись1 работает, т.к. для неё есть процедура в модуле.
А UDF РубПропись не работает, естественно, т.к. для неё процедуры нет.

А если UDF РубПропись у тебя лежит в надстройке, то попробуй вызывать её с указанием имени файла надстройки и восклицательным знаком перед именем функции.
Вот, например, у меня в Personal.xls лежит функция ИЗВЛЕЧЬ_ЦЕЛЫЕ
Чтобы её вывести на лист книги мне приходится писАть
Code
=Personal.xls!ИЗВЛЕЧЬ_ЦЕЛЫЕ(A1)



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Среда, 21.11.2012, 21:35
 
Ответить
СообщениеАндрей, а где надстройка-то?
В твоём файле UDF РубПропись1 работает, т.к. для неё есть процедура в модуле.
А UDF РубПропись не работает, естественно, т.к. для неё процедуры нет.

А если UDF РубПропись у тебя лежит в надстройке, то попробуй вызывать её с указанием имени файла надстройки и восклицательным знаком перед именем функции.
Вот, например, у меня в Personal.xls лежит функция ИЗВЛЕЧЬ_ЦЕЛЫЕ
Чтобы её вывести на лист книги мне приходится писАть
Code
=Personal.xls!ИЗВЛЕЧЬ_ЦЕЛЫЕ(A1)

Автор - Alex_ST
Дата добавления - 21.11.2012 в 21:31
RAN Дата: Среда, 21.11.2012, 21:32 | Сообщение № 5
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Надстройка у меня на компе осталась.
Но как вариант - переименуй функцию обратно, сохрани файл как надстройку, и запусти оба файла. Будет две функции с разными именами. А работать будет одна.
К сообщению приложен файл: 6252261.xla (43.0 Kb)


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 21.11.2012, 21:40
 
Ответить
СообщениеНадстройка у меня на компе осталась.
Но как вариант - переименуй функцию обратно, сохрани файл как надстройку, и запусти оба файла. Будет две функции с разными именами. А работать будет одна.

Автор - RAN
Дата добавления - 21.11.2012 в 21:32
Serge_007 Дата: Среда, 21.11.2012, 21:32 | Сообщение № 6
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Quote (RAN)
В этом файле ее копия РубПропись1

Т.е. неработающая функция отличается от той что ты выложил только цифрой 1 в названии?


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Quote (RAN)
В этом файле ее копия РубПропись1

Т.е. неработающая функция отличается от той что ты выложил только цифрой 1 в названии?

Автор - Serge_007
Дата добавления - 21.11.2012 в 21:32
Alex_ST Дата: Среда, 21.11.2012, 21:38 | Сообщение № 7
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Андрей, я в своём предыдущем посте дополнил про правила вызова.
Я знаю, что из надстроек вроде бы функции должны вызываться напрямую, но что-то мне это сомнительно, т.к. надстроек может быть открыто одновременно несколько и потому вполне может возникнуть дубляж и конфликт имён.



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеАндрей, я в своём предыдущем посте дополнил про правила вызова.
Я знаю, что из надстроек вроде бы функции должны вызываться напрямую, но что-то мне это сомнительно, т.к. надстроек может быть открыто одновременно несколько и потому вполне может возникнуть дубляж и конфликт имён.

Автор - Alex_ST
Дата добавления - 21.11.2012 в 21:38
RAN Дата: Среда, 21.11.2012, 21:40 | Сообщение № 8
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Добавил надстройку.
В любом другом файле работают обе функции.
По поводу вызова.
У меня в надстройке есть кнопочка "Редактировать", превращающая надстройку в xls. Если ее нажать, в именах UDF из надстройки добавляется имя книги.


Быть или не быть, вот в чем загвоздка!

Сообщение отредактировал RAN - Среда, 21.11.2012, 21:46
 
Ответить
СообщениеДобавил надстройку.
В любом другом файле работают обе функции.
По поводу вызова.
У меня в надстройке есть кнопочка "Редактировать", превращающая надстройку в xls. Если ее нажать, в именах UDF из надстройки добавляется имя книги.

Автор - RAN
Дата добавления - 21.11.2012 в 21:40
Alex_ST Дата: Среда, 21.11.2012, 21:51 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Да, почему-то не опознаёт юдф-ку из файла надстройки.
Но, между прочим, когда я сделал =6252261.xla!РубПропись(A1) , то сразу заработало.
А после этого я посмотрел ещё раз в ячейку и увидел, что Excel сам заменил в ней =6252261.xla!РубПропись(A1) на =РубПропись(A1) и при этом "ожили" и формулы в других местах листа.
Чудеса!



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеДа, почему-то не опознаёт юдф-ку из файла надстройки.
Но, между прочим, когда я сделал =6252261.xla!РубПропись(A1) , то сразу заработало.
А после этого я посмотрел ещё раз в ячейку и увидел, что Excel сам заменил в ней =6252261.xla!РубПропись(A1) на =РубПропись(A1) и при этом "ожили" и формулы в других местах листа.
Чудеса!

Автор - Alex_ST
Дата добавления - 21.11.2012 в 21:51
RAN Дата: Среда, 21.11.2012, 21:59 | Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Воистину.
Отключил режим надстройки, ввел формулу заново, включил режим надстройки - все заработало.


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеВоистину.
Отключил режим надстройки, ввел формулу заново, включил режим надстройки - все заработало.

Автор - RAN
Дата добавления - 21.11.2012 в 21:59
Alex_ST Дата: Среда, 21.11.2012, 22:02 | Сообщение № 11
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
А ещё чудесатее, что Excel почему-то со временем "забывает", где лежит функция и вместо её результата появляется #ИМЯ?

Если нажать при выборе ячейки на f в строке формул, то выкидывается нормальный диалог ввода аргументов функции.
но после нажатия на ОК всё равно результат #ИМЯ?
И он превратится в результат только если опять у одной из таких функций на листе указать, где она лежит.
Тогда на некоторое время нормально заработает.

Может, что-то в коде? Разбирать, извини, что-то лень: так сегодня на работе натоптался батонов на клаве и натрындился с подрядчиками по телефону, что уже голова не варит, глаза не видят, ухо не слышит. sad
К сообщению приложен файл: 7676858.jpg (57.8 Kb)



С уважением,
Алексей
MS Excel 2003 - the best!!!
 
Ответить
СообщениеА ещё чудесатее, что Excel почему-то со временем "забывает", где лежит функция и вместо её результата появляется #ИМЯ?

Если нажать при выборе ячейки на f в строке формул, то выкидывается нормальный диалог ввода аргументов функции.
но после нажатия на ОК всё равно результат #ИМЯ?
И он превратится в результат только если опять у одной из таких функций на листе указать, где она лежит.
Тогда на некоторое время нормально заработает.

Может, что-то в коде? Разбирать, извини, что-то лень: так сегодня на работе натоптался батонов на клаве и натрындился с подрядчиками по телефону, что уже голова не варит, глаза не видят, ухо не слышит. sad

Автор - Alex_ST
Дата добавления - 21.11.2012 в 22:02
RAN Дата: Среда, 21.11.2012, 22:14 | Сообщение № 12
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Quote (Alex_ST)
Может, что-то в коде?

Да нет. В код даже не заходит.


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
Quote (Alex_ST)
Может, что-то в коде?

Да нет. В код даже не заходит.

Автор - RAN
Дата добавления - 21.11.2012 в 22:14
SM Дата: Среда, 21.11.2012, 22:47 | Сообщение № 13
Группа: Друзья
Ранг: Участник
Сообщений: 64
Репутация: 59 ±
Замечаний: 0% ±

2003
Quote (RAN)
, ввел формулу заново,

У меня получилось так:
На листах .xls удалил знак "=" в ячейках с функциями РубПропись1(), РубПропись()
Переместил код Function РубПропись1() из .xls в .xla , всё сохранил.
Вышел из Экселя.
Открыл .xla и .xls .
Восстановил знаки "=".
Работают обе.


Excel изощрён, но не злонамерен
 
Ответить
Сообщение
Quote (RAN)
, ввел формулу заново,

У меня получилось так:
На листах .xls удалил знак "=" в ячейках с функциями РубПропись1(), РубПропись()
Переместил код Function РубПропись1() из .xls в .xla , всё сохранил.
Вышел из Экселя.
Открыл .xla и .xls .
Восстановил знаки "=".
Работают обе.

Автор - SM
Дата добавления - 21.11.2012 в 22:47
RAN Дата: Среда, 21.11.2012, 23:06 | Сообщение № 14
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Но может снова заглючить.
А если эта функция есть в подключенной надстройке, и в автономный файл засунули? Что ждать? Ошибку?


Быть или не быть, вот в чем загвоздка!
 
Ответить
СообщениеНо может снова заглючить.
А если эта функция есть в подключенной надстройке, и в автономный файл засунули? Что ждать? Ошибку?

Автор - RAN
Дата добавления - 21.11.2012 в 23:06
SM Дата: Среда, 21.11.2012, 23:26 | Сообщение № 15
Группа: Друзья
Ранг: Участник
Сообщений: 64
Репутация: 59 ±
Замечаний: 0% ±

2003
Quote (RAN)
в автономный файл засунул

[смайлик, пожимающий плечиками]

Я только о том, как массово и быстро "ввести формулы заново".


Excel изощрён, но не злонамерен
 
Ответить
Сообщение
Quote (RAN)
в автономный файл засунул

[смайлик, пожимающий плечиками]

Я только о том, как массово и быстро "ввести формулы заново".

Автор - SM
Дата добавления - 21.11.2012 в 23:26
Alex_ST Дата: Четверг, 22.11.2012, 08:16 | Сообщение № 16
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Андрей,
я проверить сейчас не могу - уже занят на работе, но как вариант:
А где у тебя эта надстройка лежит? Если не в Addins'ах, то попробуй-ка её туда положить и запустить или просто из меню "Надстройки" корректно её запустить, а не просто как файл открывать. Может, Excel глючит с надстройками, путь к которым не указан в диалоге подключения надстроек?



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Четверг, 22.11.2012, 08:17
 
Ответить
СообщениеАндрей,
я проверить сейчас не могу - уже занят на работе, но как вариант:
А где у тебя эта надстройка лежит? Если не в Addins'ах, то попробуй-ка её туда положить и запустить или просто из меню "Надстройки" корректно её запустить, а не просто как файл открывать. Может, Excel глючит с надстройками, путь к которым не указан в диалоге подключения надстроек?

Автор - Alex_ST
Дата добавления - 22.11.2012 в 08:16
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!