размещено: 19 Ноября 2007 обновлено: 13 Сентября 2008
Программа заполняет динамическое свойство Lookup из содержимого файла Excel.
Сначала надо в Lookup-e создать нужное количество столбцов (lookup Properties – крайние справа).
Затем в Excel создать таблицу с содержимым всех столбцов включая и столбцы lookup Properties.
Разделитель должен быть точка.
Точность после запятой – 14 знаков (желательно, но работает и так).
Запустить макрос.
Войти в редактор блока и зайдя в редактор Lookup-a включить «Allow reverse lookup».
Выйти с сохранением.
Все.
Вторая версия, без ограничения по количеству столбцов.
Комментарии
Комментарии могут оставлять только зарегистрированные
участники Авторизоваться
Проверьте, пожалуйста, выбор листа Excel из которого заполнять данные. Не зависимо от указания листа данные обновляются всегда с первого по порядку листа Excel?!
Lidia.Antipina
, 19 мая 2010 в 13:44
#12
не работает, указатель не перемещается:
(vlax-for s g_shs (if (= listrr (vlax-get-property s "Name")) (setq g_listsel s)))
Lidia.Antipina
, 20 мая 2010 в 12:38
#13
1)Указатель листа Excel не перемещался, т.к. в функции (xyn) указатель g_mainsh установлен всегда на 1-й лист - заменить на g_listsel
2) при нормальном завершении программы процесс Excel остается в памяти, т.е. в конце надо добавить (ex_break_connect)
3) хорошо бы отделить описания функций от основного кода, добавить к ним параметры вызова и по максимуму перевести глобальные переменные в локальные
4) вместо (exit) использую (vl-exit-with-error ...
AutoCADкий
, 03 мая 2011 в 17:44
#14
А для 2010 аналог есть? А то 2003, говорит, запустить не могу (не удивительно, учитывая, что установлен 2010 офис).
VVA
, 14 апреля 2012 в 18:12
#15
Для того, чтобы программа работала с любой версией Excell, нужно в найти "Excel.Application.11" и заменить на "Excel.Application"
SLADE
, 09 мая 2012 в 11:40
#16
Acad 2012 Eng
при импорте из Excel 2007 рус на финише пишет
(LOAD "C:/Users/SLADE/Desktop/Excel-Lookup2.lsp") Укажите нужный вам блок
29
nil nil
Данные не импортированы :(
п.с. "Excel.Application.11" заменил на "Excel.Application"
SLADE
, 12 мая 2012 в 23:16
#17
Acad 2013 рус
тоже
импорт не производится
Экспорт лиспом из Lookup-a в Excel работает корректно
Посмотрите пожалуйста код, очень надо импорт
Mozgunov
, 20 августа 2012 в 19:38
#18
У меня отказывается заполнять таблицу. В чём может быт дело? Возвращает 17 nil.
Mozgunov
, 20 августа 2012 в 20:52
#19
Может из-за версии Автокада не работает? Я тоже заменил на на "Excel.Application" но почему-то возвращается nil.
art_zrrc
, 16 августа 2013 в 22:16
#20
Программа не работает в Autocad 2012 rus. В Autocad 2010rus все в порядке. Подскажите пожалуйста, в чем может быть проблема?
Комментарии
Авторизоваться
(vlax-for s g_shs (if (= listrr (vlax-get-property s "Name")) (setq g_listsel s)))
2) при нормальном завершении программы процесс Excel остается в памяти, т.е. в конце надо добавить (ex_break_connect)
3) хорошо бы отделить описания функций от основного кода, добавить к ним параметры вызова и по максимуму перевести глобальные переменные в локальные
4) вместо (exit) использую (vl-exit-with-error ...
при импорте из Excel 2007 рус на финише пишет
(LOAD "C:/Users/SLADE/Desktop/Excel-Lookup2.lsp") Укажите нужный вам блок
29
nil nil
Данные не импортированы :(
п.с. "Excel.Application.11" заменил на "Excel.Application"
тоже
импорт не производится
Экспорт лиспом из Lookup-a в Excel работает корректно
Посмотрите пожалуйста код, очень надо импорт