| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > Помогите перенести данные из excel в autocad

Помогите перенести данные из excel в autocad

Ответ
Поиск в этой теме
Непрочитано 16.12.2019, 14:58
Помогите перенести данные из excel в autocad
viner
 
Регистрация: 02.07.2019
Сообщений: 33

Здравствуйте, сколько уже сижу и бьюсь над задачей и не могу выполнить, знаний мало. Ситуация такая, есть у меня таблица в экселе в которой проводяться расчеты на нескольких листах, для меня только один лист в котором я работаю, вот эти данные мне нужно вывести, может специальная программа есть или лисп или еще что ? Мне нужно не просто вывести данные (я это умею) а в отдельных блоках.
Просмотров: 8041
 
Непрочитано 18.12.2019, 12:12
#21
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


Цитата:
На этом форуме только ссылки дают
а вы хотели БКК?
trir вне форума  
 
Непрочитано 18.12.2019, 12:13
#22
Сергей Юрьевич

Строительство гидротехнических сооружений
 
Регистрация: 01.08.2012
Москва
Сообщений: 8,643


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
кстати, сейчас на первых курсах университетов на технических специальностях продолжают давать азы программирования или упростили учебную программу?
нас учили фортрану...
даже какие-то применимые к практике алгоритмы писали (численное решение дифуров/интегралов и т.п.), но это курсе на втором...
а вот реально полезными были курсачи по экселю - эти знания наверное и по сей день одно из самых ценных приобретений
Сергей Юрьевич на форуме  
 
Непрочитано 18.12.2019, 12:16
#23
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,006


ну а задача ТС не сильно сложнее лабораторных, имхо. Нюансы подсказали бы в процессе. Но ему даже нормальный блок с атрибутами лень сделать)
Сергей812 вне форума  
 
Непрочитано 18.12.2019, 12:33
#24
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


https://habr.com/ru/post/322042/
trir вне форума  
 
Непрочитано 18.12.2019, 12:35
#25
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,006


Цитата:
Сообщение от trir Посмотреть сообщение
https://habr.com/ru/post/322042/
trir, да чего вы ему .Net пихаете всё - пускай хотя бы на VBA начнет для начала)
Сергей812 вне форума  
 
Непрочитано 18.12.2019, 12:42
#26
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


лучше сразу начинать с хорошего, там у автора тоже по коду видно, что он с VBA начинал - жуть полная
trir вне форума  
 
Непрочитано 18.12.2019, 12:50
#27
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,006


trir, все начинали с кривого корявого кода, не надо сказки рассказывать) А в VBA гораздо проще получить какой то видимый результат и тем самым не потерять интерес к самому процессу автоматизации в самом начале. И все под рукой - ни надо ничего согласовывать с руководством, с отделом ИТ - нажал в экселе ALT+F11 и пошел экспериментировать.
Сергей812 вне форума  
 
Непрочитано 18.12.2019, 13:18
#28
Константин Д


 
Регистрация: 29.05.2014
Сообщений: 295


Раз уж Вы блоки делаете - может attout/attin?
Константин Д вне форума  
 
Непрочитано 18.12.2019, 13:31
#29
avatarez


 
Регистрация: 08.08.2019
Сообщений: 20


Если непринципиально блоки или таблицы, то в полуавтоматическом режиме при помощи моей надстройки для экселя можно сделать так:
- скачать надстройку https://dwg.ru/dnl/14892
- закрыть эксель, установить надстройку

- создать новый лист
- скопировать таблицу
- вставить на созданный лист через Специальная вставка - Значения с галочкой Транспонировать. Если уже есть объединенные ячейки, то еще вставить Специальная вставка - Форматы с галочкой Транспонировать
- объединить что надо, удалить что не надо, сделать выравнивание, выставить размер ячеек в см в режиме Вид - Разметка страницы
- с помощью надстройки вставлять в автокад
avatarez вне форума  
 
Автор темы   Непрочитано 18.12.2019, 14:44
#30
viner


 
Регистрация: 02.07.2019
Сообщений: 33


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Но ему даже нормальный блок с атрибутами лень сделать
мне не лень, я так понял что вопрос стоял показать вид блока и экселя без структуры
Цитата:
Сообщение от Константин Д Посмотреть сообщение
Константин Д
да атрибуты есть
Цитата:
Сообщение от avatarez Посмотреть сообщение
avatarez
спасибо за конкретику , а не ссылки на вба и на абстрактные примеры, попробую ваши надстройки

----- добавлено через ~46 мин. -----
Цитата:
Сообщение от avatarez Посмотреть сообщение
avatarez
хорошая надстройка,не загружает компьютер, но к сожалению не подходит, она вставляет таблицу в том виде в каком в экселе, а мне нужно разделять на отдельные элементы
viner вне форума  
 
Непрочитано 18.12.2019, 15:32
#31
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


Цитата:
хорошая надстройка,не загружает компьютер, но к сожалению не подходит


Цитата:
спасибо за конкретику
я одного не пойму, в статье на хабре ваша задача решена от и до - бери и пользуйся, что мешает?
trir вне форума  
 
Автор темы   Непрочитано 18.12.2019, 15:35
#32
viner


 
Регистрация: 02.07.2019
Сообщений: 33


Цитата:
Сообщение от trir Посмотреть сообщение
я одного не пойму, в статье на хабре ваша задача решена от и до - бери и пользуйся, что мешает?
вы про это "Автоматизация рутинных операций между Excel и AutoCAD при помощи VBA"?
или это "Скрипты в AutoCAD. Самое недооцененное оружие"
viner вне форума  
 
Непрочитано 18.12.2019, 15:44
#33
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,006


Цитата:
Сообщение от viner Посмотреть сообщение
а не ссылки на вба и на абстрактные примеры, попробую ваши надстройки
т.е. вы всерьез рассчитывали - что выдав имитацию таблицы и блока, получите готовое решение?) Т.е. на время окружающих вам вообще наплевать...
Сергей812 вне форума  
 
Непрочитано 18.12.2019, 15:46
#34
avatarez


 
Регистрация: 08.08.2019
Сообщений: 20


Цитата:
Сообщение от viner Посмотреть сообщение
хорошая надстройка,не загружает компьютер, но к сожалению не подходит, она вставляет таблицу в том виде в каком в экселе, а мне нужно разделять на отдельные элементы
выделяете нужные ячейки и вставляете, а привести в вид "как надо" - судя по примеру таблицу надо на бок повернуть и строку расположение вниз перенести - это транспонирование в экселе, потому и "полуавтоматически".
avatarez вне форума  
 
Непрочитано 18.12.2019, 18:10
#35
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


Цитата:
вы про это "Автоматизация рутинных операций между Excel и AutoCAD при помощи VBA"?
или это "Скрипты в AutoCAD. Самое недооцененное оружие"
Электрические схемы в Autocad с помощью .NET
trir вне форума  
 
Автор темы   Непрочитано 19.12.2019, 14:31
#36
viner


 
Регистрация: 02.07.2019
Сообщений: 33


Цитата:
Сообщение от trir Посмотреть сообщение
Электрические схемы в Autocad с помощью .NET
да видел я это, и даже пытался применить,там структура другая
viner вне форума  
 
Непрочитано 19.12.2019, 14:54
#37
trir


 
Регистрация: 18.12.2010
Сообщений: 5,047


Цитата:
там структура другая
там есть исходники - берёшь и переписываешь
trir вне форума  
 
Автор темы   Непрочитано 09.01.2020, 12:18
#38
viner


 
Регистрация: 02.07.2019
Сообщений: 33


Поздравляю всех с новым годом господа! Возвращаюсь все с тем же вопросом. Нашел более мене для меня подходящий код, удалил не нужное, но программа не работает, выделяет 3 строку "Dim AP As Excel.Application"? Что в этом коде не правильно?

Код:
[Выделить все]
Sub insertBlock()
Dim BlockRef As AcadBlockReference
Dim name As String
Dim pp As Variant
Dim AP As Excel.Application
Dim WB As Excel.Workbook
Dim WS As Excel.Worksheet
On Error Resume Next

'подключаемся к Excel
Set AP = Excel.Application
Set WB = AP.Workbooks.Open("C:\Users\......")
Set WS = WB.Worksheets.Open("Лист№... ")

'получаем точку вставки блока
pp = ThisDrawing.Utiliti.GetPoint(, "точка вставки блока:")

'вставка блока
name = "имя блока"
Set BlockRef = ThisDrawing.ModelSpace.insertBlock(pp, name, 1, 1, 1, 0)

Next
End If

'получение атрибутов
If BlockRef.HasAttributes = True Then
att = BlockRef.GetAttributes
For I = LBound(att) To UBound(att)
If att(I).TagString = "Атрибут" Then
att(I).TexString = Cells(3, 1)

End If
Next
End If

'выход из Excel
AP.Quit

End Sub
viner вне форума  
 
Непрочитано 09.01.2020, 12:21
#39
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,787


Отсутствуют ссылки на соответствующие библиотеки Excel. Проверяй Tools - References, если мне не изменяет память.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 09.01.2020, 12:29
#40
viner


 
Регистрация: 02.07.2019
Сообщений: 33


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Отсутствуют ссылки на соответствующие библиотеки Excel. Проверяй Tools - References, если мне не изменяет память.
немного по подробнее объясните пожалуйста что проверить? у меня в автокаде Tools - References серый, т.е я не могу его открыть
выдает ошибку "User-defined type not defined"

----- добавлено через ~2 ч. -----
подключил библиотеку" microsoft excel 16.0 object library, подправил код все равно не работает
Код:
[Выделить все]
Sub insertBlock()
Dim BlockRef As AcadBlockReference
Dim name As String
Dim pp As Variant
Dim AP As Excel.Application
Dim WB As Excel.Workbook
Dim WS As Excel.Worksheet
On Error Resume Next

'подключаемся к Excel
Set AP = Excel.Application
Set WB = AP.Workbooks.Open("C:\Users\....")
Set WS = WB.Worksheets("Лист№")

'получаем точку вставки блока
pp = ThisDrawing.Utility.GetPoint(, "точка вставки блока:")

'вставка блока
name = "имя атрибута"
Set BlockRef = ThisDrawing.ModelSpace.insertBlock(pp, name, 1, 1, 1, 0)



'получение атрибутов
If BlockRef.HasAttributes = True Then
att = BlockRef.GetAttributes
For I = LBound(att) To UBound(att)
If att(I).TagString = "Атрибут" Then
att(I).TexString = Cells(3, 1)

           End If
       Next
End If

'выход из Excel
AP.Quit

End Sub
скажите что в точке вставки блока прописать?

Последний раз редактировалось viner, 09.01.2020 в 12:35.
viner вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Прочее. Программное обеспечение > Помогите перенести данные из excel в autocad

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите автоматизировать запуск команды attin в Autocad из Excel Нико Программирование 1 23.01.2020 10:51
Вставка блока в таблицу AutoCAD по данным из Excel VicZel AutoCAD 1 25.06.2019 17:21
Как перенести текст в Excel (AutoCAD 2016) n0vaka1n AutoCAD 3 21.02.2019 19:20
Таблица из Excel в AutoCAD Elbrus AutoCAD 56 11.06.2012 11:41
Как перенести значения из таблицы Excel в AutoCAD в виде текста? Yur.OK_SPb AutoCAD 22 01.08.2011 16:42