Ich erstelle ein Formular, um Kontoinformationen und Bestellstatus einzugeben. Jede Zeile muss sich ändern, basierend auf dem Wert einer der Zellen in derselben Zeile, in dieser Fallzelle "H". Ich kann dies leicht mit bedingter Formatierung erreichen, aber ich denke, das macht die Datei größer als Programmiercode. Ich habe einige Optionen ausprobiert, aber ich kann in diesem Moment sagen, dass ich sehr verloren bin. Ich füge ein Beispiel an, was ich erreichen möchte. Ich weiß nicht, was ich zu diesem Zeitpunkt tun soll. Wenn mir jemand helfen kann, würde ich das sehr schätzen.Bedingte Formatierung VBA
Antwort
A Worksheet_Change Ereignis macro¹ beschäftigt sich mit, na ja, Änderungen auf dem Arbeitsblatt.
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Columns("H")) Is Nothing Then
On Error GoTo bm_Safe_Exit
Application.EnableEvents = False
Dim trgt As Range
For Each trgt In Intersect(Target, Columns("H"))
Select Case LCase(trgt.Value2)
Case "credit"
Cells(trgt.Row, "A").Resize(1, 12).Interior.ColorIndex = 45
Case "completed"
Cells(trgt.Row, "A").Resize(1, 12).Interior.ColorIndex = 10
Case Else
Cells(trgt.Row, "A").Resize(1, 12).Interior.Pattern = xlNone
End Select
Next trgt
End If
bm_Safe_Exit:
Application.EnableEvents = True
End Sub
¹ Ein Ereignis Makro auf einem Arbeitsblatt oder Arbeitsmappe Codeblatt gehört; kein Modul-Codeblatt. Für ein Arbeitsblatt-Codeblatt klicken Sie mit der rechten Maustaste auf das Namensregister des Arbeitsblatts und wählen Sie Code anzeigen. Wenn der VBE geöffnet wird, wird das Arbeitsblatt-Codeblatt (normalerweise wie etwa Book1 - Sheet1 (Code) im Vordergrund bezeichnet). Fügen Sie den Code ein und nehmen Sie Anpassungen vor. Tippen Sie dann auf Alt + Q, um zum Arbeitsblatt zurückzukehren.
Vielen Dank für Ihre Antwort. Ich denke, dass ich etwas falsch mache, weil ich die Farbe der Reihe nicht ändere. Was ich versuche, ist, den Farbbereich von "A" zu "L" basierend auf dem Wert von "H" zu ändern und es sollte für die gesamte Arbeitsmappe Zeile für Zeile gelten. – rogiefc
Ich habe ein Bild und etwas Grundlegendes hinzugefügt Anweisungen zur Implementierung des Codes. Weitere Informationen erhalten Sie, indem Sie auf den Link klicken, den ich in der ursprünglichen Antwort angegeben habe. – Jeeped
Jetzt bekomme ich es, ich habe den Code implementiert und funktioniert wie ein Zauber. Danke, ich schätze deine Zeit, mir zu helfen. – rogiefc
[Geschachtelt wenn/Sonst/Ende Wenn in Select Case] (http://stackoverflow.com/questions/29656818/nested-if-else-end-if-within-select-case/29658203#29658203) – Jeeped