| | | Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte | | | | PNY bietet das umfangreichste Ökosystem von B2B als auch B2C-Lösungen für IT-Akteure auf dem Markt, eine Pressemitteilung
|
Autor
|
Thema: VBA unter 2010 (4623 mal gelesen)
|
MartinM Mitglied
Beiträge: 122 Registriert: 27.11.2001 ACAD Map2015 3D, W7 x64 Prof. SP3
|
erstellt am: 30. Apr. 2009 13:11 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, Mir ist bekannt, dass 2010 keine VBA Umgebung mitbringt. Deshalb habe ich den entsprechenden Download/Installation ausgeführt. Derzeit wollen wir noch an VBA festhalten. Wenn ich nun versuche "alte" DVB-Projekte von der 2006er Version zu laden, kommt bei wenigen Dateien folgender Hinweis: "Bitte warten, während Windows AutoCAD Map 3D 2010 konfiguriert", wenig später wird die Anpassung abgebrochen mit dem Hinweis: "Das Installationsprogramm hat erkannt, das AutoCAD (ACAD.EXE) ausgeführt wird, beenden Sie das Programm...." Wenn ich die Installationsroutine dann (je nach DVB 3-5mal) abgebrochen habe, ist es geladen. Debuggen bringt kein Fehler und auch bei der Programmausführung scheint alles richtig zu sein. Sämtliche Verweise habe ich bereits aktualisiert. Woran kann es liegen? Viele Grüsse
Martin ------------------ ACAD Map2006 3D, XP Prof. SP2 ACAD Map2010 3D, XP Prof. SP2 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 01. Mai. 2009 12:36 <-- editieren / zitieren -->
Hi Martin, yes, auch schon ein paar mal darüber geärgert, dass AutoCAD nachzuinstallieren versucht und dann meldet, dass es selbst läuft Ich hab zwar die Situation nicht so, wie Du es beschrieben hast (beim Öffnen von DVB's, die mit AutoCAD 2006 erstellt wurden), es trifft mich manchmal nach neuem Setup des gesamten Rechners. Eine erhöhte Wahrscheinlichkeit zu dem Phänomen scheint es zu geben, wenn Office NACH AutoCAD und nicht vorher installiert hat, aber das ist Vermutung. Probier mal folgende Vorgehensweise: Starte z.B. MS-Excel, dann damit in den VBA-Editor mit einem neuen Projekt, und versuche Schritt für Schritt die Verweise hinzuzufügen, auf die Du auch in Deinem DVB verweist (insbesondere die AutoCAD-tlb's hinzufügen), bei einem der Verweise wird er dann gleiches anstarten (nachinstallieren von AutoCAD-Teilen), aber eben jetzt behindert kein laufendes AutoCAD die Installation. Hoffe, ich hab's von meinem letzten Mal richtig in Erinnerung, viel Erfolg, - alfred - ------------------ www.hollaus.at |
MartinM Mitglied
Beiträge: 122 Registriert: 27.11.2001
|
erstellt am: 05. Mai. 2009 08:59 <-- editieren / zitieren --> Unities abgeben:
Hallo Alfred, erstmal vielen Dank für deine Antwort. Bei uns wird AutoCAD definitiv NACH Office installiert! Deinen Vorschlag, in Excel die Verweise zu erstellen, hat leider keine Lösung gebracht - Alle Bibliotheken wurden anstandslos akzeptiert. Ausserdem bin ich zwischenzeitlich auch auf Teile des Programms gestoßen, die ebenfalls die Aktion auslösen. Es deutet also alles darauf hin, dass Programmcode das ganze auslöst. Als nächstes (leider erst morgen), werde ich versuchen, den Programmcode nach Excel-VBA zu portieren und dadurch die Installationsroutine (hoffentlich) auslösen (ohne acad.exe). Viele Grüsse
Martin ------------------ ACAD Map2006 3D, XP Prof. SP2 ACAD Map2010 3D, XP Prof. SP2 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Stelli1 Moderator Verm.-Ing.
Beiträge: 1526 Registriert: 17.08.2005 Map 2000-2014, Rasterdesign, MapGuide, Autodesk Topobase, VS6, VS.net 2013
|
erstellt am: 05. Mai. 2009 09:31 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
Hallo Martin, leider habe ich im Moment noch nicht die 2010 Version im Einsatz. Kenne das Problem aber von anderen Installationen. Das Problem trat auf, wenn AutoCAD als Administrator installiert wurde. Beim Anwender kamen dann entsprechende Fehlermeldungen. Es half die VBRuntime Module (von Microsoft) neu zu installieren. Scheinbar hat der angemeldete User dann keinen oder unzureichenden Zugriff auf die Registrierung der Module. Wilfried Stelberg ------------------ Warum lisp'eln wenn's auch anders geht. www.ib-stelberg.de Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MartinM Mitglied
Beiträge: 122 Registriert: 27.11.2001
|
erstellt am: 06. Mai. 2009 08:45 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, Die Installation wurde unter dem gleichen Benutzer (Hauptbenutzer)ausgeführt, wie jetzt das Testen. Ich habe das Problem jetzt aber eingrenzen können. Es liegt am "CommonDialog". Alle Formulare, die diese ActiveX Komponente benutzen lösen das Problem aus. Die entsprechende Bibliothek (C:\windows\system32\COMDLG32.ocx) habe ich aber registriert und kann auch bei den Verweisen gewählt werden. Wenn ich nun das entsprechende Steuerelement in Excel-VBA einfüge, kommt wieder der Dialog "Bitte warten, bis Windows AutoCAD 2010 ...." Weil acad.exe nicht benutzt wird folgt: "Die Funktion, die Sie verwenden möchten, befindet sich auf einer CD-ROM: Legen Sie den Datenträger AutoCAD Map 3D 2010 ein" Ich dachte schon "SUPER", doch nach dem Einlegen folgte: "Fehler 1305. Fehler beim Lesen von Datei .....\A66National(13.09.01).gsb" Jetzt werde ich mal unsren Dealer befragen. Viele Dank für die Unterstützung. Martin Wenn ich nun in Excel ein der
------------------ ACAD Map2006 3D, XP Prof. SP2 ACAD Map2010 3D, XP Prof. SP2 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
MartinM Mitglied
Beiträge: 122 Registriert: 27.11.2001 ACAD Map2015 3D, W7 x64 Prof. SP3
|
erstellt am: 20. Mai. 2009 09:31 <-- editieren / zitieren --> Unities abgeben:
Hallo zusammen, es gibt eine Lösung, die so einfach ist, dass man es kaum glauben kann: Den folgenden Ordner inkl. Inhalt kopieren und an gleicher Stelle wieder einfügen C:\Dokumente und Einstellungen\All users\Anwendungsdaten\Autodesk\Geospatial Coordinate Systems Dann die Kopie des Ordners umbenennen (Temp an den Ordnernamen anhängen) in C:\Dokumente und Einstellungen\All users\Anwendungsdaten\Autodesk\Geospatial Coordinate Systems Temp Total verrückt, aber es funktioniert! Viele Grüsse Martin ------------------ ACAD Map2006 3D, XP Prof. SP2 ACAD Map2010 3D, XP Prof. SP2 Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
weischenbergm Mitglied Bauzeichner Tiefbau / Abwassertechniker
Beiträge: 3 Registriert: 15.02.2006
|
erstellt am: 01. Mrz. 2010 14:14 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
|
Soldnerkugel Mitglied
Beiträge: 131 Registriert: 29.01.2010 Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE
|
erstellt am: 19. Apr. 2010 16:01 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
kann mir jemand bei folgendem Problem helfen? wenn ich ein Makro in AutoCad Civil 3D 2010 lade, dann mache ich das mit dem Befehl "vbaload". So weit - so gut. wenn ich ein Makro laufen lassen will, dann benutze ich den Befehl "vbarun", nur dass da bei manchen Makros dann das Makro nicht in der Auswahl erscheint (Bild: vbarun_b), es müsste eigentlich namentlich erscheinen und dann mit dem Button "ausführen" ausführbar sein. es erscheint aber nicht, ich kann es nur starten, wenn ich den VBA-Editor öffne und dann den "Play"-Pfeil drücke. weiß jemand woran das liegt? es scheint so, als ob dieses Problem "ältere" Makros nicht betrifft (ein auf AutoCAD 2005 erstelltes Makro läuft problemlos mit "vbarun". was muss ich machen, damit auch mein "aktuelles" Makro wie gewohnt in der Liste erscheint, so dass ich es mit vbarun laufen lassen kann? ------------------ http://www.stupidedia.org/stupi/Rechter_Winkel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 19. Apr. 2010 16:59 <-- editieren / zitieren -->
Hi, fehlt jetzt nur noch ein Screenshot, aus welchem ersichtlich wird, wo und wie diese Makros, die nicht angezeigt werden, definiert sind. Das könnte z.B. sein, wenn diese Private definiert sind, oder wenn diese nicht als Sub, sondern als Function definiert sind, oder .... - alfred - ------------------ www.hollaus.at |
Soldnerkugel Mitglied
Beiträge: 131 Registriert: 29.01.2010 Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE
|
erstellt am: 20. Apr. 2010 16:04 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
Hallo Alfred, (an dir komm' ich anscheinend in diesem Forum einfac nicht vorbei ) ich steh' da jetzt ehrlich gesagt etwas auf dem vielbesagten Schlauch, da mir neu ist, dass ich ein Makro "Private" definieren kann oder als "Sub" oder als "Function". Ich habe bisher ehrlich gesagt nur ein einziges Makro selber programmiert, noch dazu ein eher einfaches. Jetzt bin ich aktuell mit einem etwas größeren Makro beschäftigt, bin da also (noch) kein Experte (evtl. werd' ich auch keiner). Wie definiere ich denn ein Makro als Private, Sub, Function o. ä.? evtl' hab ich das ja gemacht, ohne es zu wissen. Von daher kann ich dir da auch nicht mit einem screenshot dienen, ich weiß ja nicht von was ich einen screenshot machen soll. ------------------ http://www.stupidedia.org/stupi/Rechter_Winkel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
gerhard123 Mitglied techn.Angestellter
Beiträge: 151 Registriert: 29.11.2007
|
erstellt am: 20. Apr. 2010 16:30 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
|
runkelruebe Ehrenmitglied V.I.P. h.c. Straßen- / Tiefbau
Beiträge: 8086 Registriert: 09.03.2006 sw: Win7-x64 Office 365 ProPlus C3D (& LT ) ET; DACH; Extensions ------------------- hw: FX3800 i5 CPU 670 8GB RAM
|
erstellt am: 20. Apr. 2010 16:34 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
|
Soldnerkugel Mitglied
Beiträge: 131 Registriert: 29.01.2010 Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE
|
erstellt am: 20. Apr. 2010 16:46 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
@gerhard123: das hat mir weitergeholfen, dachte nicht, dass das solche Auswirkungen haben kann dachte dieses "Private Sub" hat nur programmintern Auswirkungen, dass das gleich die Ausführung im "Makro-Menü" verhindert, ist ja krass (zumindest aus meiner Sicht...aus eurer wohl weniger ) @runkelruebe: die meisten dieser Tutorials kenne ich schon, trotzdem danke für den Link ------------------ http://www.stupidedia.org/stupi/Rechter_Winkel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Soldnerkugel Mitglied
Beiträge: 131 Registriert: 29.01.2010 Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE
|
erstellt am: 12. Mai. 2010 13:14 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
Hallo zusammen, ich hab' mal wieder ein Problem: Ich habe also in Civil3D ein DGM, für eine Überprüfung von Höhen lese ich XYZ-Koordinaten ein. Für jede XY-Koordinate möchte ich nun den Höhenwert im DGM abgreifen (um ihn daraufhin mit dem eingelesenen Z-Wert aus der Koordinatendatei zu vergleichen). Ich bin auf https://discussion.autodesk.com/forums/thread.jspa?threadID=760988 "fündig" geworden (auch wenn es sich da um LandDesktop handelt) und habe das für meine Belange umgeschrieben, bekomme allerdings schon bei "Dim objSurf As AeccSurface" einen Fehlermeldung: "benutzerdefinierter Typ nicht definiert" hängt das damit zusammen, dass ich zusätzliche Objektbibliotheken für Civil3D nicht eingebunden habe? (wie z.B. hier http://www.civil3d.com/2009/05/setting-up-a-civil-3d-vba-project/ rel. am Ende beschrieben) Würde das ja gerne machen, nur leider sind die bei mir nicht vorhanden ------------------ http://www.stupidedia.org/stupi/Rechter_Winkel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 12. Mai. 2010 13:28 <-- editieren / zitieren -->
Hi, neue Frage ==> neuer Thread (BITTE ) >> hängt das damit zusammen, dass ich zusätzliche Objektbibliotheken >> für Civil3D nicht eingebunden habe?
Genau erkannt. >> Würde das ja gerne machen, nur leider sind die bei mir nicht vorhanden
Wenn Du im VBA-Editor ==> Extras ==> Verweise startest, bekommst Du eine Liste der auf Deinem System definierten COM-Objekte, ist da z.B. 'Autodesk Civil Engineering 7.0 UI Land Object Library' nicht vorhanden, ist Dein Civil nicht komplett installiert (oder Zugriffsrechte auf Deinem System stark begrenzt). - alfred - ------------------ www.hollaus.at |
Soldnerkugel Mitglied
Beiträge: 131 Registriert: 29.01.2010 Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE
|
erstellt am: 12. Mai. 2010 14:24 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
Hallo Alfred, gut, in Zukunft neuer Thread, dachte nur, dass das hier reinpasst, weil's weniger ein Problem des Quelltextes war/ist als ein Problem mit Einstellungen unter C3D 2010. Ich habe diese Bibliotheken gefunden (hab' vorher wohl nur vorbeigescrollt) und eingebunden. Die Dim-Deklaration der Oberfläche als as AeccSurface (Dim objSurf as AeccSurface) ist jetzt kein Fehler mehr, in der nächsten Zeile jedoch deklariere ich "Dim proj As AeccProject" und erhalte da nun eine Fehlermeldung, hier mal ein bisschen mehr Quelltext: Dim varPkt(0 To 1) As Double Dim dblElev As Double Dim objSurf As AeccSurface Dim proj As AeccProject Dim DeltaH As Double Dim objLayer As AcadLayer Dim objMark As AcadBlock Dim dblOrigin(0 To 2) As Double Dim startPkt(0 To 2) As Double Dim endPkt(0 To 2) As Double Dim objBlockRef As AcadBlockReference Dim dblInsPkt(0 To 2) As Double ich hab' da jetzt schon den Verdacht, dass man da wieder eine andere Bibliothek einbinden muss...falls dem so sein sollte: woher weiß ich denn, was in welchen Bibliotheken enthalten ist?? ------------------ http://www.stupidedia.org/stupi/Rechter_Winkel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 12. Mai. 2010 14:48 <-- editieren / zitieren -->
Hi, wenn der Objekttyp 'AeccProject' heisst, dann guck mal in den verweisen, was mit diesen 4 Buchstaben 'Aecc' beginnt und mach ein Hakerl. Du kannst auch mal bei allem, was mit
beginnt, ein Hakerl machen, dann guckst Du in den Projektbrowser, was wo enthalten ist. Am Ende der Entwicklung nimmst Du raus, was Du nicht brauchst. - alfred - ------------------ www.hollaus.at |
Soldnerkugel Mitglied
Beiträge: 131 Registriert: 29.01.2010 Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE
|
erstellt am: 12. Mai. 2010 15:11 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
hilft leider alles nix, eine Bibliothek konnte ich nicht wählen "ACADProject", da bekomme ich immer die Fehlermeldung "Automatisierungsfehler Unbekannter Fehler", sonst habe ich alles, was nur im entferntesten irgendwie "ACAD", "Aecc" usw. ähnelt aktiviert. Gibt es da denn keine andere Möglichkeit, auf die DGM-Daten zuzugreifen? ich habe jetzt folgenden Quelltext Dim varPkt(0 To 1) As Double Dim dblElev As Double Dim objSurf As AeccSurface (Dim proj As AeccProject) Dim DeltaH As Double Dim objLayer As AcadLayer Dim objMark As AcadBlock Dim dblOrigin(0 To 2) As Double Dim startPkt(0 To 2) As Double Dim endPkt(0 To 2) As Double Dim objBlockRef As AcadBlockReference Dim dblInsPkt(0 To 2) As Double (Set proj = AeccApplication.ActiveProject) Set objSurf = (proj.)Surfaces.Item(proj.Surfaces.CurrentSurface) was in Klammern steht, müsste auf jeden Fall mal rausfliegen, weil ich's ja nicht verwenden kann, gibt es denn da keine andere Möglichkeit auf die "Surfaces" in einer Zeichnung zuzugreifen? also ThisDrawing.Surfaces.Item(etc) funktioniert schonmal nicht
------------------ http://www.stupidedia.org/stupi/Rechter_Winkel Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP |
Ex-Mitglied
|
erstellt am: 12. Mai. 2010 15:14 <-- editieren / zitieren -->
Hi, lad mal bitte das DVB-File hier herauf (ZIP und upload) - alfred - ------------------ www.hollaus.at |
Ex-Mitglied
|
erstellt am: 12. Mai. 2010 17:02 <-- editieren / zitieren -->
Hi, ich hab jetzt (Übermittlung Code per PM) folgendes geändert: Code: Dim tAeccApp As Object Set tAeccApp = ThisDrawing.Application.GetInterfaceObject("AeccXUiLand.AeccApplication.7.0") Dim tAeccDoc As Object Set tAeccDoc = tAeccApp.ActiveDocument Set objSurf = tAeccDoc.Surfaces.Item("DGM1") 'ein ActiveSurface gibt es IMHO nicht, darum DGM-Name
Du kannst erkennen, dass ich dabei auf LateBinding gegangen bin, damit brauchst Du eigentlich nur mehr die Version '7.0' anpassen auf Deine Civil-Version. Hoffe, Du kommst so weiter, - alfred - ------------------ www.hollaus.at |
Soldnerkugel Mitglied
Beiträge: 131 Registriert: 29.01.2010 Win 7, AutoCAD Civil 3D 2015, SketchUp, CarlsonSurvCE
|
erstellt am: 12. Mai. 2010 17:06 <-- editieren / zitieren --> Unities abgeben: Nur für MartinM
|
| Anzeige.:
Anzeige: (Infos zum Werbeplatz >>)
|