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

Variable in VBA verdwijnt

Status
Niet open voor verdere reacties.

brandernl

Gebruiker
Lid geworden
19 okt 2004
Berichten
445
Ik heb een macro geschreven die eerst een afdrukbereik bepaalt en dan dat bereik afdrukt, dan een tweede bereik, afdrukken enz.
MaaRRR,
De variabele MyPrintRange wordt gedefinieerd en is bij het aanroepen van de afdrukmacro opeens leeg!
Ik kom er niet uit. Hulp wordt zeer gewaardeerd.
Bernard

Hier de code
Sub Eerste4weken()
Dim MyPrintRange As Range
Set MyPrintRange = Range(Range("A12"), Range("A12").End(xlDown).Offset(0, 31))
With MyPrintRange
ActiveSheet.PageSetup.PrintArea = .Address
End With
AfDrukken
End Sub

Sub AfDrukken()
Application.ScreenUpdating = False

With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$11"
.PrintGridlines = True
.CenterHorizontally = True
.CenterVertically = True
.Orientation = xlLandscape
.PaperSize = xlPaperA4
.Order = xlDownThenOver
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 1
End With
ActiveWindow.SelectedSheets.PrintPreview 'Out Copies:=1, Collate:=True
Set MyPrintRange = Nothing
End Sub
 
Je hebt feitelijk 2 macro's waarbij je alleen in de eerst de printrange gedefinieerd hebt.
Snelste methode:
Vervang afrdukken in de eerste door de code van de tweede.

Betere methode: neem de variabele mee naar de tweede macro met Afdrukken(MyPrintRange)
 
Andere optie:

Declareer Myprintrange als public dus bovenaan, boven je eerste sub:

Public myprintrange as range
 
Variabel in VBA verdwijnt

Bedankt, die adviezen helpen me verder.
Ik wist niet dat je en variabel zo kon meenemen
Weer wat geleerd.
Bernard :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan