Makro zum Löschen von Blatt2

Hallo

 

Ich möchte in der Lage sein, Blatt2 (falls vorhanden) in einer Zeichnung mit Hilfe eines Makros zu löschen. (SW2014)

Ich habe zuerst versucht, ein Makro aufzuzeichnen, aber es funktioniert nicht, dann habe ich viele Leads im Internet gefunden, aber keiner von ihnen funktioniert im Moment.

 

Hier ist ein Beispiel (nicht funktionsfähig) in 3D Content Central:

 

' Beispielmakro mit Beschreibungen zum Hinzufügen und Löschen von Zeichnungsblättern. Von Matthew Lorono, Copyright 2007 (fcsuper@aol.com)
' Als Beispiel stellt dieser Code für sich genommen keine übliche Funktion bereit.  Durch die Verwendung dieses Codes in irgendeiner Weise können der Benutzer und der Benutzer
' Alle Unternehmen, die der Benutzer vertritt, erklären sich damit einverstanden, den ursprünglichen Autor von jeglicher Haftung freizustellen.
' Die freie Verbreitung und Verwendung dieses Codes in anderen freien Werken ist willkommen.  Wenn ein Teil dieses Codes in anderen Werken verwendet wird, bitte nennen Sie bitte
' Der ursprüngliche Autor muss in diesem Werk an einem für den Benutzer sichtbaren Ort platziert werden.  Alle anderen Formen der Verbreitung (d.h. nicht frei) sind
" ohne ausdrückliche schriftliche Zustimmung des ursprünglichen Autors verboten ist.
' Vertrieb: http://sw.fcsuper.com

Dimmen swApp als Objekt
Teil als Objekt dimmen
Dim boolstatus als boolescher Wert

Sub main()

Legen Sie swApp = Application.SldWorks fest

Set Part = swApp.ActiveDoc

'Blatt hinzufügen
boolstatus = Part.NewSheet3("Bean", swDwgPaperCsize, swDwgTemplateCsize, 1, 1, False, 0, 0, 0, 0)

'Löschen Sie boolstatus für den nächsten Vorgang (der Löschvorgang funktioniert möglicherweise nicht ordnungsgemäß, während boolstatus = True)
boolstatus = Falsch

'Benutzereingabe (damit der Benutzer sehen kann, was passiert ist; nicht wesentlich für die Funktion dieses Makros)
MsgBox ("Was ist los?")

'Blatt auswählen
boolstatus = Part.Extension.SelectByID2("Bean", "SHEET", 0, 0, 0, False, 0, Nichts, 0)

'Blatt löschen
Part.EditDelete

Ende Sub

 

Wenn Sie im Voraus eine Idee haben, danken wir Ihnen.

Hallo

Wenn Sie Zugang zu MyCADTools-Tools haben, ermöglicht Ihnen INTEGRATION, dies zu tun (so scheint es mir).

Wenn nicht, warten Sie @.PL!

1 „Gefällt mir“

Nicht in der Integration zu finden, ermöglicht es Ihnen, eine Ebene, aber kein Blatt zu löschen.

Das Ziel ist es, dieses Makro in der Integration zu starten.

1 „Gefällt mir“

Damals dachte ich, dass es eine der möglichen Aktionen für mich war. Tut mir Leid.

Sie können dies wie folgt tun:

 

 

Legen Sie swApp = Application.SldWorks fest
Festlegen von swModel = swApp.ActiveDoc
Set swDrawing = swModel

swDrawing.ActivateSheet ("Blatt 2")

Legen Sie swSheet = swDrawing.GetCurrentSheet fest

 

sw-Modell verwenden. BearbeitenLöschen

 

1 „Gefällt mir“

Hallo

Wahrscheinlich müssen Sie "BLATT" durch "Blatt" oder eher durch "Blatt2" ersetzen.

Das ursprüngliche Makro funktioniert, wenn SolidWorks auf Englisch ist...

Zu Ihrer Information: Das 1. Makro hat das Blatt hinzugefügt, kann es aber nicht löschen.

Für das Makro von g.doyen dito

SW zeigt einen Tooltip an, in dem keines dieser Elemente gelöscht werden kann.

Ansonsten habe ich auch in den englischen Makros vergeblich versucht, durch Leaf oder Leaf2 zu ersetzen.

Sollen wir also das Blatt hinzufügen oder löschen? Oder einfach Blatt 2 nur löschen, wenn es existiert?

Blatt2 gelöscht, falls vorhanden.

1 „Gefällt mir“

Ok, also funktioniert der Makro-Anhang?


feuille2.txt

Leider nein, Kompilierungsfehler.

Hier ist der Siebdruck:

Da das Bild nicht toll ist

Es kommt zu Fehlern in dieser Zeile

Legen Sie swSheet = swDrawing.GetCurrentSheet fest

und genauer gesagt auf swDrawing (Variable nicht definiert)

In Eile gemacht und nicht getestet, muss es stattdessen swdraw sein.
1 „Gefällt mir“

Versuchen Sie, es durch SwDraw zu ersetzen;)

 

Übrigens, Ihr 2. Blatt wird notwendigerweise "Blatt2" heißen?

Für den Fehler, das ist richtig.

Tabelle2 wird aktiviert, aber das Fenster mit Keines dieser Elemente kann gelöscht werden wird wird weiterhin angezeigt... GRRR...

 

Ansonsten ist Sheet1 in unserer Herangehensweise immer die Laserebene und Sheet2 die Faltebene.

Ich hatte heute Abend Zeit, es zu testen und jetzt funktioniert es!

Ich habe das Makro in ein Tutorial auf Lynkoa eingebaut, ihr findet es hier:

http://www.lynkoa.com/tutos/macro-solidworks-supprimer-une-feuille-d-une-mise-en-plan-0

 

PS: Bitte wählen Sie diese Antwort als die beste!

1 „Gefällt mir“

Entschuldigung für die späte Antwort. Aber großes Netzwerkproblem heute Morgen.

Ich habe das letzte Makro getestet und es funktioniert super.

Auf der anderen Seite bricht das PDF-Format das Layout beim Kopieren und Einfügen vollständig.

Aber nichts Ernstes.

Vielen Dank an alle, die geholfen haben und insbesondere an .PL, die die beste Antwort verdient haben!

1 „Gefällt mir“
Vielen Dank. Für Ihr letztes Problem, das ich nicht verstanden habe, können Sie eine neue Frage öffnen, wenn Sie möchten.