Ich bin neu zu Excel VBA Ich arbeite derzeit an einem Mapping mit Excel VBA. Das Konzept ist, wenn ich auf Zelle c6 klicke, färbt es die verschiedenen Zellkästen, die auf es anwendbar sind, geht gleich zu Zelle C7. Sowohl C6 als auch C7 haben eine gemeinsame Zellenzuordnung, die Zelle E6 ist. Aber jetzt habe ich bemerkt, dass, wenn ich auf Zelle C6 klicke, diese Zelle E6 nicht ihre Farbe zeigt, aber wenn ich auf C7 klicke, zeigt die Farbe auf dieser Zelle E6 die Farbe an meine C7, wenn Else-Anweisung das C6 auf dieser gemeinsamen Zelle E6 überschrieben hat, bitte wie kann ich das beheben, so dass, wenn ich auf sie einzeln klicke, sie die Farbshows zurückgeben. Unten ist mein Code:ExcelVBA Probleme mit IF else Anweisung
Sub AccessControl1()
Range("C6").Interior.Color = RGB(255, 255, 0)
Range("D13").Interior.Color = RGB(154, 205, 50)
Range("E6").Interior.Color = RGB(154, 205, 50)
Range("F6").Interior.Color = RGB(154, 205, 50)
Range("AC6").Interior.Color = RGB(154, 205, 50)
Range("BH6").Interior.Color = RGB(154, 205, 50)
Range("DL7").Interior.Color = RGB(154, 205, 50)
Range("DF9").Interior.Color = RGB(154, 205, 50)
Range("DF6").Interior.Color = RGB(255, 20, 147)
Range("DA7").Interior.Color = RGB(255, 20, 147)
Range("DB23").Interior.Color = RGB(255, 20, 147)
Range("DF212").Interior.Color = RGB(255, 20, 147)
Range("DA215").Interior.Color = RGB(255, 20, 147)
End Sub
Sub AccessControl2()
Range("C6").Interior.Color = RGB(255, 255, 255)
Range("D13").Interior.Color = RGB(255, 255, 255)
Range("E6").Interior.Color = RGB(255, 255, 255)
Range("F6").Interior.Color = RGB(255, 255, 255)
Range("AC6").Interior.Color = RGB(255, 255, 255)
Range("BH6").Interior.Color = RGB(255, 255, 255)
Range("DL7").Interior.Color = RGB(255, 255, 255)
Range("DF9").Interior.Color = RGB(255, 255, 255)
Range("DF6").Interior.Color = RGB(255, 255, 255)
Range("DA7").Interior.Color = RGB(255, 255, 255)
Range("DB23").Interior.Color = RGB(255, 255, 255)
Range("DF212").Interior.Color = RGB(255, 255, 255)
Range("DA215").Interior.Color = RGB(255, 255, 255)
End Sub
Sub AccountManagement1()
Range("C7").Interior.Color = RGB(255, 255, 0)
Range("E6").Interior.Color = RGB(154, 205, 50)
Range("AE13").Interior.Color = RGB(154, 205, 50)
Range("AF6").Interior.Color = RGB(154, 205, 50)
Range("AG13").Interior.Color = RGB(154, 205, 50)
Range("AI6").Interior.Color = RGB(154, 205, 50)
Range("AJ13").Interior.Color = RGB(154, 205, 50)
Range("DA189").Interior.Color = RGB(255, 20, 147)
Range("DC195").Interior.Color = RGB(255, 20, 147)
Range("DA192").Interior.Color = RGB(255, 20, 147)
End Sub
Sub AccountManagement2()
Range("C7").Interior.Color = RGB(255, 255, 255)
Range("AE13").Interior.Color = RGB(255, 255, 255)
Range("AF6").Interior.Color = RGB(255, 255, 255)
Range("E6").Interior.Color = RGB(255, 255, 255)
Range("AG13").Interior.Color = RGB(255, 255, 255)
Range("AI6").Interior.Color = RGB(255, 255, 255)
Range("AJ13").Interior.Color = RGB(255, 255, 255)
Range("DA189").Interior.Color = RGB(255, 255, 255)
Range("DC195").Interior.Color = RGB(255, 255, 255)
Range("DA192").Interior.Color = RGB(255, 255, 255)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
If Target.Address = "$C$6" Then
Call AccessControl1
Else
Call AccessControl2
End If
If Target.Address = "$C$7" Then
Call AccountManagement1
Else
Call AccountManagement2
End If
End Sub
Wo ist der Code? – SilverNak
@SilverNak Ich habe den Code dankeschön für Ihre Hilfe eingefügt –
@ A.eyo - Wenn 'Cell C6' geklickt wird' Sub AccessControl1() 'ändert die Farbe von' Cell E6' in 'RGB (154, 205, 50) 'danach wird' Sub AccountManagement2() 'aufgerufen und die Farbe von' Cell E6' wechselt zurück zu 'RGB (255, 255, 255)' zB 'White'. Was genau versuchst du? – Mrig