SolidWorks Makro zum Hinzufügen von Zeichen am Anfang des zu sichernden Dateinamens

Hallo

Ich nehme die Fackel der Makrobearbeitung in meinem Job auf, aber ohne die Grundlagen in VBA, also mache ich vorerst hauptsächlich DIY/Anpassung statt Programmieren, und nach mehreren erfolglosen Suchen und Tests bin ich hier.

Das Problem ist einfach, heute behält mein PDF-Aufnahmemakro einfach den gleichen Dateinamen wie das DRW: 2263-4B.slddrw -> 2263-4B.pdf

Ich möchte, dass das Makro beim Generieren von PDFs automatisch Zeichen direkt vor dem Dateinamen hinzufügt, wie folgt: 2263-4B.slddrw -> CK-2263-4B.pdf

Nachfolgend finden Sie den Teil, der sich auf die Aufnahme im PDF-Format bezieht:

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

Sub main()

Dim swApp als SldWorks.SldWorks
Dim swModel As SldWorks.ModelDoc2
Dim PathName As String

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

    Wenn MsgBox("Möchten Sie als PDF speichern?", vbQuestion + vbJaNein, "PDF") = vbNein Dann
        MsgBox "Abgesagt", vbOKOnly, "PDF"
        Sub beenden
    Ende, wenn

    Pfadname = Mitte(swModel.GetPathName, 1, Len(swModel.GetPathName) - 7)

    swModel.SaveAs2 Pfadname & ".PDF", 0, Wahr, Falsch

Ende Sub

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

(Die Option "Code-Schnipsel einfügen" von Lynkoa hat meine Nachricht gestört)

Ich habe mehrere grundlegende Dinge ausprobiert, wie das Hinzufügen von "CK-" & direkt nach PathName = , aber ohne Erfolg. Hat jemand eine Lösung für dieses kleine Problem?

Vielen Dank im Voraus.

Hallo

Normalerweise:

Pfadname = Mitte(swModel.GetPathName, 1, Len(swModel.GetPathName) - 7)

Pfadname = "ck-" & Pfadname

 

Vielen Dank für Ihre Hilfe, leider scheint diese Methode hier nicht zu funktionieren, es wird kein pdf generiert, wenn ich das Makro mit diesem Zusatz starte.

Entschuldigung, falsch gelesen: 

PathName = Mid(swModel.GetPathName, 1, InStrRev(swModel.GetPathName, "\"))
FileName = Mid(swModel.GetPathName, InStrRev(swModel.GetPathName, "\") + 1)
FileName = Left(FileName, Len(FileName) - 7)
FileName = "CK-" & FileName
PathName = PathName & FileName
swModel.SaveAs2 PathName & ".PDF", 0, True, False


 

2 „Gefällt mir“

Toll, es funktioniert!

Nochmals vielen Dank.