Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
156to160
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
156to160
156to160
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

zeilen zählen

zeilen zählen
14.09.2002 07:23:18
Peter Knierim
Hallo,

gleich zur Sache:
Wie kann ich auf einfache weise nicht leere Zeilen (oder belegte) durch einem VBA Code in einem Tabellenblatt berechnen und durch eine Msg-Box bekannt geben. Jetzt zähle ich die markierten Zeilen ist aber nicht günstig, weil durch anklicken dann die Markierung auf eine Zelle zurückgeht und man den Bereich jedesmal neu suchen muß

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Re: zeilen zählen ungetestet
14.09.2002 07:53:45
Andre
Hallo Peter,
aus dem Archiv habe ich folgenden code:
Sub Leerzeilen_löschen()
Dim i, Zeile As Integer
Zeile = Cells(Rows.Count, 1).End(xlUp).Row
For i = Zeile To 1 Step -1
If Cells(i, 1).Value = "" Then
Cells(i, 1).EntireRow.Delete
End If
Next i
End Sub

Statt dem Löschen muss die msgbox rein, für belegte statt dem "=" das "<>"
Ich hoffe, es geht so.
gruss andre

weiter Hilfe nötig!
14.09.2002 07:59:49
Andre
Hallo Peter,
Makro ist für Dein Problem nicht die Lösung. Im Archiv steht es unter leere Zeilen - oder ich habe meine Brille nicht auf.
Es untersucht nur die erste Spalte, das hilft natürlich nicht bis hinter - es sei denn, Du nimmst sie als "Hilfsspalte" und zählst hier mittels Formel die nicht-leeren Zellen einer Zeile.
Da steht dann vorn was drin, und da geht's wieder.
Ich muss jetzt aber erst mal offline.
gruss andre
Anzeige
Re: weiter Hilfe nötig!
14.09.2002 08:05:16
Peter Knierim
Ja bitte

trage mir bitte die zeile für die msg-box ein, so das die anzahl erscheint.

Re: weiter Hilfe nötig?
14.09.2002 08:41:41
Andre
Sub Leerzeilen_löschen()
'untersucht wird Spalte a ab der letzten belegten Zelle nach oben
Dim i%, Zeile%, j%
'% als Abkürzung für integer, gilt auch ausschliesslich nach der
'Variablen, wo es steht und nicht für die ganze Zeile
'j für Gesamtzahl
j=0
Zeile = Cells(Rows.Count, 1).End(xlUp).Row
For i = Zeile To 1 Step -1
If Cells(i, 1).Value = "" Then
msgbox("Zeile: " & i)'Meldung kommt bei jeder leeren Zelle
j=j+1
End If
Next i
msgbox("gesamtzahl leere Zeilen: " & j)
End Sub
Anzeige
Re: weiter Hilfe nötig?
14.09.2002 09:09:53
p
hallo
erstmal dank für die mühe,
aber ich brauche ganz einfach ein zählmakro, was mir die belegten Zeilen anzeigt (mal sind es 64 mal auch 4000)
Re: zeilen zählen
14.09.2002 09:45:37
Berai
Hallo Peter,

es geht auch ohne Makro.

=SUMMENPRODUKT((A1:A65535<>"")*1)

zählt die belegten Zellen und

=SUMMENPRODUKT((ISTLEER(A1:A65535))*1)

die freien Zellen der Spalte A.

Gruß
Rainer

Re: zeilen zählen
14.09.2002 09:49:41
Peter Knierim
Die Anzahl soll aber aus einer userForm über CMD ermittelt werden und in einer Msg-Box bekannt gegeben werden.
Re: weiter Hilfe nötig?
14.09.2002 10:46:58
Boris
Leicht abgewandelt, zählt dieses Makro die belegten Zellen in Spalte A:

Sub Leerzeilen_löschen()
'untersucht wird Spalte a ab der letzten belegten Zelle nach oben
Dim i%, Zeile%, j%
'% als Abkürzung für integer, gilt auch ausschliesslich nach der
'Variablen, wo es steht und nicht für die ganze Zeile
'j für Gesamtzahl
j = 0
Zeile = Cells(Rows.Count, 1).End(xlUp).Row
For i = Zeile To 1 Step -1
If Cells(i, 1).Value <> "" Then
j = j + 1
End If
Next i
MsgBox ("gesamtzahl belegte Zeilen: " & j)
End Sub

Gruß Boris

Anzeige
Re: zeilen zählen
14.09.2002 11:04:09
Berai,
Hallo Peter,

so kannst du die Formelergebnisse in einer MSG-Box anzeigen lassen.

Gruß
Rainer

Re: weiter Hilfe nötig?
14.09.2002 12:13:48
Andre
Hallo Peter,

hier werden nun wirklich Zeilen gezählt und nicht nur die Zellen von Spalte A:

Sub Leerzeilenzählenen()
' von Wolf.W.Radzinski (..löschen)
' Geändert von Andre
On Error Resume Next
Dim r As Range
Dim anz As Long
Dim c_ges As Long
c_ges = ActiveSheet.UsedRange.Column + ActiveSheet.UsedRange.Columns.Count - 1
For Each r In ActiveSheet.UsedRange.EntireRow
anz = 0
anz = r.SpecialCells(xlCellTypeBlanks).Count
If anz >= c_ges Then a = a + 1
Next

MsgBox ("Leere Zeilen: " & a)

End Sub

gruss andre

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige