Clever-Excel-Forum

Normale Version: Beim Ausdruck / Speichern als PDF soll Tabellenname als Speichername angeboten werden
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Hallo Daniel,

(24.09.2017, 10:13)Daniel Albert schrieb: [ -> ]
Code:
Sub SaveAsPDF()
Dim varFilename As Variant
Dim InitialFileName As Variant

Dim k As Long
For k = 22 To 37
If Worksheets("Kunden").Cells(k, 13).Text = "x" Then _
Worksheets("Kunden").Cells(k, 12).Text

InitialFileName = Worksheets("Kunden").Cells(k, 12).Text
varFilename = Application.GetSaveAsFilename( _
InitialFileName = Worksheets("Kunden").Cells(k, 12).Text _
& ".pdf")

'FileFilter:="PDF (*.pdf), *.pdf", _
'Title:="als PDF speichern")

If varFilename <> False Then
ThisWorkbook.ExportAsFixedFormat _
Type:=xlTypePDF, _
Filename:=varFilename
End If
Next
End Sub


Folgendes steht in den Variablen:

varfilename = Leer
Initialfilename = "Rücklagen"
k = 22

Es wird der Speicherdialog geöffent aber es steht dort als Speichername "False"

du machst hier

Code:
varFilename = Application.GetSaveAsFilename( _
InitialFileName = Worksheets("Kunden").Cells(k, 12).Text _
& ".pdf")

einen Vergleich. Ich finde übrigens eine Verwendung von Parameter als Variablennamen nicht unbedingt als glücklich. Versuche es mal so (ungetestet)

Code:
Sub SaveAsPDF()
   Dim varFilename As Variant
   Dim k As Long
  
   For k = 22 To 37
      If Worksheets("Kunden").Cells(k, 13).Text = "x" Then
         varFilename = Application.GetSaveAsFilename( _
         Worksheets("Kunden").Cells(k, 12).Text _
          & ".pdf")
      'FileFilter:="PDF (*.pdf), *.pdf", _
      'Title:="als PDF speichern")
      
         If varFilename <> False Then
            ThisWorkbook.ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=varFilename
         End If
      Else
      End If
   Next
End Sub
Servus, die varFilename bleibt leer, sprich es wird kein Wert eingetragen. Der Speicher unterl Dialog öffnet sich aber es wird kein Name vorgeschlagen
Hallo Daniel,

versuchs mal so
Code:
Sub SaveAsPDF()
   Dim varFilename As Variant
   Dim k As Long
  
   For k = 22 To 37
      If Worksheets("Kunden").Cells(k, 13).Text = "x" Then
         varFilename = Application.GetSaveAsFilename( _
         Worksheets("Kunden").Cells(k, 12).Text)
      'FileFilter:="PDF (*.pdf), *.pdf", _
      'Title:="als PDF speichern")
      
         If varFilename <> False Then
            ThisWorkbook.ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=varFilename
         End If
      Else
      End If
   Next
End Sub
Hallo, also das Makro läuft durch und es erkennt auch die angekreuzten Tabellenblätter aber es wird in jeden PDF alle Seiten abgespeichert und nicht nur die welche angekreuzt sind.

KOmisch ist auch das beim erstellen die Meldung kommt: wird veröffentlicht
Hallo,

Code:
Sub SaveAsPDF()
   Dim varFilename As Variant
   Dim k As Long
  
   For k = 22 To 37
      If Worksheets("Kunden").Cells(k, 13).Text = "x" Then
         varFilename = Application.GetSaveAsFilename( _
         Worksheets("Kunden").Cells(k, 12).Text)
      'FileFilter:="PDF (*.pdf), *.pdf", _
      'Title:="als PDF speichern")
      
         If varFilename <> False Then
            
            Worksheets(Worksheets("Kunden").Cells(k, 12).Text).ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=varFilename
         End If
      Else
      End If
   Next
End Sub
Genial Stefan, danke funktioniert. EInzige bei den PDF Dateien sind 2 Punkte drin, sprich Unfall..pdf

Ich sehe aber nicht wo der Punkt gesetzt wird im Makro

Sonst läuft es :)
Hallo Daniel,

(24.09.2017, 19:24)Daniel Albert schrieb: [ -> ]EInzige bei den PDF Dateien sind 2 Punkte drin, sprich Unfall..pdf

Ich sehe aber nicht wo der Punkt gesetzt wird im Makro

Wie sehen deine Tabellennamen aus?
Guten Morgen

So:

Rücklagen    
KTG
Unfall

Den Text zieht sich das Makro ja aus der Tabelle Kunden
Hallo Daniel,

wenn ich die auskommentierten Parameter wieder einfüge geht es

Code:
Sub SaveAsPDF()
   Dim varFilename As Variant
   Dim k As Long
  
   For k = 22 To 37
      If Worksheets("Kunden").Cells(k, 13).Text = "x" Then
         varFilename = Application.GetSaveAsFilename( _
         Worksheets("Kunden").Cells(k, 12).Text, _
         FileFilter:="PDF (*.pdf), *.pdf", _
         Title:="als PDF speichern")
      
         If varFilename <> False Then
            
            Worksheets(Worksheets("Kunden").Cells(k, 12).Text).ExportAsFixedFormat _
            Type:=xlTypePDF, _
            Filename:=varFilename
         End If
      Else
      End If
   Next
End Sub
Danke, perfekt wäre ich nicht drauf gekommen

Danke
Seiten: 1 2