Microsoft Excel

Herbers Excel/VBA-Archiv

bed. Formatierung rückwirkend

Betrifft: bed. Formatierung rückwirkend von: Dirk
Geschrieben am: 08.09.2004 08:17:57

Hallo zusammen liebe freundliche potentielle Hilfesteller!
Nachdem ich auf nette und originelle Art und Weise auf die Gepflogenheiten hier im Forum aufmerksam gemacht worden bin möchte ich mich an dieser Stelle schon einmal im voraus herzlich für die eventuelle Hilfestellung bedanken!
(Ich war gestern abend ziemlich gestresst und habe schlicht und einfach eine ANREDE vergessen...)
Mein Excel-"Problem" ist nun folgendes:

Wie man eine bed. Formatierung mit mehr als 3 Bedingungen via VBA macht ist mir soweit klar, z.B. so:
Private

Sub Worksheet_Change(ByVal Target As Excel.Range)
  Select Case Target.Value
    Case 1
      Target.Interior.ColorIndex = 2
    Case "R"
      Target.Interior.ColorIndex = 12
      Target.Font.ColorIndex = 13
    Case 3
      Target.Interior.ColorIndex = 4
    Case 4
      Target.Interior.ColorIndex = 5
    Case 5
      Target.Interior.ColorIndex = 6
    Case 6
      Target.Interior.ColorIndex = 7
    Case Else
      Target.Interior.ColorIndex = xlColorIndexNone
  End Select
End Sub




Mein Excel-Problem:
Dies soll sich bitte aber auch auf bereits BESTEHENDE, ältere Zelleninhalte auswirken bzw auf Zellen, deren Inhalt sich durch Formeln ergibt und nicht nur auf die Zelle, in der ich gerade die Eingabe tätige!
Für Hilfestellung hierzu wäre ich sehr dankbar!
Gruß Dirk
  


Betrifft: AW: bed. Formatierung rückwirkend von: Nepumuk
Geschrieben am: 08.09.2004 09:12:03

Hallo Dirk,
dazu musst du einmalig diesen Code laufen lassen:


Public Sub test()
    Dim myRange As Range
    For Each myRange In ActiveSheet.UsedRange
        Select Case myRange.Value
            Case 1
                myRange.Interior.ColorIndex = 2
            Case "R"
                myRange.Interior.ColorIndex = 12
                myRange.Font.ColorIndex = 13
            Case 3
                myRange.Interior.ColorIndex = 4
            Case 4
                myRange.Interior.ColorIndex = 5
            Case 5
                myRange.Interior.ColorIndex = 6
            Case 6
                myRange.Interior.ColorIndex = 7
            Case Else
                myRange.Interior.ColorIndex = xlColorIndexNone
        End Select
    Next
End Sub


Gruß
Nepumuk


  


Betrifft: AW: bed. Formatierung rückwirkend von: Dirk
Geschrieben am: 08.09.2004 09:37:14

Hallo Nepumuk,
schon mal vielen Dank für die Info!
Da mein VBA-Wissen noch ziemlich begrenzt ist hier eine weitere Frage:
Wie bzw. wo baue ich den Code denn ein, im VBA-Fenster Worksheet / Change z.B. ?


  


Betrifft: AW: bed. Formatierung rückwirkend von: Nepumuk
Geschrieben am: 08.09.2004 09:46:30

Hallo Dirk,
der Code muss in ein Standardmodul. Im VBA-Editor - Einfügen - Modul.
Das Programm startest du aus Excel mit Alt+F8.
Gruß
Nepumuk


  


Betrifft: AW: bed. Formatierung rückwirkend von: Dirk
Geschrieben am: 08.09.2004 09:51:48

Hallo Nepumuk,
vielen Dank für Deine Hilfe, es funzt jetzt auch bei mir ;-)
Gruß Dirk


 

Beiträge aus den Excel-Beispielen zum Thema "bed. Formatierung rückwirkend"