|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Нужно посчитать приборы
Минск
Регистрация: 16.09.2006
Сообщений: 1,587
|
||
Просмотров: 5717
|
|
||||
Donhuan, спасибо - то, что нужно. Еще вопросик, как мне добавить игнорирование тех надписей которые находятся на defpoints?
PS. Как мне добавить список конкретных приборов? "????-####" - такое поле не пойдет. Нужны конкретные имена. Пусть их будет даже 1000, но это четкие имена.
__________________
Поезд который устал от ржавого здравомыслия рельсов... Последний раз редактировалось Shoorup, 24.09.2008 в 10:22. |
||||
![]() |
|
||||
Спасибо большое разобрался.
А можно мне еще доработать программу и сделать ссылку на экселевский файл. Я бы в нем в столбик перечислил бы приборы - так удобней отследить недостающих приборов и отсортировать их хоть както. Идея похоже есть тут
__________________
Поезд который устал от ржавого здравомыслия рельсов... Последний раз редактировалось Shoorup, 25.09.2008 в 16:41. |
||||
![]() |
|
||||
С первой ошибкой справился.
Код:
Ошибка такая: ошибка: "Ошибка Automation. BOF или EOF имеет значение True, либо текущая запись удалена. Для выполняемой операции требуется текущая запись."
__________________
Поезд который устал от ржавого здравомыслия рельсов... |
||||
![]() |
|
||||
Всеравно ошибка лезет - Ошибка Automation. BOF или EOF имеет значение True, либо текущая
запись удалена. Для выполняемой операции требуется текущая запись Как делаю. Создал екселевский файл. В нем записал в столбик пару названий приборов. Запускаю программу. она просит указать екселевский файл. указываю. ругается.
__________________
Поезд который устал от ржавого здравомыслия рельсов... |
||||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,411
|
Может, офис не той версии? 2007 вместо 2003 (или наоборот)
Или по умолчанию xls открывается не Excel'ем (код не смотрел, поэтому не уверен в точности рецептов)
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,411
|
А, точно. Забыл, забыл...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Программа работает. Только не удобно. Нужно сначало выбрать объекты, а потом дать команду считать приборы. Можно ли наоборот сделать? Еще я так понял приборы нужно записывать только в первый столбец -приборы из другого столбца не считаются (впринципе мне нравится ничего менять не нужно).
Если вместе с выбираемыми объектами попал не текст то программа дает ошибку. Еще очень хочется ввести для себя пометки чтоли. Т.е. добавить те приборы которые возможно ввели не правильно. Например есть прибор НМШ2-4000. Часто при проектировании еще не известно какой прибор будет стоять и пишут просто НМШ. Можно ли сделать так, чтобы например я сделал столбец ошибок в экселе (например E). и в таблице посчитанных приборов под отдельным заголовком (графой) шли эти самые ошибки. Это не горит и не сильно нужно - просто пожелание к программе.
__________________
Поезд который устал от ржавого здравомыслия рельсов... |
||||
![]() |
|
||||
Проектировщик СС Регистрация: 24.06.2008
Минск
Сообщений: 134
![]() |
Что-то не понял первого вопроса. Последовательность действий такая:
1. Указать файл шаблонов. 2. Указать объекты. 3. Указать точку вставки таблицы. Надо 2-1-3? Действительно из экселевского файла читаются данные только из первой колонки каждого листа. С чем это связано и как сделать по другому не знаю. Ничего кроме текста на чертеже выбрать в принципе нельзя. Какие объекты кроме текста попадают в набор? Трудность реализации последнего предложения связана для меня с тем, что, как писал выше, не разбирался и не уверен что смогу разобраться, как работает функция Евгения Елпанова. |
|||
![]() |
|
||||
Если делать 1,2,3 дает ошибку. Надо чтоб в лиспе уже был прописан шаблон - он один. У меня сделана кнопка на этот лисп. Должно работать так: нажал кнопку, выбрал объекты, указал точку вставки таблицы.
А работает так. Выбрал обекты, нажал кнопку, указал где шаблон, указал точку вставки таблицы.
__________________
Поезд который устал от ржавого здравомыслия рельсов... |
||||
![]() |
|
||||
Проектировщик СС Регистрация: 24.06.2008
Минск
Сообщений: 134
![]() |
Извиняюсь, что долго не отвечал - не было времени.
Дополненный код в #9. Добавил глобальную переменную *way_custom*, если отлична от nil, то диалог с выбором файла в программе будет пропускаться. Для этого в код вместо (setq *way_custom* nil) надо вставить, например, (setq *way_custom* "D:\\book.xls"), то есть путь к своему файлу-шаблону. Макрос для кнопки, если код помещен в файл lpribor.lsp и данный файл находится в каталогах поддержки: Код:
|
|||
![]() |
|
||||
Проектировщик СС Регистрация: 24.06.2008
Минск
Сообщений: 134
![]() |
Судя по тому, что у тебя возникает такая же ошибка как и в #12 и ты ее в дальнейшем как-то поборол самостоятельно, посоветовать ничего не могу, так как это точно не связано с теми незначительными дополнениями которые я внес. У меня все работает.
|
|||
![]() |
|
||||
Вроде разобрался. Проблему не могу решить при условии что программа и файл эксселя лежит не в корне диска. Закидываю все в корень С:\ все работает, если перекидываю все C:\ShSCB то не работает.
Так должна выглядеть первая строка в лиспе? Код:
При запуске в корне С:\ появляется экселевский файл размером в 6 кило который не удаляется (пока кад работает) и не открывается.
__________________
Поезд который устал от ржавого здравомыслия рельсов... |
||||
![]() |
|
||||
Вот ведь...
Бывает же! Функцию чтения *.xls я писал только с одной целью - показать Алексею Кулику, что это возможно! Все было без проверок и в два раза короче, чем в последней версии... С одной стороны, я люблю эксель, как очень удобный калькулятор, но ненавижу его, как программу, для связи с акадом! Для таких целей, во много раз удобнее использовать базы данных. Каждый раз, когда меня просят адаптировать эту программу к каким либо новым условиям или исправить ошибки - мне приходится долго собираться с духом - мне противна сама возможность связки акада и экселя... PS. Самая последняя версия программы: Data reading from Microsoft Excel not using Excel. |
||||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Приборы, применяемые при обследованиях зд. и соор. | Arslan | Обследование зданий и сооружений | 29 | 15.04.2021 20:17 |
Нужно посчитать кабель | Shoorup | Программирование | 122 | 06.02.2020 14:09 |
Нужно ли показывать с спецификации болты, гвозди, анкеры? | Колян | Прочее. Архитектура и строительство | 9 | 14.09.2006 08:09 |
Дали задачку на плаксисе посчитать | rust-resisting | Прочее. Программное обеспечение | 1 | 25.03.2006 13:42 |