Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Zählmakro !

Forumthread: Zählmakro !

Zählmakro !
28.08.2003 10:44:45
Dari
Hallo, Zusammen,

ich bekam hier im Forum folgendes Makro:

'Auswertung
iCount = Range("A65536").End(xlUp).Row

For iEinheit = 1 To 5
For iAnzahl = 9 To iCount
If Right(Cells(iAnzahl, 1), 1) = iEinheit Then
iErgebnis = iErgebnis + 1
End If
Next
Sheets("Auswertung").Cells(iEinheit, 2) = iErgebnis
iErgebnis = 0
Next

Das Makro zählt alle Endungen _ 1 bis _4 und gibt sie aus:

_1 = 15
_2 = 56
_3 = 37
_4 = 12

Nun müßte ich das Makro erweitern um die Endung _0. Kann mir da jemand helfen ?
Außerdem bräuchte ich noch einen Tip für eine Befehlszeile = Wenn keine nummerische Endung >>> dann ignorieren. Bis jetzt stürzt das Makro ab (Laufzeitfehler).

Gruß
Dari
Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zählmakro !
28.08.2003 11:12:10
Andreas Walter
'Auswertung
iCount = Range("A65536").End(xlUp).Row
ON ERROR RESUME NEXT ' FEHLERHANDHABUNG
For iEinheit = 0 To 5 ' von NULL bis FÜNF (DU SAGTEST ÜBRIGENS VIER)
For iAnzahl = 9 To iCount
If Right(Cells(iAnzahl, 1), 1) = iEinheit Then
iErgebnis = iErgebnis + 1
End If
Next
Sheets("Auswertung").Cells(iEinheit+1, 2) = iErgebnis 'ALLES UM EINS NACH UNTEN
iErgebnis = 0
Next
Anzeige
Vielen Dank !
28.08.2003 12:41:49
Dari
Vielen, Dank hat funktioniert.

Eine Frage noch am Rande. Dieses
ON ERROR RESUME NEXT
kann ich das auch hier einfügen

Set wks = Worksheets("Tabelle1")
lgRow = 9
lgZiel = 1
iCount = 1
Do
If Right(Cells(lgRow + 1, 1), 1) < Right(Cells(lgRow, 1), 1) Then
wks.Cells(lgZiel, 1) = "Einzelsubstrat " & lgZiel
wks.Cells(lgZiel, 2) = iCount
lgZiel = lgZiel + 1
iCount = 0
End If

iCount = iCount + 1
lgRow = lgRow + 1

Loop Until IsEmpty(Cells(lgRow, 1))

Was mir auffällt, ist das es hier kein NEXT hat. Geht das trotzdem ? Ich probiers mal aus

Gruß
Dari
Anzeige
AW: Vielen Dank !
28.08.2003 17:11:11
Andreas Walter
ON ERROR RESUME NEXT
bedeutet - wenn ein Fehler vorkommt - ignorieren und geh zum NÄCHSTEN Befehl und hat nichts mit einem NEXT als Ende von einer Schleife zu tun

So was steht auch in der Hilfe
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige