Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

vba countifs mit 2 Bedingungen

vba countifs mit 2 Bedingungen
09.03.2015 09:53:22
Bjoern
Hallo zusammen,
ich habe eine Frage zur countifs-Funktion in vba. Ich habe in einer Excel-Tabelle zwei gefüllte Spalten, die mit countifs ausgewertet werden sollen.
Die Struktur der Tabelle ist folgende:
Spalte A Spalte B
....0..........LS.....
....0..........LS.....
....0..........LS.....
....1..........US.....
....1..........US.....
....1..........US.....
....2..........LS.....
....2..........LS.....
....2..........LS.....
Mit der countif-Funktion möchte ich gerne 2 unterschiedliche Auswertungen machen.
1. Herausfinden wie viele unterschiedliche Zahlenwerte in Spalte A vorliegen,
unabhängig von Spalte B
Dies habe ich folgendermaßen gelöst:
Application.CountIfs(Range("A1:A10"), ">=0") ~f~
Lsg.: In diesem Fall liegen 3 unterschiedliche Zahlenwerte vor.
2. Herausfinden wie viele unterschiedliche Zahlenwerte in Spalte A mit der
Buchstabenkombination "LS" in Spalte B vorliegen
~f~ Application.CountIfs(Range("A1:A10"), ">=0"),Range("B1:B10"),"=LS")
Hier wird wird die Anzahl 0 angezeigt. Bei dieser Auswertung sollte die Anzahl=2
sein
Was mache ich falsch?
Grüße

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

Betreff
Datum
Anwender
Anzeige
AW: vba countifs mit 2 Bedingungen
09.03.2015 11:26:05
Sheldon
Hallo Björn,
lass mal das '=' Zeichen vor LS weg. Klappts?
Gruß
Sheldon

AW: vba countifs mit 2 Bedingungen
10.03.2015 17:42:57
Bjoern
Die Formel funktioniert, aber leider nicht wie gewünscht.
Application.CountIfs(Range("A1:A10"), ">=0"),Range("B1:B10"),"LS")
mit der Formel werden alle Einträge mit gleichem Wert aus Spalte A und der Bezeichnung "LS" aus Spalte B gezählt.
Gewünscht ist, dass die Anzahl ungleicher Werte aus Spalte A mit der Bedingung, dass Spalte B den Eintrag "LS" hat ermittelt.
Die Formel sollte die Zahl 2 auswerfen und nicht 6.
Grüße, Björn

AW: vba countifs mit 2 Bedingungen
11.03.2015 21:25:06
Sheldon
Hallo Björn,
schon die erste Formel kann m.E. nicht 3 ausgeben, wie Du schreibst, denn bei CountIfs handelt es sich um die Excelfunktion ZÄHLENWENNS. Die zählt aber nicht die Anzahl unterschiedlicher Werte in einer Spalte, sondern alle Einträge, auf die die Bedingung zutrifft. Aus Deinem Beispiel kommt also 9 heraus, nicht 3.
Wieso VBA?
Gruß
Sheldon

Anzeige
AW: vba countifs mit 2 Bedingungen
12.03.2015 18:12:03
Bjoern
Ich habe es hinbekommen, Danke für Deine Hilfe.
Eine Frage habe ich noch. In der Formel gibt es die Bedingung, dass erst gezählt werden soll, wenn "FS" in einer Spalte geschrieben ist.
master_FS = Evaluate("SUM(IF((C$3:C$2600<>"""")*(D$3:D$2600=""FS""),1/COUNTIF(C$3:C$2600,C$3:C$2600)))")
In einigen Spalten steht Fs.2 geschrieben (2 zusätzliche Zeichen). Kann man den String bzw. die Bedingung so erweitern, das trotz der zusaätzlichen Zeichen das FS erkannt wird. like Operatir oder mid()?
Grüße

AW: vba countifs mit 2 Bedingungen
12.03.2015 19:08:52
Sheldon
Hallo Björn,
das müsste mit left(D$3:D$2600, 2) klappen.
Gruß
Sheldon

Anzeige
AW: vba countifs mit 2 Bedingungen
15.03.2015 15:48:39
Bjoern
Die left() Version funktioniert nur teilweise. Alternativ dazu habe ich es noch mal mit dem like-Operator versucht. Das klappt aber auch nicht :(
Im Anhang habe ich das Makro beigefügt. Vielleicht könnt Ihr mal in einer freien Minute drüberschauen...
Wie bereits erwähnt, soll die maximale Anzahl der Namen/Bezeichnungen A01, A02, A02.1-A02.4 herausgefunden werden, wenn die Bedingung in Spalte B erfüllt wird. Die zusätzlichen Zeichen am Namen/Bezeichnung im sheet "test" sollen beim auslesen und der anschließenden Addition ignoriert werden.
https://www.herber.de/bbs/user/96377.xlsm
Grüße
Anzeige

114 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige