VBA - Zählen wie oft im Monat
#1
Hallo Zusammen,

einmal mehr benötige ich eure Hilfe.

In meinem Arbeitsblatt habe ich in den Zeilen A1 - L1 die Monate aufgeschrieben.
In Range A4:A15 befinden sich verschieden Daten.
z.B. 
  • 01.01.2019
  • 05.01.2019
  • 15.09.2019
  • 26.03.2019
  • 15.06.2019
  • 28.09.2019
Ich möchte nun, dass mein Makro durch die Range "A4:A15" durchgeht und z.b. alle Daten für den Januar zählt und diese Zahl dann in A2 einfügt.
D.h. in diesem Beispiel sollte dann in A2 "2" stehen.

Ich weiß, das wäre mit einer PivotTabelle machbar, ich möchte dies aber mit einem Makro machen, da das ganze zu einer größeren Funktion gehört und ohne abbrechen durchlaufen sollte.

Ich habe es bereits mit folgender Lösung probiert:

Code:
Range("A2").Value = "=COUNTIF(A4:A15, MONTH(A1))"   'Funktioniert aber leider nicht


Ich hoffe jemand kann mir dabei helfen.
Top
#2
Moin!
Folgender Ansatz:
ABCDEFGHIJ
3123456789
401.01.2019201001002
505.01.2019
615.09.2019
726.03.2019
815.06.2019
928.09.2019

ZelleFormel
B4=SUMMENPRODUKT(--(MONAT($A4:$A9)=B$3))

Formel nach rechts ziehen.

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#3
Hallo RPP63,

auf dich ist echt immer verlass :D

Funktioniert soweit echt einwandfrei .. Dafür schon mal vielen Dank :)

Eine frage hätte ich aber noch.

Ist es auch irgendwie möglich den Namen des Monats anstatt der Zahl anzugeben?

Danke Vorab.

Gruß,
Mr. I
Top
#4
Frei nach Toyota (Nichts ist unmöglich):

ABCDEFGHIJ
3JanuarFebruarMärzAprilMaiJuniJuliAugustSeptember
401.01.2019201001002
505.01.2019
615.09.2019
726.03.2019
815.06.2019
928.09.2019

ZelleFormel
B4=SUMMENPRODUKT(--(TEXT($A4:$A9;"MMMM")=B$3))
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
[-] Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:
  • Mr.Invisible
Top
#5
Hallo,

Mit Range.Value kannst Du kein Formelergebnis in die Zelle schreiben. Das kannst du z.B. mit EVALUATE (in eckige Klammern [] gesetzte Funktionen werden mit Evaluate ausgewertet) machen.
Zählenwenn mit Monat kombiniert kann nicht funktionieren. Entweder DU nimmst Zählenwenns und schränkst entsprechend den Zeitraum mit Monatsanfang und Monatsende ein oder Du verwendest SUMMENPRODUKT und wendest Monat auf den zu durchsuchenden Bereich auch an:
Code:
Range("A2").Value = ["=COUNTIFS(A4:A15,"">=""&DATE(YEAR(A1),MONTH(A1),1),A4:A15,""<=""&DATE(YEAR(A1),MONTH(A1)+1,0))"]
oder
Range("A2").Value = ["=SUMPRODUCT(--(TEXT(A4:A15,""MMJJJJ"")=TEXT(A1,""MMJJJJ"")))"]
Gruß
Michael
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste