2017-02-21 2 views
0

Ich versuche, durch alle Zellen in Spalte "C" zu durchlaufen und den Wert zu Today() - 4 ändern, wenn die Zelle "Mon" enthält, da der Bericht auf a ausgeführt wird Freitag. Ich habe als nicht sicher Heute() in Zelle „K5“ setzen, wie es sonst für Ihre Hilfe in meinÄndern Sie einen Zellenwert, wenn es einen Teil einer Zeichenfolge enthält

For Each cell In Sheets("EMAIL DATA").Range("C:C") 
    If cell.Value = "*Mon*" Then 
    Set cell.Value = ("K5" - 4) 
    End If 
Next 

Dank einzuarbeiten.

Antwort

1

den Code unten Versuchen Sie, mit DateAdd Funktion 4 Tage ab dem heutigen Datum subtrahieren (Date).

Hinweis: Es ist nicht notwendig, das heutige Datum in Zelle "K5" zu speichern, verwenden Sie einfach die Date Funktion.

For Each cell In Sheets("EMAIL DATA").Range("C:C") 
    If cell.Value Like "*Mon*" Then 
     cell.Value = DateAdd("d", Date, -4) 
    End If 
Next 
+0

Danke Shai. Funktioniert perfekt –

0

Referenz auf die Zelle K5 müssen Sie verwenden: Range("K5"). Oder Excel wird die "K5" als eine Zeichenfolge und einen Fehler ausgeben.

For Each cell In Sheets("EMAIL DATA").Range("C:C") 
    If cell.Value Like "*Mon*" Then 
    Set cell.Value = (Sheets("EMAIL DATA").Range("K5") - 4) 
    End If 
Next 
+0

Hallo Scott, danke für Ihre Antwort, aber wenn Sie die oben genannten verwenden, ändert sich die Zelle mit "Mon 10:31" nicht. Irgendeine Idee warum? –

+0

@RobBlagg tut mir leid siehe Bearbeiten. –

+0

Danke Scott. Das funktioniert. –

Verwandte Themen