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

Alleen ingevulde rijen uitprinten

Status
Niet open voor verdere reacties.

joristhijssen

Gebruiker
Lid geworden
14 apr 2016
Berichten
7
Hoi Allen,

Ik heb een vraag over een Excel bestand, misschien zou iemand mij hier mee kunnen helpen.

Zie bijlage voor voorbeeld.

Er worden telkens 2 rijen op 1 etiket afgedrukt. (90*45 mm) Dit werk allemaal. Echter willen we alleen ingevulde "2 rijen" afdrukken.

In de bijlage zou dat zijn alleen de volgende ingevulde rijen zijn.: rij 1 en 2 | Rij 3 en 4 | rij 7 en 8| rij 15 en 16. Elke 2 rijen komen dus op 1 etiket.

De ingevulde rijen zullen elke dag anders zijn. Dus morgen kan het rij 17 en 18 zijn etc... meestal tussen de 100 en 150 artikelen (2 rijen).

Dus graag willen we alle overige rijen niet afdrukken. Net zoals rij 5 en 6. hier is het aantal niet ingevuld en de samengevoegde rij niet.

Ik hoop dat iemand mij hiermee kan helpen.

Beetje lastig uitleggen, ik hoop dat het duidelijk is. Mochten er vragen zijn dan hoor ik die graag.

Alvast bedankt.Bekijk bijlage uitschrijflijst roze etiketten leeg.xlsx
 
Bedankt!

Hoi Rudi,

Bedankt dit werkt perfect zo!!!

Is het toevallig ook mogelijk om de ingekleurde cellen ook op de printlijst met kleur te krijgen of gaat dat niet?

Nogmaals bedankt..

Groeten Joris
 
Dan zal je .copy moeten gebruiken.

Code:
Sub tst()
    Sheets("Printlijst").Cells(1).Resize(500, 3).ClearContents
        For i = 1 To 389 Step 2
            If Application.CountA(Sheets("Afroeplijst").Range("A" & i).Resize(2, 3)) = 4 Then
            Sheets("Afroeplijst").Range("A" & i).Resize(2, 3).Copy Sheets("Printlijst").Range("A" & Rows.Count).End(xlUp).Offset(1)
        End If
    Next
End Sub
 
Of.
Code:
Sub tst()
    With Sheets("Printlijst").Cells(1).Resize(500, 3)
        .ClearContents
        .Interior.Pattern = xlNone
    End With
    For i = 1 To 389 Step 2
        If Application.CountA(Sheets("Afroeplijst").Range("A" & i).Resize(2, 3)) = 4 Then
            wColor = Sheets("Afroeplijst").Range("A" & i).Interior.Color
            With Sheets("Printlijst").Range("A" & Rows.Count).End(xlUp).Offset(1)
                .Resize(, 2).Interior.Color = wColor
                .Resize(2, 3).Value = Sheets("Afroeplijst").Range("A" & i).Resize(2, 3).Value
            End With
        End If
    Next
End Sub
 
Laatst bewerkt:
Kleine aanpassing

Hoi,

We hebben deze lijst nu nog iets veranderd.
In het tabblad "paklijst' worden nu de aantallen ingevuld. Dit komt dan automatisch ook in afroeplijst te staan.
Als ik dan op 'printlijst opmaken' klik wordt de formule niet juist gekopieerd (Cel c1 - C3 etc...). Is het mogelijk dat dit nog letterlijk mee overgenomen wordt. De volgende "macro" is nu in gebruik:

Sub tst()
Sheets("Printlijst").Cells(1).Resize(500, 3).ClearContents
For i = 1 To 389 Step 2
If Application.CountA(Sheets("Afroeplijst").Range("A" & i).Resize(2, 3)) = 4 Then
Sheets("Afroeplijst").Range("A" & i).Resize(2, 3).Copy Sheets("Printlijst").Range("A" & Rows.Count).End(xlUp).Offset(1)
End If
Next
End Sub

Alvast bedankt voor de geweldige hulp!!

Met vriendelijke groet,

Joris Thijssen
 

Bijlagen

Beste VenA,

Ik krijg nu nog soms de verkeerde formule. Kan dit kloppen of doe ik iets verkeerd??

Groeten Joris
 
Tabblad printlijst

Beste VenA,

Zie bijlage, hier heb ik een aantal producten meer ingevoerd in tabblad "Paklijst" zodat deze in de afroeplijst ook ingevuld zijn. als ik dan op "printlijst opmaken" klik en kijk bij tabblad 'printlijst' zie je dat niet de juiste aantallen overgenomen worden.

Het tabblad printlijst moet eigenlijk precies hetzelfde zijn als tabblad afroeplijst. Alleen de '2 rijen' die op 0 staan weg.

Ik hoop dat het duidelijk is wat ik bedoel.

Groeten,

Joris
 

Bijlagen

Als je de code van Warme bakkertje uit #5 gebruikt gaat het volgens mij wel goed.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan