PDF speichern/nicht ersetzen
#1
Moin Mädel`s,
mein ziel ist es als PDF zu speichern (1N***) falls die Datei schon besteht (2N***)

die folgenden CODE`S funktionieren nur bedingt.
beide erkennen die vorhandene Datei nicht.
vielleicht findet jemand den Fehler oder hat ne neue Idee.


Code:
Sub druckenspeichern4608() ' druckt und Speichert als PDF

If Dir(ThisWorkbook.Path & "\1N" & Range("U25")) = "" Then  ' Speichert als PDF
   ChDir ThisWorkbook.Path
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\1N" & Range("U25"), Quality:=xlQualityStandard, _
   IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
    True
   MsgBox "gedruckt und als 1N******** gespeichert"
   GoTo DRUCK
   
End If

If Dir(ThisWorkbook.Path & "\2N") = "" Then
   ChDir ThisWorkbook.Path
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=ThisWorkbook.Path & "\2N" & Range("U25"), Quality:=xlQualityStandard, _
   IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
    True
   MsgBox "gedruckt und als 2N*** gespeichert"
   GoTo DRUCK
   
End If

DRUCK:
 MsgBox "druck"                         ' druckt
 ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
 IgnorePrintAreas:=False

End Sub

Code:
Sub test4608() ' druckt und Speichert als PDF

Dim Datei As String, Dat As String     
Dim Zähler As Long
Datei = ThisWorkbook.Path & "\#N" & Range("U25")

Do
   Dat = Replace(Datei, "#", IIf(Zähler = 0, "", Zähler))        ' Speichert als PDF
   If Dir(Dat) = "" Then
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Dat, Quality:=xlQualityStandard, _
   IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
   True
Exit Do
   End If
   Zähler = Zähler + 1
Loop

 MsgBox "druck"                         ' druckt
 ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True, _
 IgnorePrintAreas:=False

End Sub

schon mal im voraus danke für eure Mühe
Top
#2
Code:
Sub tes2()
Pfad = ThisWorkbook.Path & "\"

For Z = 1 To 10 'maximum möglich
   If Dir(Pfad & Z & "N" & Range("U25")) = "" Then
   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=Pfad & Z & "N" & Range("U25"), Quality:=xlQualityStandard, _
   IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
   True
       
Exit For
   End If
Next Z

End Sub
auch hierbei wird 1N*** einfach überschrieben aber kein 2N*** eröffnet.. Huh
Top
#3
Hallo,

vielleicht so:
If Dir(Pfad & Z & "N" & Range("U25").Value & "*") = "" Then
Gruß Uwe
Top
#4
Zitat:Hallo,

vielleicht so:
If Dir(Pfad & Z & "N" & Range("U25").Value & "*") = "" Then
Gruß Uwe
UWE.. du bist der Hammer :23: :23: :23: :23:
danke dir
Top
#5
mein Versuch war nicht so gut:

http://www.herber.de/forum/messages/1661505.html
Top
#6
im Prinzip hat uwe ihn ja nur "ergänzt" :100:
danke euch beiden..
ich suche mal neue Herausforderungen und produziere neue Fehler.. :21:

bis demnächst



*kann geschlossen werden
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste