Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

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.
Antworten 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)
Antworten 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
Antworten 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
Antworten 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
Antworten Top


Gehe zu:


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