Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1808to1812
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Serienbrief VBA Ausdruck

Serienbrief VBA Ausdruck
04.02.2021 12:10:05
T.Müller
Ich hatte hier unter Serienbriefe aus Excel heraus einen VBA-Befehl gefunden, der gut funktioniert.
Das Problem ist nur, dass er alle Seriendrucke macht, auch bei Zeilen, wo in der Bezugszelle keine Zahl steht (die aus einer Formel kommt), sondern auch wo nur eine Formel drinsteht (ohne Zahlenergebnis).
Wie kann der nachfolgende VBA-Befehl angepasst werden, so dass er ab Zeilen ohne Zahl als Ergebnis NICHT mehr druckt.
Vorstellbar wäre auch, dass er nicht mehr druckt, wenn dort z.VB. das Wort "Ende" steht.
Sub Seriendruck()
Dim wks As Worksheet
Dim iRow As Integer
Set wks = Worksheets("Grundtabelle")
iRow = 21
Do Until IsEmpty(wks.Cells(iRow, 2))
Range("$G$1") = wks.Cells(iRow, 2)
ActiveSheet.PrintOut
iRow = iRow + 1
Loop
End Sub

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Serienbrief VBA Ausdruck
04.02.2021 12:14:36
MRUTOR
Hallo T.,
klar, die Zelle is ja nicht "Empty", da ja die Formel drin steht.
Einfachste Loesung ware die von dir vorgeschlagene mit "Ende".
Aendere die Zeile:
Do Until IsEmpty(wks.Cells(iRow, 2))

um in
Do Until wks.Cells(iRow, 2).Value = "Ende"
Gruss
AW: Serienbrief VBA Ausdruck
04.02.2021 13:30:37
T.Müller
Das funktioniert leider nicht. Es ist damit eine Endlosschleife, wo er gar nicht mehr aufhört, Druckaufträge zu schicken!
AW: Serienbrief VBA Ausdruck
04.02.2021 13:41:57
MRUTOR
Du musst natuerlich dafuer sorgen, dass irgendwann ein "Ende" in einer der Zellen in Spalte B steht.
AW: Serienbrief VBA Ausdruck
04.02.2021 13:50:45
Werner
Hallo,
dann prüf auf die Länge des Zelleintrages.
Sub Seriendruck()
Dim wks As Worksheet, iRow As Integer
Set wks = Worksheets("Grundtabelle")
iRow = 21
Do Until Len(wks.Cells(iRow, 2)) = 0
Range("$G$1") = wks.Cells(iRow, 2)
ActiveSheet.PrintOut
iRow = iRow + 1
Loop
Set wks = Nothing
End Sub
Gruß Werner
Anzeige
AW: Serienbrief VBA Ausdruck
05.02.2021 12:26:04
T.Müller
Das funkt jetzt damit mit einer kleinen Anpassung!!!
Danke für die gute Unterstützung.
Gerne u. Danke für die Rückmeldung. o.w.T.
05.02.2021 14:48:26
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige