Hot News aus dem CAD.de-Newsletter:

Mit Unterstützung durch:

  Foren auf CAD.de (alle Foren)
  SolidWorks
  Problem mit Makro DXF-abspeichern

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
Autor Thema:   Problem mit Makro DXF-abspeichern (1010 mal gelesen)
Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 23. Mai. 2017 10:23    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


ExportFlattodxf.zip

 
Hallo zusammen,

ich habe das (hoffentlich hats geklappt) angehängte, sonst unten aufgeführte Makro zum abspeichern aller Blechteile einer Baugruppe als DXF.
Das Makro wird in der Baugruppe aktiviert, frägt nach dem Zielspeicherort, in welches die Teile kommen sollen und legt, sobald der Pfad eingefügt ist, los.
Soweit so gut. Es erkennt alle als Blechteil hinterlegten Komponenten, inklusive der gespiegelten Teile.
Für unseren Laser dürfen wir (da 90ger Baujahr) nur die Außengeometrie und die Bibliotheksfeatures in der DXF haben. Biegelinien würden mitgelasert werden.
Die Bibliotheksfeatures sind bei uns die standardisierten Ausbrüche für z.B. Einziehmuttern o.ä. (Toolbox wird bei uns nicht verwendet)
Fast ganz unten findet sich die Beziehung zur Auswahl, was alles in der DXF abgespeichert werden soll: "options=17". Damit sind eigentlich alle Einstellungen komlett.
Das Makro läuft und bringt auch (im Idealfall als Nachtschicht laufen lassen) alle DXF in den Ordner
...
Bei der Kontrolle ist dann folgendes aufgefallen:
Alle Spiegelteile hatten die Bibliotheksfeatures und waren korrekt (ca. 5% der Teile sind Spiegelteile)
Die anderen 95% hatten keine Bibliotheksfeatures.

Ich finde einfach keinen Fehler, der das verursachen könnte. Evtl könnt ihr mir weiterhelfen.

Schonmal lieben Dank und Grüße

Carrest

PS: hier das Makro:

Sub main()
Dim swApp                      As SldWorks.SldWorks
Dim swmodel                    As SldWorks.ModelDoc2
  Set swApp = CreateObject("SldWorks.Application")
    Set swmodel = swApp.ActiveDoc
  Dim savepath As String
    savepath = InputBox("Where do you want to save?")

traverse swApp.ActiveDoc, savepath
End Sub
Function traverse(Pathname As ModelDoc2, savepath As String)


  Dim swApp                      As SldWorks.SldWorks
    Dim swComp                      As SldWorks.Component2
    Dim swmodel                    As SldWorks.ModelDoc2
    Dim vChildComp                  As Variant
    Dim swChildComp                As SldWorks.Component2
    Dim sPadStr                    As String
    Dim i                          As Long
    Dim swRootComp                  As SldWorks.Component2
    Dim swConf                      As SldWorks.Configuration
    Dim swConfMgr                  As SldWorks.ConfigurationManager
    Dim Part                        As Object
    Dim boolstatus                  As Boolean
    Dim longstatus                  As Long
    Dim longwarnings                As Long
    Dim assem                      As String
    Dim part1                      As String
    Dim Foldername                  As String
    Dim PathLength                  As Variant
    Dim Filepath                    As String
    Dim Filename                    As String
   
   
   
    Set swApp = CreateObject("SldWorks.Application")
    Set swmodel = Pathname
    Set Part = swmodel
    Set swConfMgr = swmodel.ConfigurationManager
    Set swConf = swConfMgr.ActiveConfiguration
    Set swRootComp = swConf.GetRootComponent3(True)
 
    vChildComp = swRootComp.GetChildren
        For i = 0 To UBound(vChildComp)
            Set swChildComp = vChildComp(i)
     
        Set swmodel = swChildComp.GetModelDoc2
     
        If Not swmodel Is Nothing Then

     
            If swmodel.GetType = 2 Then
         
                traverse swmodel, savepath
            Else
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
                'Place what you want to run on each part here this is an example that will save all parts as an stl
  flat swmodel, savepath
'Debug.Print swmodel.GetPathName
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            End If
End If

         
         
     
    Next i

End Function

Public Function GetTitle(Path As String)
Dim path1 As Variant
Dim title As String

path1 = Split(Path, "\")
title = path1(UBound(path1))
GetTitle = Left(title, InStr(title, ".") - 1)

End Function

Sub flat(swmodel As SldWorks.ModelDoc2, savepath As String)
 
 
  Dim swApp                          As SldWorks.SldWorks

 
Set swApp = CreateObject("SldWorks.Application")
  'Set swmodel = swApp.ActiveDoc
Dim swfeat As SldWorks.Feature
Set swfeat = swmodel.FirstFeature
Dim swflat As SldWorks.Feature

Dim swsubfeat As SldWorks.Feature
'Do Until UCase(swfeat.Name) = "ORIGIN"

              '  swfeat = swfeat.GetNextFeature
               

          '  Loop

  Do While Not swfeat Is Nothing

  If swfeat.GetTypeName = "FlatPattern" Then
    'MsgBox swfeat.Name & "  " & swfeat.GetTypeName

Set swflat = swfeat
  swfeat.Select (True)
  swmodel.EditUnsuppress2
 
  dxf swmodel, savepath

  swflat.Select (True)
  swmodel.EditSuppress2
  End If
              Set swfeat = swfeat.GetNextFeature

                Loop

' largest
 
End Sub
Public Function dxf(swmodel As SldWorks.ModelDoc2, savepath As String)
Dim swApp As SldWorks.SldWorks

Dim swPart As SldWorks.PartDoc

Dim sModelName As String

Dim sPathName As String

Dim varAlignment As Variant

Dim dataAlignment(11) As Double

Dim varViews As Variant

Dim dataViews(1) As String

Dim options As Long


Set swApp = Application.SldWorks
swApp.ActivateDoc swmodel.GetPathName

If swmodel.GetBendState <> 2 Then
Exit Function
End If

sModelName = swmodel.GetPathName

sPathName = swmodel.GetPathName

sPathName = Left(sPathName, Len(sPathName) - 6)

sPathName = sPathName + "dwg"

Set swPart = swmodel

dataAlignment(0) = 0#

dataAlignment(1) = 0#

dataAlignment(2) = 0#

dataAlignment(3) = 1#

dataAlignment(4) = 0#

dataAlignment(5) = 0#

dataAlignment(6) = 0#

dataAlignment(7) = 1#

dataAlignment(8) = 0#

dataAlignment(9) = 0#

dataAlignment(10) = 0#

dataAlignment(11) = 1#

varAlignment = dataAlignment

dataViews(0) = "*Current"

dataViews(1) = "*Front"

varViews = dataViews

'Export each annotation view to a separate drawing file

'swPart.ExportToDWG sPathName, sModelName, 3, False, varAlignment, False, False, 0, varViews

'Export flat pattern of the sheet metal to a single drawing file

options = 17    '0010001 - include flat pattern geometry and "Bibliotheks-Features"
a = swmodel.GetPathName
CText = Split(a, "\")

w = CText(UBound(CText))

w = Left(w, InStr(w, ".") - 1)

Path = savepath & "\Abwicklung-" & swmodel.GetTitle & ".dxf"
Debug.Print Path
swPart.ExportToDWG Path, sModelName, 1, True, varAlignment, False, False, options, Null

Debug.Print "Inspect DWG files in " + Left(sPathName, Len(sPathName) - 16)


swApp.CloseDoc (swmodel.GetPathName)
End Function


------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

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

bk.sc
Ehrenmitglied
Maschinenbautechniker


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

Beiträge: 1913
Registriert: 18.07.2012

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

erstellt am: 23. Mai. 2017 10:48    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 Carrest94 10 Unities + Antwort hilfreich

Hallo Carrest,

"options=17" müsste "options=33" sein, weil du brauchst 0100001 nicht 0010001 (die 6. Stelle ist Bibliotheksfeature die 5. ist verschmelzen von koplanaren Flächen)

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 23. Mai. 2017 11:00    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 Bernd,

vielen Dank für die schnelle Hilfe. Es klappt endlich.
Hatte zwar gefunden wie der Binärcode sich zusammensetzt, aber dann wohl diesen wichtigen Punkt überlesen.

Liebe Grüße
Carrest

------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

[Diese Nachricht wurde von Carrest94 am 01. Jun. 2017 editiert.]

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 01. Jun. 2017 10:49    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 zusammen,

danke nochmal für die Hilfe. Es bezieht sich immernoch auf das oben genannte Makro

1.)
als kleinen Nachtrag würde ich gerne in die Schleife eine Routine einbauen, welche Gleichteile erfasst (gleicher Dateiname/Pfad) und diese dann überspringt. Zum Teil haben wir 50x das gleiche Blechteil verwendet, und jedesmal wird es extra überspeichert --> Zeitreduktion!.

2.:
Desweiteren will ich dass auch die Zeichnung des Blechteils geöffnet wird und als PDF im selben Ordner abgespeichert wird.

Evtl habt ihr mir dazu ein paar Anregungen. Sei es ein "fertiges" Makro oder auch nur Ansätze welche Funktionen da notwendig wären.

Liebe Grüße
Carrest

------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

[Diese Nachricht wurde von Carrest94 am 01. Jun. 2017 editiert.]

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

Andi Beck
Ehrenmitglied
Konstrukteur


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

Beiträge: 1965
Registriert: 02.10.2006

Firma: SW 2017-5.0 Professional,
Windows 7 Pro 64bit, i7-2600K
3,4 GHz, 16 GbRAM, Quadro 2000
120GB SSD Extrememory XLR8 Plus
Home:
SW 2016-5.0
SW 2017-5.0
SW 2018-0.1
Windows 7 Home Premium 64bit,
i7-860, 3,2 GHz, 16 GbRAM, GeForce GTX 1050Ti
Samsung SSD 840EVO 250GB

erstellt am: 01. Jun. 2017 21: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 Carrest94 10 Unities + Antwort hilfreich

Zitat:
Original erstellt von Carrest94:

Evtl habt ihr mir dazu ein paar Anregungen. Sei es ein "fertiges" Makro oder auch nur Ansätze welche Funktionen da notwendig wären.


Hallo,
evtl. magst du ja mal in meinem Makro rumstöbern.

http://ww3.cad.de/foren/ubb/Forum2/HTML/022358-2.shtml#000075

Darin ist unter anderem auch eine Routine drinnen, welche Doubletten erkennt und unberücksichtigt lässt.

Grüße, Andi

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 02. Jun. 2017 09:48    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 Andi,

danke für den Link. Deinen Beitrag hatte ich auch schon vorher gefunden, bin nur ein wenig überfordert mit der Fülle des Codes.
Definitiv genial ausgefüllt mit Kommentaren und sehr Übersichtlich gestaltet.
Bin leider noch Anfänger und daher brauchts länger  

Vorrangige Prio hat #2 mit dem PDF abspeichern.


Gruß
Carrest

------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

[Diese Nachricht wurde von Carrest94 am 08. Jun. 2017 editiert.]

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

Eman1
Mitglied
Maschinenbau Ingenieur


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

Beiträge: 32
Registriert: 22.02.2007

SW 2016 SP4, WIN 7 X64, NVIDIA K2000D, INVENTOR 2010, PAC4SW, TOTAL COMMANDER 8.51

erstellt am: 07. Aug. 2017 12:34    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 Carrest94 10 Unities + Antwort hilfreich

Hallo,

Hier ist ein Auszug vom Web. Da kann man ganz einfach den Teil den du brauchst wiederverwenden. Note: All credits go to original owner.
Use as learning tool only.

Option Explicit
'  This example is based on a tip by J.G. Hussey,
'  published in "Visual Basic Programmer's Journal"

Sub RemoveDuplicates()
    Dim AllCells As Range, Cell As Range
    Dim NoDupes As New Collection
    Dim i As Integer, j As Integer
    Dim Swap1, Swap2, Item
   
'  The items are in A1:A105
    Set AllCells = Range("A1:A105")
   
'  The next statement ignores the error caused
'  by attempting to add a duplicate key to the collection.
'  The duplicate is not added - which is just what we want!
    On Error Resume Next
    For Each Cell In AllCells
        NoDupes.Add Cell.Value, CStr(Cell.Value)
'      Note: the 2nd argument (key) for the Add method must be a string
    Next Cell

'  Resume normal error handling
    On Error GoTo 0

'  Update the labels on UserForm1
    With UserForm1
        .Label1.Caption = "Total Items: " & AllCells.Count
        .Label2.Caption = "Unique Items: " & NoDupes.Count
    End With
   
'  Sort the collection (optional)
    For i = 1 To NoDupes.Count - 1
        For j = i + 1 To NoDupes.Count
            If NoDupes(i) > NoDupes(j) Then
                Swap1 = NoDupes(i)
                Swap2 = NoDupes(j)
                NoDupes.Add Swap1, before:=j
                NoDupes.Add Swap2, before:=i
                NoDupes.Remove i + 1
                NoDupes.Remove j + 1
            End If
        Next j
    Next i
   
'  Add the sorted, non-duplicated items to a ListBox
    For Each Item In NoDupes
        UserForm1.ListBox1.AddItem Item
    Next Item

'  Show the UserForm
    UserForm1.Show
End Sub

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 03. Jan. 2018 08:49    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 WBF

Ich hol den Beitrag einfach nochmal hoch, da ich nun etwas Zeit gefunden habe, an dem Makro zu arbeiten.

Ich möchte die oben genannte Programmschleife um folgenden Bereich zur PDF Speicherung erweitern die ersten 4 Zeilen sind noch von der public function, welche oben dargestellt ist, mit dem Zusatz zur nächsten Unterfunktion)

-----------------------------------------------------------------------------------------------------------

Debug.Print "Inspect DWG files in " + Left(sPathName, Len(sPathName) - 16)

pdf swmodel, savepath

swApp.CloseDoc (swmodel.GetPathName)
End Function


Public Function pdf(swmodel As SldWorks.ModelDoc2, savepath As String)

Dim swApp      As SldWorks.SldWorks
Dim doc        As SldWorks.ModelDoc2
Dim fileerror  As Long
Dim filewarning As Long
Dim Filename As Long

Filename = Path & swmodel.GetTitle & ".SLDDRW"
   
Set swmodel = swApp.OpenDoc6(Filename, swDoc, swOpenDocOptions_Silent, "", fileerror, filewarning)
           
swmodel.SaveAs (Path + swmodel.GetTitle + ".PDF")

swApp.CloseDoc (Filename)
       

End Function


------------------------------------------------------------------------------------------------------

Ich bekomme bei "Set swmodel = swApp.OpenDoc6" und der darauffolgenden variablendeklaration immer Fehler ...
Hat mir hier jemand eine Hilfestellung, oder eine andere Lösung?
ggf. noch mit einer Abfrageroutine, falls es die Zeichnung nicht gibt, dass diese Zeichnung einfach übersprungen wird.
Ich muss sowieso danach eine Excel-Stückliste anfertigen, wo ich die dxf und pdf vergleiche und fehlende Dateien dann nachziehe.

Wäre echt super  .

Liebe Grüße
Carsten

------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

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

bk.sc
Ehrenmitglied
Maschinenbautechniker


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

Beiträge: 1913
Registriert: 18.07.2012

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

erstellt am: 03. Jan. 2018 14:06    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 Carrest94 10 Unities + Antwort hilfreich

Hallo Carsten,

versuchen wir erstmal die 1. Baustelle zu lösen bevor wie die zweite angehen mit dem überspringen bei nicht vorhanden sein.

Welchen Wert hast du swDoc zugewiesen bzw. ist das überhaupt eine Variable die irgendwo deklariert ist? Weil wenn nicht könnte ich mir vorstellen das swDoc den Wert Empty bzw. "0" zugewiesen bekommt und SWX an dieser Stelle dann nichts mit dem Wert anfangen kann. Hast du mal swDocDRAWING statt swDoc versucht?

Kannst du auch gleich mal checken ob die Variable "Path" mit Inhalt in der Funktion ankommt, weil ich denke die Variable könnte leer sein wenn diese nicht Global für das Modul deklariert ist.

Versuch dir bitte auch gleich abzugewöhnen eine Function zu nutzen wenn eine Sub ausreicht und erst Recht keine Public Function.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete  

[Diese Nachricht wurde von bk.sc am 03. Jan. 2018 editiert.]

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 03. Jan. 2018 15: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

Hallo bk.sc,

Du hast natürlich Recht, dass ich da einige Sachen überschnell und falsch zusammen geschustert habe.
Meine Kenntnisse in VBA beschränken sich auf Copy and Paste und Try and Error zu 99,9% ... entsprechend hangel ich mich mit den hier zu findenden Makros und "VBA für Dummies" durch diese Alien-Welt ...


Was ich bemerkt habe ist, dass selbst wenn alles funktionieren würde, das Makro nie eine Zeichnung finden würde, da savepath der Zielpfad ist, in welchem gespeichert werden soll.

Ich formuliere erstmal mein angestrebtes Ziel:

Sub pdf
- den Pfad + Titel des geöffnteten Einzelteils (Blech) auslesen
- da Zeichnung und Einzelteil im selben Ordner und Dateibezeichnung gespeichert ist, die Dateiendung ersetzen zu .sldrw
- die Zeichnung öffnen
- die Zeichnung als PDF im savepath abspeichern
- die Zeichnung schließen
- sollte keine Zeichnung zu finden sein, end sub
End Sub

Ein Makro zum speichern einer geöffneten Zeichnung als PDF hab ich, ich brauche halt zwingend die Zeichnung von dem zuvor als dxf abgespeichertem Blech geöffnet.
Dann kann ich das Makro über call laufen lassen und muss dann die Zeichnung noch schließen.

swDoc war garnicht deklariert, entsprechend ist da der erste Fehler ...
Path wurde in der Public Function davor schon verwendet, ich weiß nicht, ob das iwie kollidiert und einen Fehler verursacht...
Wie gesagt C&P ... die PublicFunction war kopiert und dann nicht weiter nachgedacht, aber natürlich hast du Recht, dass eine Sub vollkommen ausreicht

Falls jemand da die Muse hat, mir da n Code hinzuwerfen, sehr gerne, ich versuche erstmal weiterhin mein Glück und falls ich irgendwann nicht weiterkomme, kommt halt wieder ein unqualifizierter Code-Schnipsel, für euch zum korrigieren 

Gruß

Carsten

------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 04. Jan. 2018 10:49    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


Test-ExportFlattodxf-PDF.swp.txt

 
Hallo zusammen,

Ich hab n bissl weiter rumgespielt und hänge nun an dem

Set swmodel = swApp.OpenDoc6(MetalDrawing, swDocDRAWING, swOpenDocOptions_Silent, "", CloseErrors, CloseWarnings)  'öffnet Zeichnung zu Blechteil

Hier kommt immer der Fehler: Laufzeitfehler '91': Objektvariable oder With-Blockvariable nicht festgelegt ... bin da voll überfragt

Ich hab echt vieles Versucht, alle Variablen deklariert (zumindest glaub ich das), bin aber nicht weitergekommen...

Gleicher Fehler kommt, wenn ich nach den ganzen Dim Deklarationen ein 'Set swmodel = swApp.ActivDoc' einsetze ... Dann erscheint der Fehler dort ...

Anbei mein ein wenig optimierter Code ...

Sub main()
Dim swApp                      As SldWorks.SldWorks
Dim swmodel                    As SldWorks.ModelDoc2
  Set swApp = CreateObject("SldWorks.Application")
    Set swmodel = swApp.ActiveDoc
  Dim savepath As String
    savepath = InputBox("Where do you want to save?")

traverse swApp.ActiveDoc, savepath
End Sub
Function traverse(Pathname As ModelDoc2, savepath As String)


  Dim swApp                      As SldWorks.SldWorks
    Dim swComp                      As SldWorks.Component2
    Dim swmodel                    As SldWorks.ModelDoc2
    Dim vChildComp                  As Variant
    Dim swChildComp                As SldWorks.Component2
    Dim sPadStr                    As String
    Dim i                          As Long
    Dim swRootComp                  As SldWorks.Component2
    Dim swConf                      As SldWorks.Configuration
    Dim swConfMgr                  As SldWorks.ConfigurationManager
    Dim Part                        As Object
    Dim boolstatus                  As Boolean
    Dim longstatus                  As Long
    Dim longwarnings                As Long
    Dim assem                      As String
    Dim part1                      As String
    Dim Foldername                  As String
    Dim PathLength                  As Variant
    Dim Filepath                    As String
    Dim Filename                    As String
   
   
   
    Set swApp = CreateObject("SldWorks.Application")
    Set swmodel = Pathname
    Set Part = swmodel
    Set swConfMgr = swmodel.ConfigurationManager
    Set swConf = swConfMgr.ActiveConfiguration
    Set swRootComp = swConf.GetRootComponent3(True)
 
    vChildComp = swRootComp.GetChildren
        For i = 0 To UBound(vChildComp)
            Set swChildComp = vChildComp(i)
     
        Set swmodel = swChildComp.GetModelDoc2
     
        If Not swmodel Is Nothing Then

     
            If swmodel.GetType = 2 Then
         
                traverse swmodel, savepath
            Else
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
                'Place what you want to run on each part here this is an example that will save all parts as an stl
  flat swmodel, savepath
'Debug.Print swmodel.GetPathName
 
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
            End If
End If

         
         
     
    Next i

End Function

Public Function GetTitle(Path As String)
Dim path1 As Variant
Dim title As String

path1 = Split(Path, "\")
title = path1(UBound(path1))
GetTitle = Left(title, InStr(title, ".") - 1)

End Function

Sub flat(swmodel As SldWorks.ModelDoc2, savepath As String)
 
 
  Dim swApp                          As SldWorks.SldWorks

 
Set swApp = CreateObject("SldWorks.Application")
  'Set swmodel = swApp.ActiveDoc
Dim swfeat As SldWorks.Feature
Set swfeat = swmodel.FirstFeature
Dim swflat As SldWorks.Feature

Dim swsubfeat As SldWorks.Feature
'Do Until UCase(swfeat.Name) = "ORIGIN"

              '  swfeat = swfeat.GetNextFeature
               

          '  Loop

  Do While Not swfeat Is Nothing

  If swfeat.GetTypeName = "FlatPattern" Then
    'MsgBox swfeat.Name & "  " & swfeat.GetTypeName

 
Set swflat = swfeat
  swfeat.Select (True)
  swmodel.EditUnsuppress2
 
  dxf swmodel, savepath

  swflat.Select (True)
  swmodel.EditSuppress2
 
  pdf swmodel, savepath
 
  swApp.CloseDoc (swmodel.GetPathName)
 
  End If
              Set swfeat = swfeat.GetNextFeature

                Loop

' largest
 
End Sub
Public Function dxf(swmodel As SldWorks.ModelDoc2, savepath As String)
Dim swApp As SldWorks.SldWorks

Dim swPart As SldWorks.PartDoc

Dim sModelName As String

Dim sPathName As String

Dim varAlignment As Variant

Dim dataAlignment(11) As Double

Dim varViews As Variant

Dim dataViews(1) As String

Dim options As Long


Set swApp = Application.SldWorks
swApp.ActivateDoc swmodel.GetPathName

If swmodel.GetBendState <> 2 Then
Exit Function
End If

sModelName = swmodel.GetPathName

sPathName = swmodel.GetPathName

sPathName = Left(sPathName, Len(sPathName) - 6)

sPathName = sPathName + "dwg"

Set swPart = swmodel

dataAlignment(0) = 0#

dataAlignment(1) = 0#

dataAlignment(2) = 0#

dataAlignment(3) = 1#

dataAlignment(4) = 0#

dataAlignment(5) = 0#

dataAlignment(6) = 0#

dataAlignment(7) = 1#

dataAlignment(8) = 0#

dataAlignment(9) = 0#

dataAlignment(10) = 0#

dataAlignment(11) = 1#

varAlignment = dataAlignment

dataViews(0) = "*Current"

dataViews(1) = "*Front"

varViews = dataViews

'Export each annotation view to a separate drawing file

'swPart.ExportToDWG sPathName, sModelName, 3, False, varAlignment, False, False, 0, varViews

'Export flat pattern of the sheet metal to a single drawing file

options = 33    '0100001 - include flat pattern geometry and "Bibliotheks-Features"
a = swmodel.GetPathName
CText = Split(a, "\")

w = CText(UBound(CText))

w = Left(w, InStr(w, ".") - 1)

Path = savepath & "\Abwicklung-" & swmodel.GetTitle & ".dxf"
Debug.Print Path
swPart.ExportToDWG Path, sModelName, 1, True, varAlignment, False, False, options, Null

Debug.Print "Inspect DWG files in " + Left(sPathName, Len(sPathName) - 16)

End Function


Sub pdf(swmodel As SldWorks.ModelDoc2, savepath As String)

Dim swApp As SldWorks.SldWorks
Dim swDoc As String
Dim pFilepath As String
Dim pFilename As String
Dim MetalDrawing As String
Dim CloseErrors As Long
Dim CloseWarnings As Long
Dim Partpath As String
Dim PartName As String
Dim PDF_Pfad As String


Partpath = Left(swmodel.GetPathName, InStrRev(swmodel.GetPathName, "\"))

PartName = Left(swmodel.GetTitle, Len(swmodel.GetTitle))

MetalDrawing = Partpath & PartName & ".slddrw"      ' Pfad der zu öffnenden zeichnung, muss im gleichen Ornder wie Teil sein und selben Namen tragen

'MsgBox (MetalDrawing)  ' Kontrolle ob Dateipfad korrekt ... ich weiß, es gibt Debug.Print, dafür bin ich aber noch zu doof

' nachfolgend immer der Fehler: Laufzeitfehler '91': Objektvariable oder With-Blockvariable nicht festgelegt ... bin da voll überfragt

Set swmodel = swApp.OpenDoc6(MetalDrawing, swDocDRAWING, swOpenDocOptions_Silent, "", CloseErrors, CloseWarnings)  'öffnet Zeichnung zu Blechteil

If (swmodel Is Nothing) Or (swmodel.GetType <> swDocDRAWING) Then

Exit Sub    ' wenn Zeichnung nicht gefunden oder geöffnet bei nächstem Blech weiter machen

End If

Set swmodel = swApp.ActiveDoc  ' Kontrolle ob Zeichnung aktiv

Set swDraw = swmodel

' pFilepath = Left(swDraw.GetPathName, InStrRev(swDraw.GetPathName, "\"))

' pFilename = Left(swDraw.GetTitle, Len(swDraw.GetTitle) - 9) '

' PDF_Pfad = savepath & pFilename & ".pdf" ' Speicherpfad-Name für PDF

PDF_Pfad = savepath & PartName & ".PDF"

' MsgBox (PDF_Pfad)  ' Kontrolle ob Pfad korrekt

swDraw.SaveAs (PDF_Pfad) ' PDF speichern

swApp.CloseDoc (MetalDrawing) ' Zeichnung schließen

End Sub


Zum Test eine BG mit min. 1 Blech öffnen und Makro starten, Speicherpfad für DXF einfügen (hier kommen später auch die PDFs hin) und starten ...

Vielen lieben Dank für eure Hilfe ...

Verzweifelt und Ratlos

Carsten

------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

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

bk.sc
Ehrenmitglied
Maschinenbautechniker


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

Beiträge: 1913
Registriert: 18.07.2012

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

erstellt am: 04. Jan. 2018 13:22    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 Carrest94 10 Unities + Antwort hilfreich

Hallo Carsten,

Code:
PartName = Left(swmodel.GetTitle, Len(swmodel.GetTitle))

was soll den hier deiner Meinung nach bitte passieren, weil die Zeile macht so gar keinen sinn? Mit dieser Zeile schreibst du den Dokumenttitel 1:1 in die Variabele "PartName" ohne an der Rückgabe von swmodel.GetTitle was zu verändern d.h. je nach deinen Einstellungen im Windows Explorer bekommst du den Dateiname einmal mit und eimal ohne Endung als Rückgabewert. Hier würde ich dir eher folgende mögliche Variante empfehlen um unabhäng deiner Einstellung im Windows Explorer zu sein.
Code:
If InStrRev(swmodel.GetTitle, ".SLDPRT") > 1 Then
    PartName = Left(swmodel.GetTitle, InStrRev(swmodel.GetTitle, ".SLDPRT") - 1)
Else
    PartName = swmodel.GetTitle
End If

Dann setzt du noch nach deinen Deklarationen die Set-Anweisung für dein swApp Object und dann wird dir auch die PDF erstellt.

Code:
Set swApp = CreateObject("SldWorks.Application")

[EDIT]

Code:
PDF_Pfad = savepath & PartName & ".PDF"

solltest du auch noch in
Zitat:
PDF_Pfad = savepath & "\" & PartName & ".PDF"

änder, damit die PDF auch im richtigen Verzeichnis landet.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete   

[Diese Nachricht wurde von bk.sc am 04. Jan. 2018 editiert.]

[Diese Nachricht wurde von bk.sc am 04. Jan. 2018 editiert.]

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 04. Jan. 2018 14:07    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


ExportFlattoDXF-PDF.swp.txt

 
Hallo Bernd,

Vielen Dank für deine Hilfe, jetzt läuft es (mit Einschränkung s.u.). U's sind auf dem Weg

Ich stelle hier auch das laufende Makro rein, für alle, die was ähnliches brauchen  
Man muss zwingend die Speichereinstellungen für PDFs in SWX so eintellen, dass die PDF nach dem Speichern nicht geöffnet wird --> PDF kann nicht überschrieben werden, da das Makro Gleichteile mehrmals abspeichert und somit das Makro still steht, bis z.B. Adobe geschlossen wird!
Daran werde ich als nächstes arbeiten   

Zu 1. "PartName"
Hier kommt bei mir "Laufzeitfehler '5': Ungültiger Prozeduraufruf oder ungültiges Argument"
Das hatte ich zwischenzeitlich auch mal drin, aber dann eben gegen das reine swmodel.GetTitle ersetzt, da es so geklappt hatte.
Hier vielleicht noch ne Idee? Dann würde ich den Beitrag und das makro nachträglich noch editieren.

Zu 2. "Set swApp
Na klar, woher soll swApp seinen Bezug haben, ist ja nicht Global definiert  

Zu 3. PDF_Pfad
Stimmt, bei savepath wurde das "\" in der Eingabe ja ausgelassen, hätte ich wissen müssen

Vielen vielen Dank, hab durch dich viel dazugelernt ...

Gruß Carsten


------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

[Diese Nachricht wurde von Carrest94 am 04. Jan. 2018 editiert.]

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

bk.sc
Ehrenmitglied
Maschinenbautechniker


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

Beiträge: 1913
Registriert: 18.07.2012

HP Z400 Workstaion
CPU: Intel Xeon 6x 3,33GHz
GPU: NVIDEA Quadro 2000
RAM: 12 GB DDR3
Win 7 x64
CAD Hauptberuflich
-Solid Works 2014 SP4
-Creo Elements Direct Drafting (ME10)
DMS/PDM
-Pro.File V8 (8.4)
Simulation
-Simufact Forming 11.0
CAD Nebenberuflich
-Pro Engineer WF 3+4
-Creo Parametric 2.0

erstellt am: 04. Jan. 2018 14:16    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 Carrest94 10 Unities + Antwort hilfreich

Hallo Carsten,

hab das eben auch bemerkt, daher oben den Code noch mal korrigiert mit einer Fallunterscheidung.

Gruß
Bernd

------------------
--- Man muß nicht alles wissen, man muß nur wissen wo es steht ---

Staatlich anerkannte Deutschniete 

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

Carrest94
Mitglied
Konstrukteur


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

Beiträge: 14
Registriert: 11.05.2017

SolidWorks 2017
NVIDIA Quadro K4200
Intel i7-5930K

erstellt am: 04. Jan. 2018 14:32    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


ExportFlattoDXF-PDF-V1.1.swp.txt

 
Hallo Bernd,

danke für die schnelle Korrektur.

Hatte auch noch den Fall, dass eine fehlende Zeichnung nicht übersprungen wurde, sondern ein Bug hoch kam. Ist jetzt auch korrigiert.
Fehlende Zeichnungen werden nicht gezählt, sondern die Anzahl der PDFs und DXF muss einfach im Explorer verglichen werden.

DXF werden in Ihrer konstruierten x-Achse abgespeichert. Sollten hier Drehungen vorzusehen sein, kann das nachträglich in DraftSight passieren (mach ich auch so).

Was auch gesagt werden muss: Es werden nur Bleche behandelt! Sowohl für die DXF als auch für die dazugehörigen Zeichnungen!

Hier nun die V1.1.

Liebe Grüße

Carsten

------------------
Chef: Geht das auch etwas schneller?
Ich: Mein Gehaltsvolumen ist aufgebraucht, ich arbeite jetzt mit reduzierter Geschwindigkeit!

[Diese Nachricht wurde von Carrest94 am 04. Jan. 2018 editiert.]

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

Andi Beck
Ehrenmitglied
Konstrukteur


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

Beiträge: 1965
Registriert: 02.10.2006

Firma: SW 2017-5.0 Professional,
Windows 7 Pro 64bit, i7-2600K
3,4 GHz, 16 GbRAM, Quadro 2000
120GB SSD Extrememory XLR8 Plus
Home:
SW 2016-5.0
SW 2017-5.0
SW 2018-0.1
Windows 7 Home Premium 64bit,
i7-860, 3,2 GHz, 16 GbRAM, GeForce GTX 1050Ti
Samsung SSD 840EVO 250GB

erstellt am: 04. Jan. 2018 14:37    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 Carrest94 10 Unities + Antwort hilfreich

Hallo,
wegen der Einstellung im Windows Explorer verwende ich ungern den Befehl swmodel.GetTitle.

Als Alternative bietet sich der Weg über den kpl. Pfad.

Code:
'Dateiname ohne Pfad mit Extender
PartName = Mid(swmodel.GetPathName, InStrRev(swmodel.GetPathName, "\") + 1, Len(swmodel.GetPathName))
'Dateiname ohne Extender
PartName = VBA.Left(PartName, Len(PartName) - 7)

Das nur als Ergänzung.

Grüße, Andi

------------------
Hast du kein Problem?
Such dir eins. ( Und löse es )

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

Spirou85
Mitglied
Konstruktuer und CAD-Betreuer


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

Beiträge: 21
Registriert: 01.12.2014

Windows 7 64Bit SP1
SWX2017-64Bit-SP5.0
MaxxDB 2017 SP1.2

erstellt am: 08. Jan. 2018 13:32    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 Carrest94 10 Unities + Antwort hilfreich

Hallo Carsten,

bezüglich dem Öffnen des PDF nach dem Speichern:

Hiermit kann man die Funktion ausschalten
swApp.SetUserPreferenceToggle swPDFViewOnSave, False  'PDF nach speichern nicht öffnen

------------------
Viele Grüße aus Brackenheim

Lars Pauly

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)2018 CAD.de