ich habe ein kleines Problem in excel, für das ich leider keine Lüsung finde.
Ich habe eine Tabelle in der ich aufgrund von mit mit "x" markierten Zellen zusammenhängende Zellen einfärben möchte.
Mein Code sieht folgendermaßen aus:
Sub Cluster1()
Dim Block As Variant
Dim Zeile(1 To 7) As Long
Dim stp(1 To 7) As Integer
Block = "Cluster 1"
Z = Worksheets(Block).Cells(1, 4).Interior.Color
For j = 1 To 5 ' muss angepasst werden für jedes Cluster
If Worksheets(Block).Cells(j, 2) 0 Then
stp(j) = Worksheets(Block).Cells(j, 2).Value
Zeile(j) = Columns("A:A").Find(What:=stp(j), LookIn:=xlFormulas, _
LookAt:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, _
MatchCase:=False, SearchFormat:=False).Row
End If
Next
For i = 2 To 10 'Anzahl der Spalten, die durchsucht werden
If Cells(Zeile(3), i).Value = "x" And Cells(Zeile(4), i).Value = "x" And Cells(Zeile(5), i). _
Value = "x" Then 'muss angepasst werden für jeden Cluster
Range(Cells(Zeile(1), i), Cells(Zeile(2) - 1, i)).Select
Cells(Zeile(2) - 1, i).Activate
With Selection.Interior
.Color = Z
End With
End If
Next i
End Sub
In der Tabelle1 sucht das Makro nach Inhaltsstoffen, welche im Tabellenblatt Cluster 1 aufgeführt sind. Wenn alle Inhaltsstoffe vorhanden sind wird eine Range eingefärbt.Mein Problem ist, dass nicht alle Cluster die gleiche Anzahl an Inhaltsstoffen --> "xen" haben.
Meine if Bedingung muss ich also immer anpassen, in dem ich "And..." lösche und einfüge.
Gibt es einen Weg das zu umgehen?
Danke!
VG
Anbei eine Beispiel Datei
https://www.herber.de/bbs/user/89029.xlsm