• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

Excel Facturen converteren naar 1 pdf bestand

Status
Niet open voor verdere reacties.

BerendBastoen

Gebruiker
Lid geworden
22 mei 2018
Berichten
6
Beste leden,

Ik heb een uitgebreide kennis van MS Excel maar ik zit nu toch met een vraagje dat ik niet kan oplossen :'(.

Ik heb dus een facturatiebestand in MS Excel waarmee ik mijn facturen maak. Ik zit echter met een 'klein' probleempje waarbij ik nog teveel zelf moet doen.

Het probleem:

Mijn activiteit houdt in dat we producten leveren aan klanten en op het einde van de maand een factuur moeten opmaken.

Ik heb dus een tabel in Excel waarbij ik alle gegevens heb bv. hoeveel producten elke klant gekocht heeft aan verschillende categorieën en dit is allemaal geïntegreerd in mijn factuur sjabloon.


Tablad 1 ziet er uit als volgt: ---> Tablad 2 is het factuursjabloon waarbij ik gebruik maak van verticaal zoeken


Factuurnummer Klant Aantal producten categorienummer totaal factuurbedrag
--------------------------------------------------------------------------------------------------------------------
Factuurnummer 1 - Klant 5 - 5producten - categorie (3) - totaal factuur bedrag
Factuurnummer 2 - Klant 10 - 10 producten - categorie (2) - totaal factuur bedrag
Factuurnummer 3 - Klant 9 - 8producten - categorie (1) - totaal factuur bedrag
Factuurnummer 4 - Klant 3 - 3 producten - categorie (4) - totaal factuur bedrag
...

Jullie snappen het wel.

Mijn probleem is dat ik minimum 50 klanten heb per maand (wat nu nog meevalt)

Ik heb momenteel nu een sjabloon met verticaal zoeken waarbij hij telkens filtert op factuurnummer en zo doe ik dit dan 50x
(wat opzich wel snel gaat want hij vindt alles terug in het eerste document)

Is er een manier waarbij ik niet kan een macro maken bijvoorbeeld waarbij hij alle gegevens uit het eerste tabel neemt deze voegt in het sjabloon en zo 50x repeat en dan opslaat in een pdf bestand met alle 50 facturen zodat ik maar 1x moet een bestand afdrukken met alle facturen erin.

Is dit mogelijk en zo ja wie kan mij helpen?

Alvast bedankt!

Berend Bastoen
 
Welkom op het forum Berend!

Het zal vast mogelijk zijn. Plaats een (voorbeeld)bestandje zodat men ook een gericht antwoord kan geven.

:thumb:
 
deze in blad Input?

Code:
Private Sub CommandButton1_Click()
For Each cl In Range("C6:C" & Range("C" & Rows.Count).End(xlUp).Row)
    With Sheets("factuur-sjabloon")
        .Cells(5, 6).Value = cl.Value
        .PrintPreview
    End With
Next
        
End Sub

Als het werkt printpreview wijzigen naar printout
 

Bijlagen

  • Voorbeeld bestand.xlsm
    30,1 KB · Weergaven: 81
Laatst bewerkt:
Werkt bedankt! maar kan ik dit nu niet zetten dat hij alles exporteerd naar 1 pdf bestand?
 
Laatst bewerkt:
Berend,

ondanks de mogelijkheid dat ik voor Jan ### bezig ben geweest en dat het waarschijnlijk een stuk korter kan denk ik dat dit is wat je wilt.

Code:
Private Sub CommandButton1_Click()
ActiveWorkbook.Sheets.Add after:=Worksheets(Worksheets.Count)
X = 1
For Each cl In Range("C6:C" & Range("C" & Rows.Count).End(xlUp).Row)
    With Sheets("factuur-sjabloon")
        .Cells(5, 6).Value = cl.Value
        
        .Cells(1).Resize(45, 6).Copy
        With Sheets(Worksheets.Count).Cells(X, 1)
            .PasteSpecial xlPasteColumnWidths
            .PasteSpecial xlPasteValues
            .PasteSpecial xlPasteFormats
        End With
        X = X + 45
    End With
Next

With Sheets(Worksheets.Count)
    .ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:="C:\Test\test.pdf", _
        Quality:=xlQualityStandard
        Application.DisplayAlerts = False
                .Delete
        Application.DisplayAlerts = True
End With
End Sub

@ Haije

waar staat ie nog meer?
 
Laatst bewerkt:
TS is nieuw. Het zij hem vergeven :)

Of, zoals gevraagd, alle facturen in 1 PDF bestand:
Code:
Private Sub CommandButton1_Click()
    Dim Facts() As String
    Dim nr As Integer
    
    Application.ScreenUpdating = False
    For Each cl In Range("C6:C" & Range("C" & Rows.Count).End(xlUp).Row)
        Sheets("factuur-sjabloon").Copy after:=Sheets("Klanten")
        ActiveSheet.Name = "Factuur_" & cl.Value
        ReDim Preserve Facts(nr)
        Facts(nr) = ActiveSheet.Name
        ActiveSheet.Cells(5, 6).Value = cl.Value
        nr = nr + 1
    Next
    
    Sheets(Facts).Select
    ActiveSheet.ExportAsFixedFormat _
        Type:=xlTypePDF, _
        Filename:=Environ("Userprofile") & "\Desktop\Facturen.pdf", _
        OpenAfterPublish:=False
        
    Application.DisplayAlerts = False
    Sheets(Facts).Delete
    Application.DisplayAlerts = True
    Application.ScreenUpdating = True
End Sub
 
Sorry

Ik zal verwijzen naar deze link ik wist niet dat het niet mocht en het is dat dat ik wilde perfect en nog eens bedankt!!!
 
geeft ook verder niet, maar waar staat je vraag nog meer dan? ben benieuwd naar de oplossingen daar.
 
Als je een zoiets zonder macro zou ... willen doen dan zou je Pdfcreator kunnen gebruiken.
Nadat je het afdrukbereik ingesteld hebt zodat je zeker weet dan de rekening netjes afgedrukt wordt, print je elke factuur naar Pdfcreator als printer (wel eerst installeren dat programma...).
Klaar.... ga naar het menu van Pdfcreator en voeg alle afgedrukte pagina's tot een document samen en print het als pdf uit.
Opslaan met gewenste naam op gewenste locaties.
Klaar.

In principe kun je dit uitvoeren met alle documenten.
 
@Berend:
Even naar aanleiding van het laatste bericht op het andere forum.
Het is wat Helpmij betreft op zich geen probleem als je je vraag op meerdere fora stelt, zolang je maar even laat weten dat dat zo is en de link er naar plaatst. Dit, om te voorkomen dat helpers op meerdere fora hetzelfde wiel voor je uitvinden en zodoende hun vrijwilligerstijd overbodig aanwenden.

Dat gezegd hebbende, welkom bij Helpmij en fijn dat je een oplossing hebt gekregen :)
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan