Hot News:

Unser Angebot:

  Foren auf CAD.de (alle Foren)
  Inventor VBA
  Abfrage Speichern unter umgehen

Antwort erstellen  Neues Thema erstellen
CAD.de Login | Logout | Profil | Profil bearbeiten | Registrieren | Voreinstellungen | Hilfe | Suchen

Anzeige:

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen nächster neuer Beitrag | nächster älterer Beitrag
  
Gut zu wissen: Hilfreiche Tipps und Tricks aus der Praxis prägnant, und auf den Punkt gebracht für Autodesk Produkte
Autor Thema:  Abfrage Speichern unter umgehen (1680 mal gelesen)
fadeaway
Mitglied
Konstrukteur


Sehen Sie sich das Profil von fadeaway an!   Senden Sie eine Private Message an fadeaway  Schreiben Sie einen Gästebucheintrag für fadeaway

Beiträge: 46
Registriert: 20.07.2005

Win10 Pro 64bit/32GB
IV 2021.4.4

erstellt am: 07. Mrz. 2012 10:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo Forum,

mit unten stehendem Code (Speichern unter) exportiere ich die IDW als DXF. Es wird ja immer nachgefragt ob überschrieben werden darf wenn eine Datei bereits besteht. Nicht so toll, es soll immer überschrieben werden.

Bei der Suche im Forum bin ich nun darauf gestoßen:
ThisApplication.SilentOperation = True
ThisApplication.SilentOperation = False

Hab das mal im Macro ausprobiert, hat aber keine Wirkung gezeigt. Wie muss man das realisieren um die Abfrage zu umgehen?

Code:
Public Sub als_DXF_speichern()
Dim dDoc As DrawingDocument
Dim fso As Object

Dim oInvApp As Object
Set oInvApp = GetObject(, "Inventor.Application")


Set fso = CreateObject("Scripting.FilesystemObject")
Dim ret As Variant
Set dDoc = ThisApplication.ActiveDocument

If dDoc Is Nothing Then Exit Sub
If Len(Trim(dDoc.FullFileName)) > 0 Then
      outFile = fso.GetParentFolderName(dDoc.FullFileName) & "\" & fso.GetBaseName(dDoc.FullFileName) & ".dxf"

        dDoc.SaveAs outFile, True
Else
        MsgBox "Erst Speichern", vbInformation
End If

End Sub


Gruß
Andreas

[Diese Nachricht wurde von fadeaway am 07. Mrz. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


Sehen Sie sich das Profil von noctis79 an!   Senden Sie eine Private Message an noctis79  Schreiben Sie einen Gästebucheintrag für noctis79

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 19. Mrz. 2012 22:08    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für fadeaway 10 Unities + Antwort hilfreich

Probiers mal damit

Code:
If fso.FileExists(outfile) Then
    Kill (outfile)
End If

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

rkauskh
Moderator
Dipl.-Ing. (FH) Versorgungstechnik




Sehen Sie sich das Profil von rkauskh an!   Senden Sie eine Private Message an rkauskh  Schreiben Sie einen Gästebucheintrag für rkauskh

Beiträge: 2166
Registriert: 15.11.2006

Windows 10 x64, AIP 2022

erstellt am: 20. Mrz. 2012 20:39    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für fadeaway 10 Unities + Antwort hilfreich

Hi

Sollte sich über

Code:
ThisApplication.SilentOperation = True

erledigen lassen. Nicht vergessen es hinterher wieder abzuschalten.


------------------
MfG
RK

[Diese Nachricht wurde von rkauskh am 20. Mrz. 2012 editiert.]

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fadeaway
Mitglied
Konstrukteur


Sehen Sie sich das Profil von fadeaway an!   Senden Sie eine Private Message an fadeaway  Schreiben Sie einen Gästebucheintrag für fadeaway

Beiträge: 46
Registriert: 20.07.2005

Win10 Pro 64bit/32GB
IV 2021.4.4

erstellt am: 23. Mrz. 2012 09:47    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Hallo,

und danke für eure Antworten.

@noctis79
Könnte bei einem Blatt wohl funktionieren. Wenn es mehrere Blätter in einer IDW sind wird es schwierig.

@rkauskh
Wie im ersten Beitrag geschrieben habe ich es damit ja auch schon mal versucht. Leider hat es keinen Erfolg gebracht. Die Abfragen kamen trotzdem. Klappt es bei dir?

Gruß
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


Sehen Sie sich das Profil von noctis79 an!   Senden Sie eine Private Message an noctis79  Schreiben Sie einen Gästebucheintrag für noctis79

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 23. Mrz. 2012 09:50    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für fadeaway 10 Unities + Antwort hilfreich

Warum? Wie sind die Blätter dann benannt (im Bezug zum Namen der idw)?

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fadeaway
Mitglied
Konstrukteur


Sehen Sie sich das Profil von fadeaway an!   Senden Sie eine Private Message an fadeaway  Schreiben Sie einen Gästebucheintrag für fadeaway

Beiträge: 46
Registriert: 20.07.2005

Win10 Pro 64bit/32GB
IV 2021.4.4

erstellt am: 23. Mrz. 2012 10:29    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

@noctis
Nehmen wir mal an eine IDW heißt "123456 Platte". Habe ich die IDW offen dann steht in der Browserleiste "Blatt:1".
Füge ich ein Blatt 2 hinzu heißt dieses "Blatt:2". Exportiere ich nun die Blätter heißen die DXF "123456 Platte_Blatt1.dxf bzw. 123456 Platte_Blatt2.dxf".
Löschen soll er aber "123456 Platte.dxf" das gibt es ja aber in dem Fall nicht. Ändert jemand noch den Blattnamen in der IDW von "Blatt:2" auf "wassergestrahlt" etc. wird es noch vielfältiger.
Man müsste den Dateinamen bis vor "_Blatt1.dxf" vielleicht abfragen.

Gruß
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

noctis79
Mitglied
Konstrukteur/ CAD-Administrator


Sehen Sie sich das Profil von noctis79 an!   Senden Sie eine Private Message an noctis79  Schreiben Sie einen Gästebucheintrag für noctis79

Beiträge: 164
Registriert: 07.10.2009

Inventor Pro 2017
Cideon Workspace

erstellt am: 23. Mrz. 2012 11:05    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für fadeaway 10 Unities + Antwort hilfreich

Morgen!

Der "kill" Befehl unterstützt übrigens WildCards!
D.h. wenn Du alle dxf löschen möchtest die zur 123456 Platte.dxf gehören dann wäre der Aufruf kill ("123456 Platte*.dxf").

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



Sehen Sie sich das Profil von CAD-Huebner an!   Senden Sie eine Private Message an CAD-Huebner  Schreiben Sie einen Gästebucheintrag für CAD-Huebner

Beiträge: 9732
Registriert: 01.12.2003

AutoCAD 200x, Civil, LDD, MDT, ARD, ACA(ADT)
Inventor AIP 4-11,200x
WinXP, W2K

erstellt am: 23. Mrz. 2012 11:15    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für fadeaway 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von noctis79:
Morgen!

Der "kill" Befehl unterstützt übrigens WildCards!
D.h. wenn Du alle dxf löschen möchtest die zur 123456 Platte.dxf gehören dann wäre der Aufruf kill ("123456 Platte*.dxf").


Problem sehe ich da, wenn ein Bauteil/Zeichnung mal nur 1.idw genannt wird, da bei wird bei kill ("1*.dxf") dann vermutlich eine Menge gelöscht.

------------------
Mit freundlichem Gruß

Udo Hübner
www.CAD-Huebner.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fadeaway
Mitglied
Konstrukteur


Sehen Sie sich das Profil von fadeaway an!   Senden Sie eine Private Message an fadeaway  Schreiben Sie einen Gästebucheintrag für fadeaway

Beiträge: 46
Registriert: 20.07.2005

Win10 Pro 64bit/32GB
IV 2021.4.4

erstellt am: 23. Mrz. 2012 12:10    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Mir stellt sich die Frage warum

Code:
ThisApplication.SilentOperation = True
ThisApplication.SilentOperation = False

hier nicht funktioniert? Wäre doch die eleganteste Lösung!

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

CAD-Huebner
Ehrenmitglied V.I.P. h.c.
Verm.- Ing., ATC-Trainer



Sehen Sie sich das Profil von CAD-Huebner an!   Senden Sie eine Private Message an CAD-Huebner  Schreiben Sie einen Gästebucheintrag für CAD-Huebner

Beiträge: 9732
Registriert: 01.12.2003

AutoCAD 200x, Civil, LDD, MDT, ARD, ACA(ADT)
Inventor AIP 4-11,200x
WinXP, W2K

erstellt am: 23. Mrz. 2012 15:33    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities Nur für fadeaway 10 Unities + Antwort hilfreich

Eleganter wäre villeicht noch mit dem Translator Addin zu arbeiten.
Aus der Inventor COM API Reference (F1 im VBA Editor drücken) http://ww3.cad.de/foren/ubb/Forum258/HTML/001150.shtml
Da geht das Uberschreiben der DXF Datei ohne Rückfrage problemlos.
Du musst für das Beispiel nur einmal eine DXF Konfiguration gespeichert haben (als *.ini).

------------------
Mit freundlichem Gruß

Udo Hübner
www.CAD-Huebner.de

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

fadeaway
Mitglied
Konstrukteur


Sehen Sie sich das Profil von fadeaway an!   Senden Sie eine Private Message an fadeaway  Schreiben Sie einen Gästebucheintrag für fadeaway

Beiträge: 46
Registriert: 20.07.2005

Win10 Pro 64bit/32GB
IV 2021.4.4

erstellt am: 28. Mrz. 2012 12:46    Editieren oder löschen Sie diesen Beitrag!  <-- editieren / zitieren -->   Antwort mit Zitat in Fett Antwort mit kursivem Zitat    Unities abgeben: 1 Unity (wenig hilfreich, aber dennoch)2 Unities3 Unities4 Unities5 Unities6 Unities7 Unities8 Unities9 Unities10 Unities

Danke Udo,

hab es gerade testen wollen. Steigt mit Laufzeitfehler 438 in Zeile vier aus. Objekt unterstützt diese Eigenschaft oder Methode nicht.

Gruß
Andreas

Eine Antwort auf diesen Beitrag verfassen (mit Zitat/Zitat des Beitrags) IP

Anzeige.:

Anzeige: (Infos zum Werbeplatz >>)

Darstellung des Themas zum Ausdrucken. Bitte dann die Druckfunktion des Browsers verwenden. | Suche nach Beiträgen

nächster neuerer Beitrag | nächster älterer Beitrag
Antwort erstellen


Diesen Beitrag mit Lesezeichen versehen ... | Nach anderen Beiträgen suchen | CAD.de-Newsletter

Administrative Optionen: Beitrag schliessen | Archivieren/Bewegen | Beitrag melden!

Fragen und Anregungen: Kritik-Forum | Neues aus der Community: Community-Forum

(c)2023 CAD.de | Impressum | Datenschutz