[Code] [EXCEL] Macro, Hintergrundfarbe

Dieses Thema im Forum "Programmierung & Entwicklung" wurde erstellt von 3X3X3X3, 14. März 2009 .

Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 14. März 2009
    [EXCEL] Macro, Hintergrundfarbe

    Hey ich brauche eben mal hilfe!
    Und zwar suche ich ein Skript, das wenn in Feld A1 ein X ist die Hintergrundfarbe von A1 bis A11 rot markiert ist..
    kann mir jmd weiterhelfen?

    MfG
     
  2. 14. März 2009
    AW: [EXCEL] Macro, Hintergrundfarbe

    Am einfachsten zu lösen mit VBA:

    Mach dir ein neues Makro, und schreib aber deinen eigenen Code rein der in etwa so aussehen könnte:

    Code:
    If cells(1,1) = "X" Then 
     Range("A1:A11").Interior.Color = RGB(255,0,0)
    End If
    

    oder du fügst den code in das worksheet change event ein. Würde auch gehen. (Ich hab grad nur kein Excel installiert, darum kann ich dir keine schritt für schritt anleitung geben ^^)


    Gruß
    meckes
     
  3. 14. März 2009
    AW: [EXCEL] Macro, Hintergrundfarbe

    nee is schon okay so! ^^
    werde es jetzt probieren und mirs mal umschreiben..
    ---

    so hab es nun gemacht!
    klappt auch wunderbar!
    nur ist nun meine frage wie aktualisiert sich das automatisch ohne das ich in vbs gehen muss und es "anstoßen" muss?

    Code:
    Sub Bezahlt()
    
    Dim zell As Integer
    
    zell = 55
    
    Do While zell <= 104
     If Range("O" & zell) = "Nein" Then
     Range("A" & zell & ":O" & zell).Interior.Color = RGB(255, 0, 0)
     ElseIf Range("O" & zell) = "Ja" Then
     Range("A" & zell & ":O" & zell).Interior.Color = RGB(0, 255, 0)
     End If
     zell = zell + 1
    Loop
    
    End Sub
    

    mfg
     
  4. 15. März 2009
    AW: [EXCEL] Macro, Hintergrundfarbe

    hab jetzt nochmal was umgeschrieben, dass es sofort reagieren soll.. mit rückgabe eines wertes würde es funktionieren, aber leider nicht mit dem tauschen von der hintergrundfarbe!
    jemand eine idee?

    Code:
    Function Bezahlt(zelle As String) As String
    
    If zelle = "Nein" Then
     Range("A55:O55").Interior.Color = RGB(255, 0, 0)
    ElseIf zelle = "Ja" Then
     Range("A55:O55").Interior.Color = RGB(0, 255, 0)
    End If
    
    End Function
    
    mfg
     
  5. 15. März 2009
    AW: [EXCEL] Macro, Hintergrundfarbe

    Wie hasts denn umgeschrieben?


    Code:
    Range("A55:O55").Interior.Color = RGB(255, 0, 0)
    
    evtl hilfts wenn du das Worksheet noch angibst, also:
    Code:
    Sheet1.Range("A55:O55").Interior.Color = RGB(255, 0, 0)
    
    oder 
    
    Tabelle1.Range("A55:O55").Interior.Color = RGB(255, 0, 0)
    
    je nach dem wie dein Worksheet halt heißt.

    N weiterer Versuch wäre Wert es nicht mit dem RGB Wert zu versuchen sondern mit dem Color Index

    Code:
    Range("A55:O55").ColorIndex = 6
    Weiß allerdings net welcher Colorindex für welche Farbe steht.

    Hmm joa, mehr Ideen hab ich im Moment auch net. Vorallem weil ichs net ausprobieren kann *g*

    Gruß
    meckes
     
  6. 15. März 2009
    AW: [EXCEL] Macro, Hintergrundfarbe

    Also das was du mir da gepostet hast ist ja schon richtig!
    So ich erklärs mal bissel detailierter..
    und zwar..

    ich habe die ein worksheet und zwar die tabelle eins.. doch gibts ein feld mit einen drop down menü wo man zischen JA und NEIN auswählen kann.. Der Hintergrund wenn noch nichts drin steht ist grau!

    wenn ich nun JA auswähle soll er die hintergrundfarbe in grün ändern! wenn das Feld NEIN ist dann soll es rot werden!

    das problem ist die automatisierung.. wenn ich nun das ganze in vbs schreibe wo es so aussieht:
    Code:
    Sub Bezahlt()
    
    Dim zell As Integer
    
    zell = 55
    
    Do While zell <= 104
     If Range("O" & zell) = "Nein" Then
     Range("A" & zell & ":O" & zell).Interior.Color = RGB(255, 0, 0)
     ElseIf Range("O" & zell) = "Ja" Then
     Range("A" & zell & ":O" & zell).Interior.Color = RGB(0, 255, 0)
     End If
     zell = zell + 1
    Loop
    
    End Sub
    
    geht es wunderbar! bloss ist es nicht automatisiert und ich muss es eben in dem vbs editor per hand starten!

    da ich das ganze aber direkt mit der auswahl machen wollte, habe ich eine funktion geschrieben die aber so nicht funktioniert:
    Code:
    Function Bezahlt(zelle As String) As String
    
    If zelle = "Nein" Then
     Tabelle1.Range("A55:O55").Interior.Color = RGB(255, 0, 0)
    ElseIf zelle = "Ja" Then
     Tabelle1.Range("A55:O55").Interior.Color = RGB(0, 255, 0)
    End If
    
    End Function
    
    Nun da ist ja eigentlich kein Fehler mehr im code.. bloss weiss ich eben nicht wie die automatisierung funktioniert...

    mfg
     
  7. 16. März 2009
    AW: [EXCEL] Macro, Hintergrundfarbe

    habs anderster gelöst!

    mfg
     
  8. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.