online 1
gast (50)

/ Forum / Tabellenkalkulation

TabellenkalkulationTabellenkalkulation

Fragevon Flyingbaloo vom 02.03.2022, 11:26 Options

EXCEL: VBA Code automatisch auslösen

Hallo zusammen

Ich habe in einem Excel-Sheet aus 13 Tabellen zusammen gestellt. Die 13. Tabelle ist eine Zusammenfassung der ersen 12 und entsprechend verlinkt worden. Auf dieser 13. Tabelle muss ich nun einzelne Felder entsprechend den eingegebenen Werten einfärben. Dies habe ich so gelöst:

Private Sub Worksheet_Change(ByVal Target As Range)

Dim icolor As Integer



If Not Intersect(Target, Range("A1:A10")) is Nothing Then

Select Case Target

Case 1 To 5

icolor = 6

Case 6 To 10

icolor = 12

Case 11 To 15

icolor = 7

Case 16 To 20

icolor = 53

Case 21 To 25

icolor = 15

Case 26 To 30

icolor = 42

Case Else

'Whatever

End Select

Target.Interior.ColorIndex = icolor

End If

End Sub

Dies funktioniert eigentlich, doch auf der 13. Tabelle, die mit den anderen verlinkt ist, muss ich alles jede einzelne Zelle anklicken und ENTER drücken, damit die Zellen die Farben über nehmen. Gibt es dafür einen Automatismus?

Für Ratschläge bin ich echt dankbar.

Dani

PS: der Code ist nicht von mir, den habe ich im Internet gefunden.


Antwort schreiben

Antwort 1 von Hajo_Zi vom 02.03.2022, 11:38 Options

Antwort 2 von rainberg vom 02.03.2022, 12:27 Options

Hallo Dani,

probier mal das.

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    Dim rngC As Range
    If Target.Address <> "$A$1" Then Exit Sub
    For Each rngC In Range("a1:a10")
        Select Case rngC.Value
            Case 1 To 5
                rngC.Interior.ColorIndex = 6
            Case 6 To 10
                rngC.Interior.ColorIndex = 12
            Case 11 To 15
                rngC.Interior.ColorIndex = 7
            Case 16 To 20
                rngC.Interior.ColorIndex = 53
            Case 21 To 25
                rngC.Interior.ColorIndex = 15
            Case 26 To 30
                rngC.Interior.ColorIndex = 42
        End Select
    Next
    Range("b1").Select
End Sub


Durch Linksklick auf A1 werden die Farben des Bereiches A1:A10 aktualisiert.

Gruss
Rainer

Antwort 3 von Flyingbaloo vom 02.03.2022, 14:28 Options

Danke euch beiden für die Lösungen. Diejenige von Reiner konnte
super einfach einbinden und hat mein Problem gelöst.

Nun habe ich aber noch eine weiter Frage:
- wie kann ich mit einem VRB- Code eine bestimmte Zahl zB 0
unsichtbar machen resp. so färben, damit sie die Hintergrundfarbe der
Zelle bekommt.

Danke

Antwort 4 von rainberg vom 02.03.2022, 15:18 Options

Hallo Dani,

warum dieser Umweg?

Benutze doch einfach das Benutzerdefinierte Zellformat

[=0]"";Standard

Gruss
Rainer

Antwort 5 von Flyingbaloo vom 02.03.2022, 16:20 Options

Reiner, du bist einfach genial! Danke

Es ist einfach schon toll, was man aus dieser Wundebüchse von Excel alles heraus zaubern kann.

Leider habe ich früher von meinem Vater aus nie einen Computer haben dürfen, und irgendwie fehlt mir machmal das gewisse etwas, um die richtigen Codes zu eruieren - liegt einfach nicht in meinem Gespühr. Aber zum Glück gibt es ja das Supportnet und Menschen wie dich.

Danke nochmals und alles Gute.

Dani

Ähnliche Themen

Frage zu einem VBA-Code
Donjuandan  25.11.2008 - 44 Hits - 6 Antworten

Ergänzung zu VBA Code
DOMMEl  04.10.2009 - 324 Hits - 22 Antworten

VBA-Code ändern bzw erweitern
ACR  08.10.2009 - 237 Hits - 8 Antworten

VBA Code / Makro
DOMMEl  08.10.2009 - 186 Hits - 3 Antworten

VBA Code Ergänzung
DOMMEl  16.10.2009 - 374 Hits - 36 Antworten

Hinweis

Diese Frage ist schon etwas älter, Sie können daher nicht mehr auf sie antworten. Sollte Ihre Frage noch nicht gelöst sein, stellen Sie einfach eine neue Frage im Forum..

Neue Einträge

Version: supportware 1.9.150 / 10.06.2022, Startzeit:Mon Jan 26 20:06:00 2026