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

Printen m.b.v. Macro

Status
Niet open voor verdere reacties.

ronald1986

Gebruiker
Lid geworden
2 apr 2010
Berichten
296
Mensen,

Ik heb zojuist een macro opgenomen met de recorder. Daarin heb ik twee keer een printopdracht gedaan waar de geselecteerde cellen geprint werden. Als ik de macro nu wil uitvoeren krijg ik devolgende foutmelding:

Fout 1004 tijdens uitvoering:

Door de toepassing of door object gedefinieerde fout

En bij foutopsporing wordt de volgende regel geel:

Code:
Selection.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False

Dit is de totale code die ik opgenomen heb:

Code:
    ActiveWindow.SmallScroll Down:=-45
    Range("A1:BL49").Select
    Selection.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
    ActiveWindow.SmallScroll Down:=-12
    Range("BM1:BX46").Select
    Range("BM46").Activate
    Selection.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
    ActiveWindow.ScrollColumn = 65
    ActiveWindow.ScrollColumn = 63
    ActiveWindow.ScrollColumn = 60
    ActiveWindow.ScrollColumn = 14
    ActiveWindow.ScrollColumn = 11
    ActiveWindow.ScrollColumn = 9
    ActiveWindow.ScrollColumn = 6
    ActiveWindow.ScrollColumn = 4
    ActiveWindow.ScrollColumn = 1
    Range("A1").Select

Weet iemand waarom ik een foutmelding krijg en hoe ik dit kan oplossen?

Mvg, Ronald
 
ronald1986,

Ik heb er geen verstand van maar doet hij dit bij de eerste regel met?
Code:
Selection.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
Als je dit eens verwijderd.
Code:
Range("BM46").Activate
 
Denk ook dat het de .Activate is, maar zo zie je ook wat een rommel in de macro recorder komt.
Dit moet volgens mij voldoende zijn en zou zelfs nog korter kunnen...
Code:
Sub printen()
With Sheets("Blad1")
.Range("A1:BL49").Select
.PrintOut copies:=1, collate:=True, ignoreprintareas:=False
.Range("BM1:BX46").Select
.PrintOut copies:=1, collate:=True, ignoreprintareas:=False
End With
End Sub
 
Sorry, dat had ik er niet bijgezet. Hij doet het inderdaad bij de eerste regel dus denk niet dat het iets helpt om

Code:
Range("BM46").Activate

te verwijderen
 
Heb je oplossing even geprobeerd, spaarie, maar dan komen alle pagina's eruit en niet alleen het geselecteerde gedeelte... weet je ook hoe ik dat kan aanpassen?
 
Oeps! Sorry.... :)
Code:
Sub printen()
With Sheets("Blad1")
.Range("A1:BL49").Select
.Selection.PrintOut copies:=1, collate:=True, ignoreprintareas:=False
.Range("BM1:BX46").Select
.Selection.PrintOut copies:=1, collate:=True, ignoreprintareas:=False
End With
End Sub
 
Haha, ok dan! Had inmiddels ook net zelf iets gevonden:

Code:
With Sheets("Blad1")
.Range("A1:BL49").Select
ActiveSheet.PageSetup.PrintArea = "A1:BL49"
.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
.Range("BM1:BX46").Select
ActiveSheet.PageSetup.PrintArea = "BM1:BX46"
.PrintOut Copies:=1, Collate:=True, IgnorePrintAreas:=False
 
Code:
With Sheets("Blad1")
.Range("A1:BL49").PrintOut
.Range("BM1:BX46").PrintOut
End With

en zo?
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan