Microsoft Excel

Herbers Excel/VBA-Archiv

Farbige Zellen finden...

Betrifft: Farbige Zellen finden... von: F.W.
Geschrieben am: 06.03.2013 10:25:14

Guten Morgen,

ich steh irgendwie auf der Leitung....
Ich habe eine Arbeitsmappe wo in der Tabelle1 in der Zeile 4 manche Zellen farbig sind. In die farbigen Zellen möchte ich gerne ein X einfügen lassen um anschließend alle nicht farbigen bzw. Zellen ohne X ausblenden zu lassen.

Anbei der Code, der zwar keine Fehlermeldung generiert aber nicht das macht was ich möchte:

  • 
    Sub Farbe_finden()
    Sheets("Tabelle1").Activate
    Dim Zelle, Bereich$, Farbe As Byte
    Bereich = "A4:M4"
    Farbe = 37
    For Each Zelle In Range(Bereich).Cells
    If Zelle.Interior.ColorIndex = 37 Then Zelle = x
    Next
    End Sub


  •   

    Betrifft: Wie entsteht die Farbe? (owT) von: EtoPHG
    Geschrieben am: 06.03.2013 10:32:15




      

    Betrifft: AW: Wie entsteht die Farbe? (owT) von: F.W.
    Geschrieben am: 06.03.2013 10:47:35

    Die Farbe entsteht durch eine bedingte Formatierung. Das Sheet ist etwas komplexer, an einer Stelle wird ein Wert eingegeben der dann bestimmt wieviele Kalenderwochen in der Zeile 4 blau gemacht werden.

    Zur Aufbereitung für den anschließenden Ausdruck sollen alle nicht blauen Zellen ausgeblendet werden damit auf dem "onepager" nur dieser Zeitraum erscheint. Ich wollte jetzt den Umweg gehen und alle nicht leeren Zellen ausblenden lassen, weil ich nicht weiß ob und wie das mit der Farbe geht.

    Viele Grüße,
    Frank


      

    Betrifft: AW: Bedingte Formatierung = ganz schlecht von: Daniel
    Geschrieben am: 06.03.2013 10:52:52

    Hi
    die Farbe, die durch die Bedingte Formatierung entsteht, kannst du nicht ermitteln (bzw wenn, dann nur sehr sehr aufwendig).
    mit .Interior.ColorIndex fragst du immer nur die Grundfarbe ab, dh. die die angezeigt wird, wenn kein bedingtes Format aktiv ist.

    am einfachstsen ist, wenn du dir die Bedingte Formatierung, welche die Farbe erzeugt anschaust und dann in deinem Marko die gleiche Regel verwendest.

    Gruß Daniel


      

    Betrifft: AW: Farbige Zellen finden... von: hary
    Geschrieben am: 06.03.2013 10:41:24

    Hallo
    Option Explicit wuerde dir schon helfen. Da kommt der Debugger schon mal beim x, da fehlen die Gaensepfoten damit es Text ist.

    Dim Zelle As Range
    Dim Farbe As Byte
     Farbe = 37
       For Each Zelle In Sheets("Tabelle1").Range("A4:M4")
        If Zelle.Interior.ColorIndex = Farbe Then Zelle = "x"
      Next

    gruss hary


      

    Betrifft: AW: Farbige Zellen finden... von: Daniel
    Geschrieben am: 06.03.2013 10:46:06

    Hi

    wenn du ein x in die Zelle schreiben willst, so ist der Befehl dazu:

    Zelle.Value = "x"
    ohne die Anführungszeichen wird das x als Variable interpretiert und da du noch keinen Wert in diese Variable geschrieben hast, ist diese leer.
    weiterhin empfehle ich dir, mal das hier durchzulesen:
    http://www.online-excel.de/excel/singsel_vba.php?f=4

    außerdem solltest du auch mal prüfen, welche Farbe die Zellen tatsächlich haben.
    hierzu einfach mal die Markierung auf eine entsprechende Zelle setzen, das Direktfenster im VBA-Editor aktivieren (über den Menüpunkt "Ansicht") und dort den Befehel: ?Selection.Interior.Colorindex eintippen. Dann siehst du, ob du dich auch für den richtigen Zahlenwert entschieden hast.

    Gruß Daniel


      

    Betrifft: AW: Farbige Zellen finden... von: F.W.
    Geschrieben am: 06.03.2013 11:24:51

    Ich glaube das ist der Punkt. Wenn ich die Zelle markiere und mit dem Befehl ?Selection.Interior.Colorindex abfrage, dann bekomme ich die Rückmeldung "4142".

    Kann ich nicht abfragen ob die Zelle generell farbig ist, will heißen eine andere Farbe als weiß aufweist?


      

    Betrifft: AW: Farbige Zellen finden... von: firmus
    Geschrieben am: 06.03.2013 11:27:48

    Hallo F.W.,
    falls es nicht zwingend VBA sein muss, verwende doch die Filterfunktion.
    Seit xls2007 kannst Du dort nach Farben filtern.
    Funktioniert auch bei Farben die durch bedingte Formatierung entstanden sind.
    Gerade auf xls2010 ausprobiert.
    .
    Gruss,
    Firmus


     

    Beiträge aus den Excel-Beispielen zum Thema "Farbige Zellen finden..."