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

automatisch alle rapporten afdrukken...

Status
Niet open voor verdere reacties.

sammyvandeputte

Nieuwe gebruiker
Lid geworden
25 okt 2007
Berichten
3
Hallo, iedereen

in bijlage een documentje...
Op werkblad samenvatting staat een puntenlijst.
Van daaruit kan ik een rapport via een knop laten invullen en via een tweede knop laten afdrukken... ik moet er enkel voor zorgen dat ik op de naam van een cursist sta om te starten... geen probleem.
Nu zou ik echter een knop willen waar ik kan op klikken (de vba-code lukt mij niet) zodat voor alle cursisten waar "ja" staat in rij 1 het rapport wordt ingevuld en afgedrukt in 1 beweging....

"help mij"

Groetjes
Sammy

ps. de macro's staan in module 2
 

Bijlagen

Dag Sammy

Eerste post hier op het forum, dus welkom ;)

Nu, in de praktijk doet een VBA-programmeur dat zo:

Hij/zij schrijft code in een algemene procedure, die een parameter bevat. Die parameter is de naam van de persoon, of de kolom, of whatevever, als het maar uniek is voor de persoon.

Die procedure wordt dan telkens aangeroepen als je die eerste rij doorgaat.

Als er ja staat, voer dan de procedure uit met als parameter de cel waarin je staat.
Als er nee staat, ga verder.

Je bent al goed begonnen met:

Code:
Sub print_alle_rapporten()
    Sheets("samenvatting").Select
    Range("NaarPv").Select
    For Each celleke In Selection
        celleke.Select
    
        If celleke.Value = "ja" Then
            Macro4
            print_1_rapport
        End If
        
    Next

End Sub

Maar nu moet je dus in Macro4 een parameter krijgen, zodanig dat je die in bovenstaande code kan meegeven. Vereist wel dat de code hetschreven wordt voor een stuk...

Wigi
 
Parameter???

Hallo, Wigi (en alle anderen...)

Sorry, net een weekje op verlof geweest...

Wat bedoel je met een parameter? Kan je iets concreter zijn? Ik ben maar een "probeer-programmeur"...

Grtz
Sammy
 
Vakantie? Gelukzak! ;)

Voer deze code van DoorCellenGaan eens uit als het bewuste tabblad geselecteerd is:

Code:
Sub DoorCellenGaan()

    Dim r As Range
    
    For Each r In Range("A1:T1")
        Call Inhoud(r)
    Next

End Sub

Sub Inhoud(rCel As Range)

    If rCel.Value = "ja" Then
    
        MsgBox "Er staat een ja in cel " & rCel.Address
        
    ElseIf rCel.Value = "nee" Then
    
        MsgBox "Er staat een nee in cel " & rCel.Address
        
    End If

End Sub

Je merkt dat de code voor elke cel een nieuwe procedure aanroept. Die procedure heet Inhoud (OK, mijn inspiratie is niet al te groot meer op dit moment ...)

Belangrijk is dat je daarbij een cel als parameter doorgeeft aan die procedure. M.a.w. Inhoud wordt toegepast op de cel die het meekreeg als argument. Eerst cel A1, dan cel B1, enz.

Voor de rest is het voorbeeld natuurlijk verzonnen, maar het principe blijft hetzelfde.

Snappie?

Wigi
 
ik ben er nog niet...

maar het laat al een (klein) lichtje branden... ;)

alvast bedankt Wigi

we zullen doorgaan...
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan