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

Macro printen: Runtime error 1004

Status
Niet open voor verdere reacties.

grietjeb

Gebruiker
Lid geworden
22 nov 2011
Berichten
22
Beste lezers,

Ik ben bezig met een macro, welke ik in een ander bestand zonder problemen werkend heb, maar icm dit bestand wil het niet lukken. Het is vast iets kleins, maar ik zie het niet. Zouden jullie mee willen kijken?

Ik krijg error 1004 op de regel '.PrintOut Copies:=1, Collate:=True' Als ik deze regel weghaal doet hij het dus ook zonder problemen maar ik wil juist dat ie print :p

Verkorte versie van de code:

Code:
Sub Afdrukken()

Dim aktief As Range
Dim retourform As Worksheet
Dim invulblad As Worksheet
Dim dealer As Range
Dim merk As Range
Dim printcel As Range
Dim lijst As Worksheet
Dim WO As Range


Set aktief = Range("F3")
Set retourform = Sheets("Formulier")
Set invulblad = Sheets("invulblad")
Set lijst = Sheets("invulblad")
Set dealer = Range("E3")
Set printcel = Range("Y3")

invulblad.Activate

Do Until IsEmpty(aktief)
        Set dealer = aktief.Offset(0, -1)
        Set merk = aktief.Offset(0, -2)
        Set WO = aktief
       
        
    If IsEmpty(printcel) Then
        merk.Copy
        retourform.Activate
        With retourform
            .Range("D5").Select
            .Paste
        End With
        
        invulblad.Activate
        WO.Copy
        retourform.Activate
        With retourform
            .Range("f11").Select
            .Paste
        End With
        
        invulblad.Activate
        dealer.Copy
        retourform.Activate
        With retourform
            .Range("C5").Select
            .Paste
            .PrintOut Copies:=1, Collate:=True
        End With
        
        printcel.Value = "J"
        Set printcel = printcel.Offset(1, 0)
        Set aktief = aktief.Offset(1, 0)

    Else

        Set printcel = printcel.Offset(1, 0)
        Set aktief = aktief.Offset(1, 0)
    End If
    
Loop

With retourform
            .Range("B15").ClearContents
           .Range("C15:F15").ClearContents
           .Range("B16").ClearContents
           .Range("C16:F16").ClearContents
End With
        
invulblad.Activate

End Sub
 
Paar suggesties:
a. Kijk eens wat er gebeurt als je ook de juiste printer er nog bij zet? Dus .PrintOut Copies:=1, Collate:=True, ActivePrinter:="jouw_printer_naam"
b. Unhide de sheet, print af, en dan Hide de sheet weer (als retourform (=werkblad "Formulier") standaard verborgen is):
.Visible=True
.PrintOut Copies:=1, Collate:=True
.Visible=False

Tijs.
 
Stom genoeg lijkt het zichzelf opgelost te hebben ? Heb niets veranderd, maar na een paar keer proberen deed ie het ineens gewoon ? :s
 
Status
Niet open voor verdere reacties.
Steun Ons

Nieuwste berichten

Terug
Bovenaan Onderaan