|
Autocad VBA : Objekt AutoCad.Acad3DSoilid.Volume aufrufen???
startrek am 17.12.2005 um 13:32 Uhr (0)
Hi,das geht mit GetEntity:Code:Sub xxx() Dim ent As AcadEntity, p As Variant ThisDrawing.Utility.GetEntity ent, p, "Ein Volumenkörper please:" If TypeName(ent) = "IAcad3DSolid" Then MsgBox ent.VolumeEnd SubGruss Nancy
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Zugriff von VBA auf aktuelles ACADDocument
startrek am 12.01.2006 um 13:30 Uhr (0)
Hallo,das geht mit getobject(), zB:Code:Sub x() Dim acApp As Object, acDoc As Object Set acApp = GetObject(, "autocad.application.16.1") dwg offen? wenn nein, öffnen On Error Resume Next Set acDoc = acApp.documents("fiesta.dwg") If Err Then Set acDoc = acApp.documents.Open("d:datenfiesta.dwg") On Error GoTo 0 AppActivate "Autodesk Architectural Desktop 2005" acDoc.ActivateEnd Sub... und siehe dazu auch hier oder hier oder suche nach GetObject,CreateObject ;-)Gruss Nancy
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Attribute mit Excel abgleichen
startrek am 08.02.2006 um 21:04 Uhr (0)
Hi Sven, Warum steht dort einmal FType% mit Prozent?Ich - manchmal faul;-)Also das % ist die Kurznotation von Integer, e.g. Dim i% == Dim i as integerCode:& == long # == double$ == string ! == single Was pasiert hier mit acSelectionSetAll?lt. F2: Const acSelectionSetAll = 5 | Element von AutoCAD.AcSelectDas ist nur eine acadinterne Konstante, der kann man keine Paramater übergeben, sondern sie selbst ist ein Parameter. Übergeben wird hier an die select Methode [hit mal F1]Die Kommas stehen für weitere op ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : ACAD-Befehl aus Excel starten
startrek am 14.02.2006 um 19:08 Uhr (0)
Hallo Alfonso,bin mir nicht sicher, obs einwandfrei läuft, da ich nicht weiss,was dein Lisp genau macht (Usereingaben? etc)U.U. braucht man ja nicht unbedingt ein appactivate,anyway, spiele mal bissel rum, achja ich bin mal einfach davon ausgegangen, dass Acad gestartet ist;-)HTH, Nancy-- Code:Sub test() Dim acApp As Object, x Set acApp = GetObject(, "Autocad.application") x = acApp.activedocument.FullName Cells(1, 1) = x AppActivate "Autodesk Architectural Desktop 2005" acApp.activedocument.sendcomm ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : ACAD-Befehl aus Excel starten
startrek am 14.02.2006 um 21:40 Uhr (0)
Abend Alfonso,habs nicht auf alle Eventualitäten getestet, naja ein Versuch s.u.,aber mal general - ich hab zwar keinen Sprachfehler;-) - aber wennich das richtig deute, misst du da nur zwei Längen in dem Lisp?Wenn ja, ist das wie von hinten durch die Brust übers clipboard ins xlsheet ;-)Hab dir mal eine vba-getpoint Methode reingesetzt, da bekommst folgenden Return:p1(0 to 2) == p1(0)=x-Wert : p1(1)=y-Wert : p1(2)=z-Wertselbiges bei p2.Rein theoretisch kannste dir das ja dann gleich aus p1 und p2 errechne ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : AutoCAD Befehl messen oder teilen
startrek am 07.03.2006 um 21:37 Uhr (0)
Hallo,fürchte ein fürchterlicher Ansatz mit sendcommand;-)Gruss Nancy-- Code:Sub test() Dim ent As AcadEntity, p, l# On Error Resume Next With ThisDrawing .Utility.GetEntity ent, p, "ein Objekt, please: " If Err Then Exit Sub .SendCommand "_measure (handent """ & ent.Handle & """) " l = .Utility.GetString(0, Chr(13) & "Segmentlänge eingeben:" & Space(10)) If Err Then Exit Sub .SendCommand l & Chr(13) End WithEnd Sub
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Excel und AutoCAD
startrek am 23.06.2006 um 10:02 Uhr (0)
Hi Cadler,das haut doch aber so eigentlich hin;-)Code:Sub x() Dim p1#(1), p2#(1) p2(0) = 5: p2(1) = 10 rechteck p1, p2 ZoomExtentsEnd SubGruss Nancy
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : zugehörige dvb-datei ermitteln
startrek am 26.06.2006 um 10:31 Uhr (0)
Hallo Jan,ganz easy:Code:?vbe.activevbproject.filenameD: empProjekt1.dvbGruss Nancy
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Datenübergabe von Excel auf Attribute und umgekehrt
startrek am 26.06.2006 um 12:49 Uhr (0)
Hallo Nat, Gibt es für ACAD einen Makrorekorder, den man von Excel her kennt?Niente, negativ ;-)Probier das mit den Einlesen aus der blockattr.dwg nochmal so:Code:Sub bla() Dim acApp As Object, acDoc As Object Dim fType%(0), fData(0), sset As Object, x As Object Dim r&, i%, attr Set acApp = GetObject(, "autocad.application") Set acDoc = acApp.ActiveDocument Set sset = acDoc.SelectionSets.Add("NewSet03") Block-Filter setzen fType(0) = 0: fData(0) = "INSERT" alle Blöcke wählen sset.Select acSelecti ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Datenübergabe von Excel auf Attribute und umgekehrt
startrek am 26.06.2006 um 15:07 Uhr (0)
Okay, hier noch andersrum,aber:- ohne Worksheet_Change-Event;-)- ohne irgendwelche Errorhandler- ohne irgendwelche Abgleiche der Namen/Reihenfolge- ohne Abgleich der richtigen dwg etc pp... geprüft wird nur auf Übereinstimmung der Handles, Basis wieder die blockattr.dwg und blockattr.xls:Code:Sub blubb() Dim acApp As Object, acDoc As Object Dim fType%(0), fData(0), sset As Object, x As Object Dim r&, i%, attr Set acApp = GetObject(, "autocad.application") Set acDoc = acApp.ActiveDocument Set sset = a ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Datenübergabe von Excel auf Attribute und umgekehrt
startrek am 26.06.2006 um 23:06 Uhr (0)
Zitat:Original erstellt von Nat_Bambo:Ich weißt überhaupt nicht, ob dieses in ACAD möglich ist und ob das jetzige Programm dazu überhaupt geeignet ist.Hallo Uli,Na warum denn nicht? ;-)Das Autocad/VBA ist nix andres als das Office/VBA.Soll heissen, beide greifen auf die gleiche dll zu, nämlich die MsForms,zumindest hinsichtlich der Userforms.Ich denke das wäre schon machbar, der Weg wäre grob folgender:- User wählt Block/dwg aus - die werden geöffnet/eingefügt?- dann ziehst eine Schleife erstmal über alle ...
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Excel und AutoCAD
startrek am 28.06.2006 um 10:46 Uhr (0)
Dein Acad-Objekt hast Du aber schon davorgesetzt oder?ac.ThisDrawing.SendCommand "_zoom "ac.ThisDrawing.Application.ZoomPickWindowoder versuchs mal direkt, etwa so:ac.ZoomExtents oder ac.ZoomAll oder so ...Gruss Nancy
|
| In das Form Autocad VBA wechseln |
|
Autocad VBA : Datenübergabe von Excel auf Attribute und umgekehrt
startrek am 28.06.2006 um 11:05 Uhr (0)
Hallo,zu Ersterem, dem Prob mit den Formeln in deiner xls,hmm, das lässt sich so aus der Ferne nicht beantworten,evtl. lade mal die Datei hoch.Zu Letzterem: http://ww3.cad.de/foren/ubb/Forum259/HTML/000693.shtml#000000 http://ww3.cad.de/foren/ubb/Forum54/HTML/013151.shtml Grüsse Nancy
|
| In das Form Autocad VBA wechseln |