Ich muss jede zelle anklicken VBA

Bild

Betrifft: Ich muss jede zelle anklicken VBA
von: Werner
Geschrieben am: 26.04.2015 08:12:19

Guten Morgen,
wie kann man es automatisieren, dass ich jede Zelle einzelt anfassen muss, damit es sich einfärbt?
Sorry ich bin totaler Laie was VBA angeht.grüße Werner
hier der Code


Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo errExit
'Für den Bereich A1 bis D20. Ansonsten kann dieser in der Folgezeile angepasst werden.
If Intersect(Target, ActiveSheet.Range("A1:BF375")) Is Nothing Then Exit Sub 'Bitte den Bereich  _
 _
anpassen
'Web bei Klaus-Dieter'
'http://excelwelt.de/excelallg/farb.html = farben'
Select Case Target.Value
  Case "S": Target.Interior.ColorIndex = 23 '<- 23 für die Farbe Himmelblau
  Case "Zu": Target.Interior.ColorIndex = 6
  Case "ZU": Target.Interior.ColorIndex = 6
  Case "SU": Target.Interior.ColorIndex = 6
  Case "Su": Target.Interior.ColorIndex = 6
  Case "xF": Target.Interior.ColorIndex = 46
  Case "XF": Target.Interior.ColorIndex = 46
  Case "Xf": Target.Interior.ColorIndex = 46
  Case "xf": Target.Interior.ColorIndex = 46
  Case "K": Target.Interior.ColorIndex = 3
  Case "k": Target.Interior.ColorIndex = 3
  Case "Ko": Target.Interior.ColorIndex = 54
  Case "ko": Target.Interior.ColorIndex = 54
  Case "N": Target.Interior.ColorIndex = 11
  Case "n": Target.Interior.ColorIndex = 11
  Case "N1", "BR": Target.Interior.ColorIndex = 32
  Case "n1", "br": Target.Interior.ColorIndex = 32
  Case "F1": Target.Interior.ColorIndex = 37
  Case "F2": Target.Interior.ColorIndex = 37
  Case "F3": Target.Interior.ColorIndex = 37
  Case "F4": Target.Interior.ColorIndex = 37
  Case "D": Target.Interior.ColorIndex = 43
  Case "S1": Target.Interior.ColorIndex = 38
  Case "S2": Target.Interior.ColorIndex = 38
  Case "FTN", "eF", "T": Target.Interior.ColorIndex = 26
  Case "U", "B", "b": Target.Interior.ColorIndex = 6
  Case "u": Target.Interior.ColorIndex = 6
  Case "SN": Target.Interior.ColorIndex = 12
  Case "SN1": Target.Interior.ColorIndex = 12
  Case "f", "F": Target.Interior.ColorIndex = 45
  Case "x", "X": Target.Interior.ColorIndex = 4
  Case "kw", "KW", "kW", "Kw": Target.Interior.ColorIndex = 28
  Case "Mo", "Di", "Mi", "Do", "Fr": Target.Interior.ColorIndex = 19
  Case "Sa", "So", "Reformationstag", "Neujahr", "Karfreitag", "Ostermontag", "Maifeiertag", "  _
_
Himmelfahrt", "Pfingstmontag", "Deut.Einheit", "1.Weihnachten", "2.Weihnachten": Target. _
Interior.ColorIndex = 15
  
  'Neujahr,Karfreitag,Ostermontag,Maifeiertag,Himmelfahrt,Pfingstmontag,Deut.Einheit,1. _
Weihnachten,2.Weihnachten'
On Error GoTo errExit
If Intersect(Target, ActiveSheet.Range("A1:BF375")) Is Nothing Then Exit Sub
  Case Else
  Target.Interior.ColorIndex = xlNone
  End Select
errExit:
Exit Sub
End Sub

Bild

Betrifft: AW: Ich muss jede zelle anklicken VBA
von: Matthias L
Geschrieben am: 26.04.2015 08:37:25
Hallo
Ich wüede dem relevantem Range einen Namen geben
Dort gehst Du einmalig mir eine Schleife drüber und färbst alles so wie Du es haben willst
Dannach macht es schon Sinn es immer einzeln zu tun, denn warum sollten die Zellen nochmal färben,
obwohl sie dann schon gefärbt sind.
Zusammenfassend kannst Du es dann auch so schreiben um ein paar Code-Zeilen zu sparen
Nur als Schema gadacht:

Select Case Target.Value
  Case Is = "Zu", "Zu", "SU", "Su"
   Target.Interior.ColorIndex = 6
  Case Is = "xF", "XF", "Xf", "xf"
     Target.Interior.ColorIndex = 46
End Select
usw.
Gruß Matthias

Bild

Betrifft: AW: Ich muss jede zelle anklicken VBA
von: Werner
Geschrieben am: 26.04.2015 09:30:38
Danke Matthias, ich versteh nur "Bahnhof" was ist relevanten Range und wie macht man eine Schleife.
sorry ich bin blutiger Anfänger.
Trotzdem vielen Dank für Deine Antwort.
Werner

Bild

Betrifft: AW: Ich muss jede zelle anklicken VBA
von: Matthias L
Geschrieben am: 26.04.2015 09:59:53
Hallo
Schau mal in die Datei.
Dort führst Du das Makro:"Alles" einfach mal aus.
Es gibt einen definierten Namen:"Bereich"
Dieses Range wird dann im Code durch eine Schleife abgeklappert
Im Bsp. sind die Zahlen 1-4 und werden dann jeweils eingefärbt.
https://www.herber.de/bbs/user/97305.xlsm
Schau auch den Code im Tabellenblatt an.
Den habe ich etwas umstrukturiert.
Gruß Matthias

Bild

Betrifft: hier als xls ... für 2003
von: Matthias L
Geschrieben am: 26.04.2015 10:06:48
Hallo Werner
Sorry hatte nicht auf die Version geachtet.
Hier als *.xls
https://www.herber.de/bbs/user/97307.xls
Gruß Matthias

Bild

Betrifft: AW: hier als xls ... für 2003
von: Werner
Geschrieben am: 26.04.2015 10:27:58
Vielen Dank, ich schau mir es mal in Ruhe an, jetzt muss ich los.
Dir einen schönen Sonntag.
Gruß
Werner

Bild

Betrifft: AW: hier als xls ... für 2003
von: Werner
Geschrieben am: 27.04.2015 06:33:46
Guten Morgen Matthias,
nach langem überleben und üben hat es dann geklappt.
Ich bräuchte noch mal Deine Hilfe. Kann ich Dir die Datei mal zu senden?
LG
Werner

Bild

Betrifft: AW: hier als xls ... für 2003
von: Werner
Geschrieben am: 27.04.2015 06:36:01
Hallo Matthias, sorry ist alles neu für mich....
hier der link
https://www.herber.de/bbs/user/97313.xls
Danke Werner

Bild

Betrifft: AW: hier als xls ... für 2003
von: Werner
Geschrieben am: 27.04.2015 06:45:16
Au Backe, vor lauter beschäftigt sein mit dem Programm und hochladen hab ich meine Frage vergessen.
Ich möchte die Schriftfarben anpassen z.B. Zelle wo "N" drin steht ist dunkelblau und die schrift momentan noch schwarz, das möchte ich änder auf weiß.
Danke
LG
Werner

Bild

Betrifft: bedingte Formatierung ...
von: Matthias L
Geschrieben am: 27.04.2015 07:07:23
Hallo Werner
Userbild
also Schriftfarbe noch einstellen
Gruß Matthias

Bild

Betrifft: AW: bedingte Formatierung ...
von: Werner
Geschrieben am: 27.04.2015 07:20:36
Danke Klappt! Dir einen schönen Tag!

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Ich muss jede zelle anklicken VBA"