Autor
|
Thema: Block einfügen / Sichtbarkeit (4896 mal gelesen)
|
Patrick79ch Mitglied ICT-Manager

 Beiträge: 13 Registriert: 14.12.2006
|
erstellt am: 14. Dez. 2006 14:48 <-- editieren / zitieren --> Unities abgeben:         
Hallo Carsten!!Hat so funktioniert, wenn ich den Pfad fix so einschreibe: Code:
path = """T:/Mobiliar/Caddys/Take Off/SHARING BOY-67X40X107.dwg""" ThisDrawing.SetVariable "cmdecho", 0 ThisDrawing.SendCommand "(blockIn " & path & ")" & vbCr
Wenn ich aber folgendes versuche: Code:
(Image1.ControlTipText entspricht dem Wert des Pfades+Datei, welche ich als Block einfügen will)path = """" & Image1.ControlTipText & """" ThisDrawing.SetVariable "cmdecho", 0 ThisDrawing.SendCommand "(blockIn " & path & ")" & vbCr
erscheint folgende Meldung im Textfenster:
Code:
Befehl: (blockIn "T:\Mobiliar\Caddys\Take Off\SHARING BOY-67X40X107.dwg")"MobiliarCaddysTake OffSHARING BOY-67X40X107.dwg": Kann Datei nicht finden im Suchpfad: \\ping\daten$\A870955\Eigene Dateien\ (aktuelles Verzeichnis) C:\Dokumente und Einstellungen\A870955\Anwendungsdaten\Autodesk\AutoCAD 2006\R16.2\deu\support\ C:\Programme\AutoCAD 2006\support\ C:\Programme\AutoCAD 2006\fonts\ C:\Programme\AutoCAD 2006\help\ C:\Programme\AutoCAD 2006\Express\ C:\Programme\AutoCAD 2006\support\color\ T:\ACAD_VBA\ C:\Programme\AutoCAD 2006\drv\ C:\Programme\AutoCAD 2006\ *Ungültig* ; Fehler: Funktion abgebrochen
Kann ich die "\" irgendwie in "/" oder "\\" umsetzen? (die beiden Varianten scheinen ja zu funktionieren.) Dass ich den Pfad von dem Imageobjekt aus dem Tooltiptext nehme, hat den Grund, dass ich daher die Information kriege, welchen Block ich benötige.
------------------ ich bin neu - kann nix :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Patrick79ch Mitglied ICT-Manager

 Beiträge: 13 Registriert: 14.12.2006
|
erstellt am: 14. Dez. 2006 14:51 <-- editieren / zitieren --> Unities abgeben:         
Oh, auf dein Nebenbei :-) (hatte ich gar nicht gesehen! :-) )ICT-Management ist das was ich grade an der Fachhochschule Nordwestschweiz studiere. Nennt sich nachher ICT-Manager / Wirtschaftsinformatiker FH *stolz* Das Studium ist darauf ausgelegt, dass man nachher in der Lage sein sollte komplexe IT-Projekte leiten zu können. Nun denn "Leiten" ist immer das eine "selber programmieren" wie ich grade feststelle, das andere :-) (ICT heisst im übrigen: Information and Communication Technologies) ------------------ ich bin neu - kann nix :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Carsten1210 Mitglied Holztechniker
   
 Beiträge: 1096 Registriert: 24.07.2002 ACA 2011 / Solidworks 2011 SP3.0 Solidworks EnterprisePDM 2011 SP2.0 Windows 7 Core i7 2600K , 8192MB Nvidia Quadro FX 3800 2x Apple Cinema Display 23"
|
erstellt am: 14. Dez. 2006 16:05 <-- editieren / zitieren --> Unities abgeben:         
Hallo Patrick,Danke für die Erläuterung. Wieder schlauer geworden. Probier es mal so: Public Sub test() Dim path As String Dim abc abc = "S:/Bib/01_Verbindungsbeschlaege/01_Schnaepper/01.dwg" path = """" & abc & """" ThisDrawing.SendCommand "(blockIn " & path & ")" & vbCr End Sub Edit: Sehe gerade, das du es schon hattest. Dann fehlen vielleicht noch 2 " links und rechts vom String. Fürs ersetzen von Zeichen in einem String gibt es die funktion replace. Die erleuterung dafür findest du in der VBA-Hilfe in der IDE. Gruß, Carsten [Diese Nachricht wurde von Carsten1210 am 14. Dez. 2006 editiert.] Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Patrick79ch Mitglied ICT-Manager

 Beiträge: 13 Registriert: 14.12.2006
|
erstellt am: 14. Dez. 2006 16:26 <-- editieren / zitieren --> Unities abgeben:         
Hi Carsten :-)Jetzt klappts! Folgendermassen hab ich's gelöst:
Code:
Pfad = Image1.ControlTipTextpath = """" & (Replace(Pfad, "\", "/")) & """" ThisDrawing.SetVariable "cmdecho", 0 ThisDrawing.SendCommand "(blockIn " & path & ")" & vbCr
Allerdings, wie es so ist, habe ich jetzt noch einen Schönheitsfehler entdeckt :-D Der Block wird jetzt, eingefügt, man kann ihn drehen - cool! :-) Aber anschliessend fragt er noch alle leeren Attribute ab! (siehe unten!) Diese muss ich mit Enter bestätigen. Kann ich das irgendwie unterdrücken? Dann sollte es so sein, wie ich mir das vorstelle :-)
Code:
Befehl: (blockIn "T:/Mobiliar/Caddys/Take Off/SHARING BOY-67X40X107.dwg")Drehwinkel angeben <0.00000000>: Attributwerte eingeben Datenblatt: BauteilCode: FM-Code: GLT-Wert: System/Anlage: Text-Att-0 <74>: SAP Artikel Nr: Bemerkungen:
Schon mal ganz herzlichen Dank für die Hilfe - wär echt nicht drauf gekommen - macht Spass! :-) ------------------ ich bin neu - kann nix :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Carsten1210 Mitglied Holztechniker
   
 Beiträge: 1096 Registriert: 24.07.2002 ACA 2011 / Solidworks 2011 SP3.0 Solidworks EnterprisePDM 2011 SP2.0 Windows 7 Core i7 2600K , 8192MB Nvidia Quadro FX 3800 2x Apple Cinema Display 23"
|
erstellt am: 14. Dez. 2006 19:44 <-- editieren / zitieren --> Unities abgeben:         
Hallo Patrick,Schau dir mal die Variable "Attreq" an. Bei dir sollte diese auf 1 stehen. Stell die mal auf 0 und deine Attribute werden beim einfügen nicht mehr abgefragt. Ich würds aber nach dem einfügen wieder zurücksetzen. Gruß, Carsten Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Patrick79ch Mitglied ICT-Manager

 Beiträge: 13 Registriert: 14.12.2006
|
erstellt am: 15. Dez. 2006 09:40 <-- editieren / zitieren --> Unities abgeben:         
Hi Carsten! Herzlichen Dank! Funktioniert super!!Bin grade dabei von meinen 1000 Blöcken automatisiert WMF's zu erstellen http://ww3.cad.de/foren/ubb/Forum259/HTML/001083.shtml Funktioniert auch noch nicht wirklich :-) ------------------ ich bin neu - kann nix :-) Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Carsten1210 Mitglied Holztechniker
   
 Beiträge: 1096 Registriert: 24.07.2002 ACA 2011 / Solidworks 2011 SP3.0 Solidworks EnterprisePDM 2011 SP2.0 Windows 7 Core i7 2600K , 8192MB Nvidia Quadro FX 3800 2x Apple Cinema Display 23"
|
erstellt am: 15. Dez. 2006 09:45 <-- editieren / zitieren --> Unities abgeben:         
Hallo Partick,Hab ich gesehen und drauf geantwortet. Dies wäre der richtige Link. Gruß, Carsten Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |