• 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.

meerdere kopieen in een PDF bestand.

Status
Niet open voor verdere reacties.

Roelof1983

Gebruiker
Lid geworden
26 jul 2018
Berichten
7
Hoi hoi,

Ik wil graag een PDF bestand maken met daarin de palletbladen die ik kan versturen via mail.
Huidige situatie is nu dat we eerst printen, vervolgens de geprinte palletbladen opnieuw in de printer leggen, de palletpladen inscannen die samengevoegd worden tot 1 pdf bestand en uiteindelijk het bestand doormailen naar bestemming.
Wat ik graag zou willen is dat ik m.b.v. een checkbox kan kiezen of ik wil printen of mailen, zodat ik kan blijven zitten op m’n luie gat :D:D:D:cool:.

Het printen van de palletbladen en versturen van de pdf bestand lukt mij wel.

Maar nu komt het
Met Google kom ik steeds uit op Arrays.:eek:

Ik heb nog niet met Arrays gewerkt.
Wel een poging gedaan maar nu weet ik eigenlijk niet zo goed hoe ik nu verder moet…:confused:
Bekijk bijlage Palletblad.xls

Code:
Sub exprtPDF()

Dim i As Integer

If checkbox1 = true then
With Sheets("Palletblad")
.Visible = True
.PrintOut
.Range("A34").value = .Range("A34").value + 1
.Visible = False
End With
else

 For i = 1 To 3 ‘aantal palletbladen die gemaakt worden.
    Sheets("Palletblad").Range("A1:N33") = blad
    blad = Array(blad)

Next
Sheets(blad).ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        "H:\Map1\test.pdf", Quality:= _
        xlQualityStandard, IncludeDocProperties:=False, IgnorePrintAreas:=False, _
        OpenAfterPublish:=False
End if


       With OutMail
            .To = ""
            .cc = ""
            .BCC = ""
            .Subject = "Bestelformulier Leveren " & Range("h4") & " Week " & Range("J4").Value
            .body = str
            '.Body = "Goedendag, " & vbNewLine & _
                        vbNewLine & _
                    "Hierbij als bijlage de palletbladen.
            '.Attachments.Add Destwb.FullName orgineel
            .attachments.Add “H:\Map1\test.pdf "
            .Display
        End With
        On Error GoTo 0
        .Close savechanges:=False
    End With

    'Delete the file you have send
    Kill “H:\Map1\test.pdf "
End Sub

Alvast bedankt!!
 
Probeer het eens zo. Het stukje voor mailing mag je zelf doen. Sla ook eerst je document op als .xlsm
Code:
Sub exprtPDF()
    Dim i As Integer
    Dim shPDF() As String
    
    If CheckBox1 Then
        With Sheets("Palletblad")
            .Visible = True
            .PrintOut
            .Range("A34").Value = .Range("A34").Value + 1
            .Visible = False
        End With
    Else
        ReDim shPDF(Range("T17")) [COLOR="#008000"]'aantal palletbladen die gemaakt worden.[/COLOR]
        For i = 0 To Ubound(shPDF)
            Sheets("Palletblad").Copy After:=Sheets("Palletblad")
            ActiveSheet.Name = "PDF_" & i
            shPDF(i) = ActiveSheet.Name
        Next i
    
        Sheets(shPDF).Select
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= "H:\Map1\test.pdf"

        Application.DisplayAlerts = False
        Sheets(shPDF).Delete
        Application.DisplayAlerts = True
    End If

    With OutMail
        .To = ""
        .cc = ""
        .BCC = ""
        .Subject = "Bestelformulier Leveren " & Range("h4") & " Week " & Range("J4").Value
        .body = S
        '.Body = "Goedendag, " & vbNewLine & _
                    vbNewLine & _
                "Hierbij als bijlage de palletbladen.
        '.Attachments.Add Destwb.FullName orgineel
        .attachments.Add "H:\Map1\test.pdf "
        .Display
    End With

    'Delete the file you have send
    Kill "H:\Map1\test.pdf "
End Sub
 
Laatst bewerkt:
Dr ging iets mis met posten... mijn excuus.

Is dat dat Redim gedeelte een Array?
Wil me dr wel wat meer in gaan verdiepen.

En waarom opslaan als xlsm?
Ik maak alle excel bestanden in xls formaat.
 
Die Dim shPDF() As String is een array.

Als je met Office 2007 of hoger werkt dien je je bestanden op te slaan als .xlsx (zonder VBA) of .xlsm (Met VBA).
Anders kan je nooit gebruik maken van functionaliteiten die niet in Office 2003 zitten en in hogere versies wel.
Zoals die Sheets("Palletblad").Copy die ik gebruik in je voorbeeld.

Als je Office 2003 hebt gaat het sowieso niet werken omdat je dan niet kan opslaan als PDF.
 
Laatst bewerkt:
Ah op die manier. Vandaar dat ik dus ook sreeda die compitabiliteitscontrole krijg.

Voor nu in ieder geval bedankt voor je reacties en een fijn weekend!!
 
Hetzelfde gewenst :)
 
Ok dan.
En bedankt voor het terug melden :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan