429 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo zusammen,
vorweg möchte ich sagen, dass ich nicht wußte, ob ich 2 Themen aufmachen sollte. Da es sich aber um dieselbe Tabelle handelt, habe ich mich für 1 Thema entschieden.
Kann bitte mal jemand in die bedingte Formatierung schauen, was an meinen Formeln falsch ist.
Ziel soll sein in Spalte AK- Zelle grün ausfüllen, wenn Summe gleich/größer 3, in Spalte D NSR oder NOSR oder ISR steht, Zelle gelb ausfüllen, wenn Summe gleich 2 und Zelle rot, wenn Summe 0 oder 1. Das klappt alles. Nicht klappen tut, dass die Zelle in Spalte AK nicht farblich ausgefüllt wird, wenn in der Spalte B nichts steht.
Link: http://www.xup.in/dl,51450102/Schiedsrichterverzeichnis3.xlsx/

Das zweite Problem: Ist es möglich wenn das Jahr in der Zeile 4 mit dem Jahr aus Spalte F übereinstimmt, das alle Einträge in der Zeile von Spalt G bis Spalte AJ auf Knopfdruck (Button) gelöscht werden, außer das übereinstimmende Jahr und die beiden Jahre davor?
In der Spalte AK sollen nämlich immer nur 3 Jahre addiert werden.
Danke im voraus und Gruß Flodnug
PS.: Wenn ich mich zu umständlich ausgedrückt habe, bitte ich um Entschuldigung.

4 Antworten

0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo Flodnug,

bei mir funktioniert die bedingte Formatierung so wie du willst. Wenn ich auch Spalte B den Namen löschen, wird die Zelle AK weiß.

Zu deiner zweiten Frage, probier mal den folgenden Code aus:

Sub Jahr()

Dim lngJahr As Long
Dim lngZeile As Long
Dim lngSpalte As Long

lngZeile = 4

Do
'ab Zeile 5 alle Zeilen durchlaufen
lngZeile = lngZeile + 1

lngJahr = CLng(Cells(lngZeile, 6).Value)
'Spalten G bis AJ durchlaufen
For lngSpalte = 7 To 36
If IsEmpty(Cells(lngZeile, lngSpalte)) = False Then
If Cells(4, lngSpalte) < lngJahr - 2 Or Cells(4, lngSpalte) > lngJahr Then Cells(lngZeile, lngSpalte).ClearContents
End If
Next lngSpalte

Loop Until IsEmpty(Cells(lngZeile + 1, 6))

End Sub


Gruß

M.O.
0 Punkte
Beantwortet von
Hallo M.O,
vielen Dank erstmal für Deine Antwort. Ich hatte die Hoffnung schon fast aufgegeben.
Zum Thema. Der Code klappt prima mit einem kleinen Schönheitsfehler.
Er lässt die Einträge vom aktuellen Jahr und die beiden nächsten Jahre stehen (also 2016,2017,2018). Es sollen aber die Einträge aus dem aktuellen Jahr und den beiden Jahren davor (also 2016.2015,2014) stehen bleiben. Ich gehe aber mal davon aus, das das nur eine kleine Änderung ist.
Das mit den Zellfarben funktioniert bei mir genauso wie bei Dir. Sprich: vorhandenen Namen löschen = keine Zellfarbe in Sp. AK.
Aber in den Zeilen wo keine Namen mehr stehen (also unter Zeile 202) soll in AK auch keine Zellfarbe stehen. Und das funktioniert nicht. Das ist ja das Geheimnis.
Vielen Dank nochmal und Gruß Flodnug
0 Punkte
Beantwortet von m-o Profi (22.8k Punkte)
Hallo,

als bei deiner Beispieltabelle sind die Zellen in der Spalte AK ab Zeile 203 ebenfalls weiß.

Und der gepostete Code funktioniert in der Beispieltabelle, die du zur Verfügung gestellt hast, so wie willst. Bei mir werden nur das in Spalte F stehende Jahr und die beiden Jahre davor nicht gelöscht. Hier deine Beispieldatei mit dem Makro: KLICK

Gruß

M.O.
0 Punkte
Beantwortet von
Hallo M.O.,
danke für deine schnelle Antwort.
Du hast Recht. Nachdem ich deine Datei runtergeladen habe, hat das löschen im Tab.blatt "SR-Einsätze(2)" beim ersten mal geklappt. Dann nicht mehr.
Und bei mir sind auch in der runtergeladenen Datei die Zellen in Spalte AK grün, wenn kein Name in Spalte B steht.
Ich habe mich daher entschieden aufzugeben, da ich auch u.a. dir keine Sisyphusarbeit zumuten möchte.
Trotzdem möchte ich mich nochmal ausdrücklich bei dir bedanken. Vielen, vielen Dank.
Gruß Flodnug
...