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

Printknop met zoekfunctie tekst

Status
Niet open voor verdere reacties.

joskjos

Gebruiker
Lid geworden
9 sep 2013
Berichten
94
Hallo,

Ik ben op zoek naar code die alleen cellen uitprint waar tekst in staat. De cellen waar alleen een 0 of / in staat mogen niet geprint worden.
Misschien dat de cellen waar tekst in staat bijv. op gezocht kan worden naar meer als 3 karakters en dat hij dan de cel gaat printen.

Zie hier mijn bestandje:
Bekijk bijlage Printen.xlsb

Gr,
Jos
 
Het is het niet helemaal. De cellen moeten blijven staan en mogen niet in kolomB worden gezet.

Hopelijk is hier een andere oplossing voor mogelijk?
 
Pas de code dan zo aan:

Code:
Sub Printen()
 ar = Sheets(2).Columns(1).CurrentRegion
    For j = 1 To UBound(ar)
        For jj = 1 To UBound(ar, 2)
          If Left(ar(j, jj), 1) <> "t" Then Exit For
                c00 = c00 & ar(j, jj)
        Next jj
    Next j
 Sheets(2).Range("A1:A50") = ""
 Sheets(2).Cells(1, 1) = c00
 
 Sheets(2).Cells(1, 1).PrintPreview
End Sub
 
Ergens werkt het nog niet helemaal lekker.
Als ik printpreview krijg dan zie ik geen tekst staan. Sluit ik Printpreview dan is de tekst in kolom A volledig verdwenen.

Je moet het zo zien: de printmarges van 1 cel zijn 1 pagina geworden. dus meerdere cellen printen zijn meerdere pagina's. Wellicht gaat het daar mis!?

Gr,
Jos
 
Code:
Sub Printen()
    ar = Sheets(2).Columns(1).CurrentRegion
    For j = 1 To UBound(ar)
        If Left(ar(j, 1), 1) <> "t" Then Exit For
        c00 = c00 & "|" & ar(j, 1)
    Next j
    With Sheets(2)
        .Range("A1:A50") = ""
        With .Cells(1)
            .Resize(UBound(Split(Mid(c00, 2), "|")) + 1) = Application.Transpose(Split(Mid(c00, 2), "|"))
            .CurrentRegion.PrintPreview
        End With
    End With
End Sub
 
Ja bedankt dit is wat ik bedoel! Het werkt goed!

Mvgr,
Jos
 
Ik zie alleen dat er nu alleen naar "t" wordt gezocht. Dit is niet de bedoeling. Er kan elke willekeurige tekst staan.
Alleen als de cel enkel een 0 of / bevat dan mag de cel niet worden afgedrukt.

Iemand idee om dit te verhelpen? Heb al geprobeerd met "*" maar dan kwam er een foutmelding.
 
Code:
Sub Printen2()
    ar = Sheets(2).Columns(1).CurrentRegion
    For j = 1 To UBound(ar)
        If InStr(1, ar(j, 1), 0, 0) = 1 Or InStr(1, ar(j, 1), "/", 0) = 1 Then GoTo vervolg
        c00 = c00 & "|" & ar(j, 1)
vervolg:
    Next j
    With Sheets(2)
        .Range("A1:A50") = ""
        With .Cells(1)
            .Resize(UBound(Split(Mid(c00, 2), "|")) + 1) = Application.Transpose(Split(Mid(c00, 2), "|"))
            .CurrentRegion.PrintPreview
        End With
    End With
End Sub
 
Heeft iemand nog een oplossing voor alleen de eerste vet gedrukte regel in een cel aftedrukken?
Via menu/afdrukken gaat het wel goed, alleen nu nog via vba code zien goed te krijgen.

Wie heeft er een idee. zie bovenstaand bestand.

Gr,
Jos
 
Als het werkt voor jou dan is het in orde zeker :)
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan