Re: Подсчет количества блоков в чертеже
Спасибо!
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Autodesk → AutoCAD → Подсчет количества блоков в чертеже
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Коллеги, так как с моим последним вопросом, может у кого есть дельное предложение по поводу этой ситуации, только без альтернативных приёмов.
> Walkmax
Таблицы, атрибуты, динамические блоки есть много нюансов. Потому не возможно дать однозначный ответ в чём глюки. Думаю что ответить на этот вопрос без ознакомления с файлом будет трудно. Постарайтесь по этапно конкретизировать проблему. Может кто работающий с таблицами по этому принципу подскажет.
на команднойй строке напечатайй
BCOUNTехто часть EXPRESS TOOLS
> Startrek
И пролететь как фанера над Парижем при попытке подсчитать динамические блоки ;)
Я могу предоставить файл, а по шагам описать в файле. Если такой вриан приемлем то подскажите как всё это провернуть (передачу файла).
> Walkmax
ifolder.ru, slil.ru, rapidshare.com (ru) либо любой другой файлообменник. И ссылку сюда
Хорошо, вот http://ifolder.ru/5091728
пошаговое описание и сам чертёж в чертеже, для дальнейших манипуляций возможно придётся переопределить файл внешних данных заноново.
Так, похоже пропал интерес к проблеме, и вопрос остался без решения. Жаль.
Приветствую всех! Как смешно, ведь пару лет назад я здесь "тусовался" как раз по этой теме, но полностью задачу тогда решить не удалось. Есть у меня программа на LISPe BLCOUNT, которая прекрасно считает блоки даже в бесплатном ProgeCADe Smart и результат (количество и имена блоков)скидывает в файл xls c именем файла dwg. И вот сейчас на Visual Basice попалась программка.
Public Sub GetCensus()
Dim oAutoCad As Object
Dim oModelSpace As Object
Dim wksCensus As Worksheet
Dim intI As Integer
' Get the open instance of AutoCAD
Set oAutoCad = GetObject(, "AutoCAD.Application")
If Not oAutoCad Is Nothing Then
Set wksCensus = Worksheets("Census")
wksCensus.Range("A2", "E1000").Clear
Set oModelSpace = oAutoCad.ActiveDocument.ModelSpace
wksCensus.Cells(3, 6) = oAutoCad.ActiveDocument.Name
wksCensus.Cells(4, 6) = oModelSpace.Count & " total objects"
For intI = 0 To oModelSpace.Count - 1
With oModelSpace.Item(intI)
wksCensus.Cells(intI + 2, 1) = .EntityName
wksCensus.Cells(intI + 2, 2) = .EntityType
wksCensus.Cells(intI + 2, 3) = .Color
wksCensus.Cells(intI + 2, 4) = .Layer
wksCensus.Cells(intI + 2, 5) = .Linetype
End With
Next intI
End If
End Sub
Она вставляет в Excell столбцы EntityName, EntityType и прочее из открытого Acadoвского файла при активации макроса в Excelle. А вот может ли кто-нибудь разбирающийся в VB ее чуть подправить, чтобы в Excell переносились названия блоков и их количество?
И, конечно, поделиться результатом! :)
И снова всех приветствую!
Видимо, тема действительно никого не волнует, раз нет ответов :)
И еще вопросик небольшой - файлы с расширением dvb как следует открывать и чем? Прошу громко не смеяться, просто раньше не приходилось сталкиваться.
Заранее спасибо!
Сергей
Вопрос про dvb снимается - естественно, он запускается в AutoCADe, а у меня был ACAD14, в котором нет VBA. А про макрос в Excelle, который должен подсчитывать блоки,вопрос остается!
> Serg7
Здесь почитай http://dwg.ru/f/showthread.php?t=17333
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Autodesk → AutoCAD → Подсчет количества блоков в чертеже
Форум работает на PunBB, при поддержке Informer Technologies, Inc