Hallo zusammen,
ein Problem Jagd das andere nun scheitere ich an einem blöden Problem. Ich brauch eine Formel oder sonst was um das herauszufiltern.
Ich habe das Problem das ich 9 Zeilen habe und je 20 spalten. In den Zeilen 1-3, 4-6 und 7-9 dürfen maximal 5 Werte der Kategorie A stehen, sollte ein 6. Wert mit A hinzukommen sollte diese Zelle automatisch mit einer Farbe kenntlich gemacht werden. Geht so was
du könntest das mit bedingter Formatierung erreichen. Oder durch eine Datengültigkeitsprüfung den 6. Eintrag verhindern. Dazu solltest du aber ein paar Infos mehr bringen, wie das Ganze ausssieht bzw. aussehen soll.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
Eigentlich ganz einfach, wenn in den Spalten A1 - A5 geweils ein A steht und dann noch zum Beispiel in C 10 noch ein A hinzukommt sollte diese Zelle rot unterlegt sein.
So, noch einmal zum Verständnis:
Du hast drei Datenbereiche:
A1:T3
A4:T6
A7:T9
Innerhalb jeden einzelnen Bereichs sollen nur 5 Zellen mit einem "A" sein. Sollten es mehr innerhalb des "Blocks" sein, dann soll die 6. (und evtl. weitere) Zelle/n einen roten Hintergrund bekommen. Richtig so?
... Und das soll bei jeder Änderung neu berechnet werden?
Das geht vielleicht mit so einer ewig langen Formel, ich würde das per VBA (Makro) machen.
Beste Grüße Günther
Excel-ist-sexy.de …schau doch mal rein! Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
Hallo Günther,
sorry das ich erst jetzt antworte, ja genau so ist es wie du beschrieben hast. VBA wäre gut aber da kenn ich mich zu wenig aus. Kannst mir da helfen ??
mach mal eine Muster-*.xlsx mit entsprechenden zu markierenden Zellen und stelle sie hier ein. Dann kümmere ich (oder auch ein anderer Helfer) mal darum.
Beste Grüße Günther
Excel-ist-sexy.de …schau doch mal rein! Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!
17.12.2015, 19:21 (Dieser Beitrag wurde zuletzt bearbeitet: 17.12.2015, 19:21 von GMG-CC.)
So Fred,
dieser Code sollte das für dich erledigen:
Code:
Option Explicit
Sub Ab6Arot() 'by GMG-CC.de
Dim Rng As Range, c As Range, rngData As Range
Dim lRow As Integer, lCol As Integer, BlZe1 As Integer, Ze1 As Integer
Dim AnzA As Integer, AnzBlocks As Integer, Bl As Integer
Ze1 = 4
lRow = Cells(Rows.Count, 1).End(xlUp).Row + 2
lCol = 11
Set rngData = Range(Cells(Ze1, 1), Cells(lRow, lCol))
'Alle roten Hintergrundfarben löschen
With rngData.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorDark2
End With
'Zeilenweise prüfen
AnzBlocks = Int((lRow - Ze1 + 1) / 3)
For Bl = 1 To AnzBlocks
BlZe1 = Ze1 + (Bl - 1) * 3
Set Rng = Range(Cells(BlZe1, 2), Cells(BlZe1 + 2, lCol))
AnzA = 0
For Each c In Rng
If UCase(c.Value) = "A" Then
AnzA = AnzA + 1
If AnzA > 5 Then c.Interior.Color = vbRed
End If
Next c
Next Bl
End Sub
Die Zählweise ist Zeile für Zeile.
Beste Grüße Günther
Excel-ist-sexy.de …schau doch mal rein! Der Sicherheit meiner Daten wegen lade ich keine *.xlsm bzw. *.xlsb- Files mehr herunter! -> So geht's ohne!