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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как создать dxf файл из открытого dwg на VBA?

Как создать dxf файл из открытого dwg на VBA?

Ответ
Поиск в этой теме
Непрочитано 17.03.2021, 18:04 #1
Как создать dxf файл из открытого dwg на VBA?
annt
 
программист
 
Москва
Регистрация: 24.06.2008
Сообщений: 49

И еще скопировать некоторые объекты из dwg.
Кто-нибудь делал?

Последний раз редактировалось annt, 17.03.2021 в 21:27.
Просмотров: 8305
 
Непрочитано 17.03.2021, 18:38
#2
CalcProg


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


странный вопрос для программиста.
начни с начала - с поиска литературы на данную тему.

"AutoLISP и Visual LISP в среде АutoCAD". Николай Полещук, Петр Лоскутов.

----- добавлено через ~2 мин. -----
в какой программе открыт двж?
в автокаде? компасе? или другой программе?

----- добавлено через ~5 мин. -----
я делал отчет в дхф2000 на лазарусе.

Последний раз редактировалось CalcProg, 17.03.2021 в 19:05.
CalcProg вне форума  
 
Автор темы   Непрочитано 17.03.2021, 20:03
#3
annt

программист
 
Регистрация: 24.06.2008
Москва
Сообщений: 49


Модуль VBA в AutoCad.

Спасибо за бесплатный совет.
Полещука лет 10-20 назад еще читал.
Могу и сам написать, я спрашивал про нечто готовое, чтобы не тратить время.
annt вне форума  
 
Непрочитано 17.03.2021, 20:23
#4
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,293
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от annt Посмотреть сообщение
, я спрашивал про нечто готовое, чтобы не тратить время.
поиск исполнителей, помогает не тратить время
__________________
Мастерская СПДС
doctorraz вне форума  
 
Автор темы   Непрочитано 17.03.2021, 20:45
#5
annt

программист
 
Регистрация: 24.06.2008
Москва
Сообщений: 49


Сами части кода всегда за деньги выкладываете?
annt вне форума  
 
Непрочитано 17.03.2021, 20:45
#6
Кулик Алексей aka kpblc
Moderator

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


Общие идеи есть, но они же не нужны
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 17.03.2021, 20:47
#7
annt

программист
 
Регистрация: 24.06.2008
Москва
Сообщений: 49


Все, что конкретно помогает нужно.
annt вне форума  
 
Непрочитано 17.03.2021, 20:52
#8
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,293
Отправить сообщение для doctorraz с помощью Skype™


Цитата:
Сообщение от annt Посмотреть сообщение
Сами части кода всегда за деньги выкладываете?
дык ты просишь


Цитата:
Сообщение от annt Посмотреть сообщение
нечто готовое, чтобы не тратить время.
Ты не готов тратить время, ты хочешь готовое.
__________________
Мастерская СПДС
doctorraz вне форума  
 
Непрочитано 17.03.2021, 21:48
#9
Кулик Алексей aka kpblc
Moderator

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


annt, конкретики лично у меня нет и не будет, ибо
а) я не пишу на VBA
б) я не вижу, на каком месте у тебя спотык
А так - создавай новый документ, клонируй в него нужные объекты, и потом (насколько мне помнится) - SavetoDxf к этому новому документу.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 18.03.2021, 01:27
#10
Сергей812


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


Выбирайте по вкусу)
AcadDocument.SaveAs
AcadDocument.Export

Offtop: чего то уже второй программист с задачей на VBA за последний месяц на форум залетел)
Сергей812 вне форума  
 
Непрочитано 19.03.2021, 09:22
#11
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 2,588


Offtop:
Цитата:
Сообщение от Сергей812 Посмотреть сообщение
чего то уже второй программист с задачей на VBA за последний месяц на форум залетел)
Залетел сразу на разные форумы https://adn-cis.org/forum/index.php?topic=10337.0 Ответы везде одинаковые.... Может просто сессия близко.
Boxa на форуме  
 
Непрочитано 19.03.2021, 13:24
#12
doctorraz

электрик
 
Регистрация: 19.02.2010
Волгоград
Сообщений: 2,293
Отправить сообщение для doctorraz с помощью Skype™


ПБЛОК умеет в dxf
из вебеа командными методами...
для курсовой сойдет)))
__________________
Мастерская СПДС
doctorraz вне форума  
 
Автор темы   Непрочитано 19.03.2021, 23:35
#13
annt

программист
 
Регистрация: 24.06.2008
Москва
Сообщений: 49


Если кому-то нужно, то вот.
Код:
[Выделить все]
Sub test()
Dim ent As AcadEntity
Dim sset As AcadSelectionSet
Dim intData() As Integer, varData() As Variant
Dim minExt As Variant, maxExt As Variant
Dim objCollection() As Object
Dim activeDoc As AcadDocument
'..............................................
'dxfnam=.....
'intData
'varData
'..............................................
Set sset = ThisDrawing.SelectionSets.Add("SS1")
sset.Select acSelectionSetAll, , , intData, varData
If sset.Count = 0 Then Exit Sub

Set activeDoc = ThisDrawing.Application.ActiveDocument
docpath = activeDoc.Path

ReDim objCollection(0 To sset.Count - 1)
i = 0

For Each ent In sset
  Set objCollection(i) = ent
    i = i + 1
Next

CopyObjects activeDoc, objCollection, docpath, dxfnam
 
ThisDrawing.SelectionSets.Item("SS1").Delete:    Set sset = Nothing
Exit Sub
End Sub
'######################################################################################
Sub CopyObjects(activeDoc As AcadDocument, objCollection() As Object, docpath, dxfnam)
Dim ent As AcadEntity, ent2 As AcadEntity
Dim newDoc As AcadDocument

Set newDoc = Documents.Add    ' Create a new drawing
        
retObjects = activeDoc.CopyObjects(objCollection, newDoc.ModelSpace)
' retObjects что-то делаем со скопированными объектами

ThisDrawing.SaveAs docpath & "\" & dxfnam, ac2007_dxf
newDoc.Close
Exit Sub
End Sub
annt вне форума  
 
Непрочитано 20.03.2021, 10:26
#14
Бахил

?
 
Регистрация: 17.06.2014
Царицын
Сообщений: 12,204


Offtop: А на фига? Если файл открыт, то что мешает сохранить его в любом формате стандартными средствами?
__________________
Не откладывайте на завтра! Положите на всё уже сегодня.(с)
Бахил вне форума  
 
Непрочитано 20.03.2021, 10:52
#15
Кулик Алексей aka kpblc
Moderator

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


Бахил, я так понял, что надо сохранять не весь файл.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 20.03.2021, 11:03
#16
Бахил

?
 
Регистрация: 17.06.2014
Царицын
Сообщений: 12,204


Ну так всего 3 действия "копи", "вставка", "сохранить".
Единственно для "самоутверждения".
__________________
Не откладывайте на завтра! Положите на всё уже сегодня.(с)
Бахил вне форума  
 
Непрочитано 20.03.2021, 12:03
#17
Сергей812


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


Sub test()
Переменные dxfnam, i - не объявлены. Или будут Variant вместо String и Long, или ругаться при включенной опции Option Explicit.
Сергей812 вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Как создать dxf файл из открытого dwg на VBA?

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Возможно ли создать внешнюю ссылку на часть чертежа (карты) и сохранить её потом как отдельный файл? SilvioManuel AutoCAD 10 25.08.2020 11:52
Как записать данные в файл, находящийся на удалённом компьютере? Makswell Программирование 10 09.07.2015 09:05
Как преобразовать .dwg файл в .txt файл? BuTeR:D AutoCAD 30 16.10.2013 10:38
Подскажите как создать файл справки чтобы открылся по нажатию Ф1? Aysa AutoCAD 6 22.01.2013 22:49
Создать LISP для копирования фрагмента файла в новый файл a_tim LISP 8 29.08.2012 18:52