Save as PDF

Status
Niet open voor verdere reacties.

Roadrocker66

Gebruiker
Lid geworden
7 mei 2009
Berichten
104
Hallo allemaal.

Ik heb een vraag.
Ik een in Excel een Invoice gemaakt met een VBA code in een save as button
Als ik de invoice (bijvoorbeeld Invoice1.PDF) als PDF opsla gaat dit prima en wordt deze als invoice met nummer1.PDF opgeslagen!
Maar hoe kan ik nu voor zorgen dat de volgende invoice die ik maak zo opgeslagen wordt dat deze niet invoice1.PDF overschrijft maar wel als PDF met invoicenummer2.
Zou graag weten hoe ik die code moet schrijven.

Zal een excel bestandje toevoegen en de code die ik heb gemaakt!

Alvast hartelijk bedankt!

Bekijk bijlage Map1.xlsm

De macro module:
Code:
Option Explicit

Sub SaveInvoiceSheetAsPDF()
        
    Blad1.Range("a1:m65").ExportAsFixedFormat xlTypePDF, Environ("UserProfile") & "\Documents\Invoice" & Range("b28").Value & ".pdf"
        MsgBox "Your Invoice hase been saved successfully!", vbInformation, "User Info"
    
End Sub

Met vriendelijke groet,
Jeen
 
Ziet er goed uit.

Zal hem morgen nog eens wat beter bestuderen.
Heel erg bedankt.
Zal ik zeker verder mee komen.
 
ik gebruik dit om een word document op te slaan na een commandbutton.

Code:
If ActiveDocument.FullName <> "" Then

ActiveDocument.SaveAs2

'
'Silent Save_to_PDF Macro
'
        docPDF = "H:\Naam bestand " & Me.txtwnnaam & ".pdf"
    ActiveDocument.ExportAsFixedFormat OutputFileName:=docPDF, _
    ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
    wdExportOptimizeForPrint, Range:=wdExportAllDocument, Item:= _
    wdExportDocumentContent, IncludeDocProps:=False, KeepIRM:=True, _
    CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
    BitmapMissingFonts:=True, UseISO19005_1:=False
    
    End If
 
Ik weet niet of het is wat je bedoeld. Maar normaal verhoog je de factuurnummer. Dus in B28 van een 1 een 2 maken. Dan slaat hij hem op als invoice2.

Dat kun je ook automatisch doen door een tellertje mee te laten lopen in B28

Code:
[B28] = [B28] + 1

of
Code:
Range("B28").Value = Range("B28").Value + 1

onderin je code te zetten. Mocht je een fout maken en hij nummert te snel op moet je wel B28 terugzetten naar het juiste nummer
 
Zoiets zal je moeten toepassen.


Code:
Sub SaveInvoiceSheetAsPDF()
   with Blad1
      .Range("a1:m65").ExportAsFixedFormat xlTypePDF, Environ("UserProfile") & "\Documents\Invoice" & .Range("b28").Value & ".pdf"
        MsgBox "Your Invoice hase been saved successfully!", vbInformation, "User Info"
      .range("b28") = .range("b28").value + 1
    end with
End Sub
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan