Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1816to1820
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

2 worksheet_changes in einem Macro

2 worksheet_changes in einem Macro
09.03.2021 17:35:42
th18po
Hallo Zusammen,
ich möchte in einem Exceltabellenblatt mehrere Ampeln über einen Wert aus einer Tabelle (gleiches Blatt) schalten. Die Ampel besteht aus Formen (nicht Zellenbasierend). VBA ist nicht
meine Stärke ;-) Habe nun für jede Ampel ein Macro. Einzeln funktionieren sie nur zusammen _ bekomme ich es nicht hin. Kann vielleicht jemand unterstützen? Wäre klasse

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("AE4")) Is Nothing Then Exit Sub
If IsNumeric(Target.Value) Then
If Target.Value = 6 Then
ActiveSheet.Shapes("Ellipse 2").Fill.ForeColor.RGB = vbRed
Else
ActiveSheet.Shapes("Ellipse 2").Fill.ForeColor.RGB = vbBlack
End If
If Target.Value = 3 Then
ActiveSheet.Shapes("Ellipse 183").Fill.ForeColor.RGB = vbYellow
Else
ActiveSheet.Shapes("Ellipse 183").Fill.ForeColor.RGB = vbBlack
End If
If Target.Value = 1 Then
ActiveSheet.Shapes("Ellipse 184").Fill.ForeColor.RGB = vbGreen
Else
ActiveSheet.Shapes("Ellipse 184").Fill.ForeColor.RGB = vbBlack
End If
End If
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
If Intersect(Target, Range("AE5")) Is Nothing Then Exit Sub
If IsNumeric(Target.Value) Then
If Target.Value = 6 Then
ActiveSheet.Shapes("Ellipse 187").Fill.ForeColor.RGB = vbRed
Else
ActiveSheet.Shapes("Ellipse 187").Fill.ForeColor.RGB = vbBlack
End If
If Target.Value = 3 Then
ActiveSheet.Shapes("Ellipse 188").Fill.ForeColor.RGB = vbYellow
Else
ActiveSheet.Shapes("Ellipse 188").Fill.ForeColor.RGB = vbBlack
End If
If Target.Value = 1 Then
ActiveSheet.Shapes("Ellipse 189").Fill.ForeColor.RGB = vbGreen
Else
ActiveSheet.Shapes("Ellipse 189").Fill.ForeColor.RGB = vbBlack
End If
End If
End Sub


4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: 2 worksheet_changes in einem Macro
09.03.2021 17:41:25
Daniel
Hi
mach aus dem
IF Bedinung Then Exit Sub
hier der Code

einen vollständigen IF-Block:
IF NOT Bedingung then
hier der Code
End if

dann kann man auch beide Codes kombinieren.
das mit dem Exit Sub ist Quick'n'Dirty, halt so mal für die Schnelle.
wenns was brauchbares sein soll, lieber etwas mehr Aufwand reinstecken.
Gruß Daniel

AW: 2 worksheet_changes in einem Macro
09.03.2021 17:42:07
Hajo_Zi

Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
If IsNumeric(Target.Value) Then
If Not Intersect(Target, Range("AE4")) Is Nothing Then
If Target.Value = 6 Then
ActiveSheet.Shapes("Ellipse 2").Fill.ForeColor.RGB = vbRed
ElseIf Target.Value = 3 Then
ActiveSheet.Shapes("Ellipse 183").Fill.ForeColor.RGB = vbYellow
ElseIf Target.Value = 1 Then
ActiveSheet.Shapes("Ellipse 184").Fill.ForeColor.RGB = vbGreen
Else
ActiveSheet.Shapes("Ellipse 184").Fill.ForeColor.RGB = vbBlack
End If
ElseIf Not Intersect(Target, Range("AE5")) Is Nothing Then
If Target.Value = 6 Then
ActiveSheet.Shapes("Ellipse 187").Fill.ForeColor.RGB = vbRed
ElseIf Target.Value = 3 Then
ActiveSheet.Shapes("Ellipse 188").Fill.ForeColor.RGB = vbYellow
ElseIf Target.Value = 1 Then
ActiveSheet.Shapes("Ellipse 189").Fill.ForeColor.RGB = vbGreen
Else
ActiveSheet.Shapes("Ellipse 189").Fill.ForeColor.RGB = vbBlack
End If
End If
End If
End Sub



Anzeige
AW: 2 worksheet_changes in einem Macro
10.03.2021 07:49:01
th18po
Danke Hajo, ich denke das ist der richtige Weg. Nur habe ich jetzt das Problem dass die Ampel(n) nicht auf schwarz zurückspringt sofern der Wert nicht entsprechend ist.
Beispiel: Ich gebe eine 6 ein, Apelsymbol oben rot, gebe ich den Wert 3 ein, wird das mittlere Symbol gelb aber das Oberste bleibt rot! Kannst Du mir noch einmal helfen? 1000 Dank

AW: 2 worksheet_changes in einem Macro
10.03.2021 08:05:39
th18po
Hallo Hajo, ich habe es hinbekommen. Musste nur die Umschaltung auf Schwarz bei jeder Farbauswahl wieder zurücksetzen. Nochmal vielen Dank

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige