dieses Makro wurde von Franz / Andre erarbeitet. Es funktioniert wunderbar!!
Private Sub CommandButton1_Click()
Dim wks As Worksheet, i%, Anzahl%, Anzahl2%, strhiddenrows As String
Set wks = ActiveSheet
Application.ScreenUpdating = False
With wks
.Cells.PageBreak = xlPageBreakNone
.Cells(60, 1).PageBreak = xlPageBreakManual
For i = 9 To .Cells(.Rows.Count, 1).End(xlUp).Row
''' Hier ;O)
If Application.WorksheetFunction.CountA(.Range(.Cells(i, 1), .Cells(i, 3))) = 1 Then
strhiddenrows = strhiddenrows & i & ":" & i & ","
Anzahl2% = Anzahl2% + 1
If Len(strhiddenrows) > 244 Then 'max 255 Zeichen möglich
strhiddenrows = Left(strhiddenrows, Len(strhiddenrows) - 1)
.Range(strhiddenrows).EntireRow.Hidden = True
strhiddenrows = ""
Anzahl2% = 0
End If
Else
Anzahl% = Anzahl% + 1
If Anzahl = 59 Then
.Cells(i + 1, 1).PageBreak = xlPageBreakManual
Anzahl = 0
End If
End If
Next
If strhiddenrows "" Then
strhiddenrows = Left(strhiddenrows, Len(strhiddenrows) - 1)
.Range(strhiddenrows).EntireRow.Hidden = True
End If
End With
End Sub
Möchte nun aber noch folgendes ergänzen:
Wenn in den Spalten B und C von der Zeile 9 ab nichts steht, bringt auch der Ausdruck auf dem Drucker nichts.
Deshalb wollte ich an dieser Stelle (''' Hier ;O) folgendes einfügen:
If Application.WorksheetFunction.CountA(.Range(.Cells(i, 2), .Cells(i, 3))) = 0 Then Exit Sub
Das funktioniert auch jedoch nur wenn eine 0 steht. Bei "" kommt die Meldung nicht verfügbar.
Meine Frage nun was muss ich schreiben das es 100% geht und wie füge ich noch eine MSGBox ein bevor der Code beendet wird mit dem Inhalt"Keine Daten vorhanden"?
Weiss hier jemand weiter?
Gruss roger