Office: Spalte durchsuchen und bedingte Formatierung

Helfe beim Thema Spalte durchsuchen und bedingte Formatierung in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo, ich hoffe es kann mir nochmal jemand helfen. Ich möchte eine Spalte durchsuchen und das darin stehende Datum mit dem heutigen Datum... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von Khelben, 20. Januar 2010.

  1. Khelben Erfahrener User

    Spalte durchsuchen und bedingte Formatierung


    Hallo,

    ich hoffe es kann mir nochmal jemand helfen. Ich möchte eine Spalte durchsuchen und das darin stehende Datum mit dem heutigen Datum vergleichen und somit eine Frist zu ermitteln. Dabei soll die Zelle für den Fall, dass es weniger als 8 Wochen sind Gelb gefärbt werden und wenn weniger als 4 Wochen Rot.

    Ich hatte es einfach erstmal für eine bestimmte Zeile gestestet, ob das Berechnen an sich und die bedingte Formatierung funktionieren. Klappte alls Prima, doch nun möchte ich dieses auf die gesammte Spalte von Zeile 2 (wegen Überschrift) bis letzte Zeile anwenden, wobei leere Zellen nicht beachtet werden sollen. Aber irgendwie funktioniert das nicht ganz.

    Hier ist mein Code, den ich probiert habe:

    Code:
    Sub Naechste_Wartung_Alarm()
        Dim DatHeute As Date
        Dim Rest As Integer
        Dim DatNaechste As Date
        Dim i_start As Integer
        Dim i_ende As Integer
        
        DatHeute = Date
        i_start = 2
        i_ende = Range("A65536").End(xlUp).Row
        
        For i = i_start To i = i_ende
            If Not Range(Cells(i, 10)).Text = "" Then
                DatNaechste = Range(Cells(i, 10)).Text
                Rest = DateDiff("w", Now, CDate(DatNaechste))
                If Rest >= "8" Then Cells(i, 10).Interior.ColorIndex = False
                If Rest < "8" And Rest >= "4" Then Cells(i, 10).Interior.ColorIndex = 6
                If Rest < "4" Then Cells(i, 10).Interior.ColorIndex = 3
            End If
        Next i
    End Sub
    
    Kann sein, dass der Code etwas umständlich ist, aber ich hab erst vor 2 Tagen angefangen mich mit dem Thema VBA zu beschäftigen. Das wichtigste ist erstmal, dass es überhaupt funktioniert. Optimieren kann man später noch.

    Danke im Voraus

    Gruß
    Christian
     
    Khelben, 20. Januar 2010
    #1
  2. schatzi Super-Moderator
    Hallo!

    Warum denn VBA?
    Das lässt sich doch, wie du selbst schon sagtest, mit der Bedingten Formatierung erledigen:

    1. Regel (rot): =A1+28>HEUTE()
    2. Regel (gelb): =A1+56>HEUTE()
     
    schatzi, 20. Januar 2010
    #2
  3. Khelben Erfahrener User
    Das Ganz ist Teil einer größeren Datanbank, die ich versuche aufzubauen, die dann mehr oder weniger komplett über VBA, Userform etc gesteuert werden soll. Ich hab ein Datenformular erstellt, mit dem ich die Tabelle fülle und jeder neue Datensatz am Ende eingefügt wird. Da möchte ich nicht immer die bedingte Formatierung ergänzen, wenn ich neue Datensätze eingegeben habe.

    Außerdem habe ich gerade erst angefangen mich mit VBA zu beschäftigen und möchte daher möglichst viele Funktionen darüber abdecken, um es einfach zu üben. Ansonsten würde mir dein Tip helfen :-)
     
    Khelben, 20. Januar 2010
    #3
  4. schatzi Super-Moderator

    Spalte durchsuchen und bedingte Formatierung

    Hallo!
    Du kannst doch die BF gleich für die gesamte Spalte anwenden. Dann erübrigt sich das.
     
    schatzi, 20. Januar 2010
    #4
  5. Khelben Erfahrener User
    Ich weiß, aber wie gesagt ich möchte auch VBA üben, und da hilft es mir mehr, wenn ich solch Sachen programmiere.

    Da mein Versuch aus irgendeinem Grund nicht funktioniert, würde es mir auch für später helfen, wenn ich wüsste, wo mein Fehler ist.

    Selbst wenn ich jetzt das ganze über Bedingte Formatierung erledige, werde ich später wahrscheinlich, den Fehler in meinem obigen Code wiederholen. Keine Ahnung, ob es an der For/Next Schleife oder woanders liegt.
     
    Khelben, 20. Januar 2010
    #5
  6. schatzi Super-Moderator
    Hallo!

    Mach mal alles Rote weg (ungetestet):

    For i = i_start To i = i_ende
    If Not Range(Cells(i, 10)).Text = "" Then
    DatNaechste = Range(Cells(i, 10)).Text
    Rest = DateDiff("w", Now, CDate(DatNaechste))
    If Rest >= "8" Then Cells(i, 10).Interior.ColorIndex = False
    If Rest < "8" And Rest >= "4" Then Cells(i, 10).Interior.ColorIndex = 6
    If Rest < "4" Then Cells(i, 10).Interior.ColorIndex = 3
    End If
    Next i
     
    schatzi, 20. Januar 2010
    #6
  7. Khelben Erfahrener User
    Danke jetzt schein es zu klappen.

    Es hat gereicht nur das i = zu entfernen und dann noch die Range-Angabe for den Cells.

    Vielen Dank, jetzt bin ich wieder ein gutes Stück weiter. Zumindest bis zur nächsten Frage, die bestimmt demnächst auftauchen wird :mrgreen:

    Ich hasse es halt einfach nur Bücher zu lesen, und mache lieber Learning-By-Doing. Das heißt ich hab mir überlegt, welche Funktionen ich machen möchte und danach dann im Internet gesucht. In verschiedenen Foren und Online-Tutorials habe ich dann verschiedene Routinen gefunden, die ich mir dann kopiere, versuche Zeile für Zeile nachzuvollziehen und dann an mein Problem anzupassen.
     
    Khelben, 20. Januar 2010
    #7
Thema:

Spalte durchsuchen und bedingte Formatierung

Die Seite wird geladen...
  1. Spalte durchsuchen und bedingte Formatierung - Similar Threads - Spalte durchsuchen bedingte

  2. Spalte und Zeile durchsuchen

    in Microsoft Excel Hilfe
    Spalte und Zeile durchsuchen: Hallo an alle hier im Forum Ich habe folgendes Problem: In Range A2:A50 stehen aufsteigende Datumswerte diese kann ich in einer UF ComboBox1 wählen In der ersten Zeile stehen Mitarbeiter die ich...
  3. Mehrere Spalten durchsuchen und Wert von anderen Zelle ausgeben

    in Microsoft Excel Hilfe
    Mehrere Spalten durchsuchen und Wert von anderen Zelle ausgeben: Hallo, Ich komm hier leider nicht auf eine Lösung und hoffe hier kann mir wer weiterhelfen. :-) Ich bräuchte die Mengen die in der Übersicht sind, dann jeweils neben Größe und Farbe in dem...
  4. Spalte mit Art. Nr. durchsuchen und bei Treffer diese Art. Nr. in die Nachbarspalte ausgeben

    in Microsoft Excel Hilfe
    Spalte mit Art. Nr. durchsuchen und bei Treffer diese Art. Nr. in die Nachbarspalte ausgeben: Hallo zusammen, ich habe folgendes Problem und bin zudem Neuling mit EXEL. Ich habe eine Scannerspalte in die pro Arbeitsgang bis zu max. 200 Artikel eingescannt werden. Daneben habe ich Spalten...
  5. Spalte nach Namen durchsuchen und Ergebnisszeile nach Wert durchsuchen

    in Microsoft Excel Hilfe
    Spalte nach Namen durchsuchen und Ergebnisszeile nach Wert durchsuchen: Hallo zusammen, nachdem ich lange stiller Mitleiser war, habe ich aktuell ein Problem bei welchem ich nicht weiterkomme und auf eure Hilfe hoffe.... Ich möchte im Tabellenblatt "Historie" in...
  6. Spalte durchsuchen und Zeilennummer ausgeben

    in Microsoft Excel Hilfe
    Spalte durchsuchen und Zeilennummer ausgeben: Hallo zusammen, ich benötige ein Makro, welches bestimmte Spalten einer aktiven Tabelle, beispielsweise Spalte Nr. 1 und Spalte Nr. 2 durchsucht und danach die Nummern aller Zeilen ausgibt, in...
  7. Excel durchsuchen einer Spalte in Bezug eines Wertes

    in Microsoft Excel Hilfe
    Excel durchsuchen einer Spalte in Bezug eines Wertes: Hallo, bin neu hier und bin am verzweifeln. Ich habe eine Excel-Datei mit mehreren Arbeitsblättern. Nun mein Problem. Blatt 1 stehen z. B. Spalte N Spalte Q 1...
  8. Mehrere Spalten durchsuchen und Wert aus bestimmter Spalte ausgeben

    in Microsoft Excel Hilfe
    Mehrere Spalten durchsuchen und Wert aus bestimmter Spalte ausgeben: Hallo zusammen, ich habe folgendes Problem: Ich habe eine Tabelle, in der über 3 Spalten (B / C / D) Ziffern eingetragen sind. Ich möchte nun, alle drei Spalten nach einem bestimmten Wert...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden