Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Hilfe beim Code "Schleife von bis"
#1
Hallo!

Habe einen Code der soll nur in der Spalte F von Zelle F10:F50 was machen.
Problem er arbeitet die Ganze Spalte durch.
Meine Frage wo liegt der Fehler im Code?
Code:
Sub Zellenfarbe()
   Dim AktuellesDatum As Date
   Dim Zelle As Range
   Dim wksTab As Worksheet

   AktuellesDatum = Date

'SpalteDurchlaufen
For Each Zelle In Range("F10:F50" & Cells(Rows.Count, "F").End(xlUp).Row)
 If Zelle <> "" Then
   
   If Zelle <= Date Then   'Werte Vergleichen
           Zelle.Offset(0, -4).Interior.ColorIndex = 3                 'Zelle rot einfärben
            ActiveSheet.Tab.ColorIndex = 3                             'Register rot einfärben

       Else
           tage = (Zelle - Date)                                       'Tage berechnen
               If tage <= 7 Then                                       'Abfrage 7 Tage vorher
                       regname = ActiveSheet.Name                      'Name aus aktiven Register auslesen
                       regfarbe = ActiveSheet.Tab.ColorIndex           'Farbe aus aktiven Register auslesen
                       Zelle.Offset(0, -4).Interior.ColorIndex = 6     'Zelle gelb einfärben
                   Else
                       Zelle.Offset(0, -4).Interior.ColorIndex = 2     'Zelle keine farbe
               End If

   End If
 End If
 
     If Zelle.Offset(0, -1) <> "" Then                                 'wenn in Zelle daneben kein Werte dann
           Zelle.Offset(0, -4).Interior.ColorIndex = 3                 'Zelle rot einfärben
       End If
 Zelle.Select                                                          'nur zur ansicht
Next
End Sub
Kann einer Helfen?
mfg
Michael
:98:

WIN 10  Office 2019
Antworten Top
#2
Hallo Michael,
mit
  For Each zelle In Range("F10:F50")
triffst Du genau den Bereich F10 -F50, mit
  For Each zelle In Range("F10:F" & Cells(Rows.Count, "F").End(xlUp).Row)
triffst Du den Bereich F10 bis letzte belegte Zeile in Spalte F.
Deine Konstruktion trifft F10 bis F50&letzte belegte Spalte, also geschätzt F5050.
Angenehme Nachtruhe und Gruß der AlteDresdner
Gruß der AlteDresdner (Win11, Off2021)
Antworten Top
#3
Danke!
mfg
Michael
:98:

WIN 10  Office 2019
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste