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

VBA Jahreszahl als Standardformatierung auslesen

VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 16:31:21
Sascha

Hallo Experten
Ich habe in der Zelle "D2" (als Standard formatiert) eine Zahl (2015)
Im Bereich C16:M500 stehen Daten, formatiert als dd.mm.yyyy. In diesem Bereich sind manche Zellen mit Hintergrundfarbe gefüllt.
Nun möchte ich die Anzahl der farbigen Zellen zählen, aber nur dann wenn die Jahreszahl der Daten mit der Zelle ("D2") (als Standard definiert) übereinstimmen.
Mein nicht funktionierender Code:

Sub Mirjam_Abos()
Sheets("Abonnemente").Activate
anzahl = 0
For Each zelle In Range("C16:M500")
If zelle.Interior.Color = RGB(178, 161, 199) And zelle.Value = Range("D2") Then
anzahl1 = anzahl1 + 1
End If
Next zelle
Range("H5").Value = anzahl1
End Sub
Kann man das lösen, so dass ich die Jahreszahl in D2 als Standard formatiert behalten kann?
LG Sascha

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

Betreff
Datum
Anwender
Anzeige
AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 16:38:00
Hajo_Zi
Halo Sascha,
ist die Hintergrundfarbe mittels bedingter Formatierung?
Dann benutze nicht die Farbe sondern die Bedingung.

AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 16:42:39
Sascha
Hallo Hajo,
Nein die Farben sind mit RGB gefüllt.
Nur die Farben zählen funktioniert einwandfrei.
Mein Problem ist, dass ich die Farben nur dann zählen möchte wenn das Jahr mit der zahl in D2 übereinstimmt.
Ist nun die Zelle D2 als Standard definiert ergibt sich als Datum die Zahl 1905.
Da ich aber die Zelle als Standard definieren muss, funktioniert der Code nicht
Gruss Sascha

Anzeige
AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 16:46:13
Hajo_Zi

Option Explicit
Sub Mirjam_Abos()
Dim Anzahl As Long
Dim Zelle As Range
Sheets("Abonnemente").Activate
Anzahl = 0
For Each Zelle In Range("C16:M500")
If Zelle.Interior.Color = RGB(178, 161, 199) And Year(Zelle) = Range("D2") Then
Anzahl = Anzahl + 1
End If
Next Zelle
Range("H5").Value = Anzahl
End Sub

Gruß Hajo

AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 16:54:36
Sascha
Super Hajo,
Das funktioniert.
habe gerade bemerkt, dass es sinnvoll wäre wenn ich den Monat auch auslesen könnte.
Habs mal so probiert:
Sub Mirjam_Abos1()
Dim Anzahl As Long
Dim Zelle As Range
Sheets("Abonnemente").Activate
Anzahl = 1
For Each Zelle In Range("C16:M500")
If Zelle.Interior.Color = RGB(178, 161, 199) And Year(Zelle) = Range("D2") And Month( _
Zelle) = Range("A1") Then
Anzahl = Anzahl + 1
End If
Next Zelle
Range("H5").Value = Anzahl
End Sub
einfach and Month... darangehängt. nun zählt es aber nicht richtig. Weist Du warum?

Anzeige
AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 16:56:14
Hajo_Zi
dazu kann ich nichts schreiben. Was wohl daran liegt das ich die Datei nicht sehe.
Gruß Hajo

AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 17:04:36
Hajo_Zi
keine Zelle hat die Farbe
RGB(178, 161, 199)
        If Zelle.Interior.Color = RGB(178, 161, 199) Then
If Year(Zelle) = Range("D2") And Month(Zelle) = Range("A1") Then
Anzahl = Anzahl + 1
End If
End If
mache ein Haltepunkt auf If Year
Gruß Hajo

Anzeige
AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 17:07:22
Sascha
Der Colorindex stimmt doch,
wenn ich:
Sub Mirjam_Abos()
Dim Anzahl As Long
Dim Zelle As Range
Sheets("Abonnemente").Activate
Anzahl = 1
For Each Zelle In Range("C16:M500")
If Zelle.Interior.Color = RGB(178, 161, 199) And Year(Zelle) = Range("D2") Then
Anzahl = Anzahl + 1
End If
Next Zelle
Range("H5").Value = Anzahl
End Sub
laufen lasse, findet es die Farben ja auch.

AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 17:11:18
Sascha
Sorry Hajo,
Du hast recht, hab mich beim testen vertan
Tud mir leid!!!

AW: VBA Jahreszahl als Standardformatierung auslesen
01.03.2015 17:13:04
Sascha
funktioniert alles einwandfrei!
Vielen Dank für Deine superschnelle Hilfe..
Ganz liebe Grüsse und einen schönen Abend
Sascha

Anzeige

331 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige