05.10.2023, 11:34
Hallo Günther,
ich weiß nicht, wonach ich schauen sollte.
Wenn Du lieber das Makro aus Beitrag 12 benutzen willst, hier der Code:
Gruß
Koter
ich weiß nicht, wonach ich schauen sollte.
Wenn Du lieber das Makro aus Beitrag 12 benutzen willst, hier der Code:
Code:
Sub PNGExport()
Dim fso As Object
Dim D As Document, DNeu As Document
Dim L1 As Layer
Dim dn As String, DName As String, DPfad As String, DNeuDN As String
Dim EF As ExportFilter
Set fso = CreateObject("Scripting.FileSystemObject")
Set D = ActiveDocument
If ActiveDocument.Mask.IsEmpty Then
MsgBox "Bitte zuerst eine Maske erstellen !", vbCritical, "Fehlende Maske"
Exit Sub
End If
Set L1 = ActiveDocument.Layers.Add("Rest", , , pntCopySelection)
L1.Copy
L1.Delete
Set DNeu = CreateDocumentFromClipboard
If fso.FileExists(D.FullFileName) Then
DName = Left(D.FileName, Len(D.FileName) - 3) & "png"
DPfad = D.FilePath
DNeuDN = DPfad & DName
Else
If fso.FolderExists(Environ$("USERPROFILE") & "\Pictures") Then
DPfad = Environ$("USERPROFILE") & "\Pictures\"
DName = "Neu-" & Replace(Date, ".", "") & "" & Replace(Time, ":", "") & ".png"
DNeuDN = DPfad & DName
dn = CorelScriptTools.GetFileBox("PNG (*.png)|*.png", "Datei Speichern", 1, DName, ".png", DPfad)
If Trim(dn) = "" Then
DNeu.Dirty = False
DNeu.Close
Exit Sub
End If
End If
End If
Set EF = DNeu.SaveAs(DNeuDN, cdrPNG)
EF.Finish
D.Dirty = False
D.Close
Set fso = Nothing
End Sub
Gruß
Koter