AW: Abfrage ändern
29.05.2009 11:31:06
Jessi
Hallo ihr beiden!
Danke für die Rückmeldung, habe das jetzt abgeändert und auch die Datumsabfrage in If .Cells(lRow, ctSpaltePrüfen)
Hätte allerdings 3 weitere Fragen:
Habe nun die Tabelle etwas angepasst, dass sich Änderungen in den Spalten ergeben. Hier erstmal der neue Code:
Sub VerfallPrüfen()
Const ctTabellenName = "Tabelle1"
Const ctSpalteVorgang = "B"
Const ctSpaltePrüfen = "K"
Const ctSpalteErledigt = "J"
Const ctSpalteDate = "Q"
Const ctSpalteBetreff = "H"
Const ctSpalteEmpfänger = "o"
Dim lRow As Long
Dim bDoCheck As Boolean
Dim objApp As Object
Dim objMailItm As Object
Set objApp = CreateObject("Outlook.Application")
lRow = 9
bDoCheck = True
Do While bDoCheck
With Sheets(ctTabellenName)
If .Cells(lRow, ctSpaltePrüfen) "erledigt" Then
Set objMailItm = objApp.CreateItem(0)
objMailItm.To = .Cells(lRow, ctSpalteEmpfänger)
objMailItm.Subject = .Cells(lRow, ctSpalteVorgang)
objMailItm.Body = .Cells(lRow, ctSpalteBetreff)
objMailItm.Send
Set objMailItm = Nothing
.Cells(lRow, ctSpalteDate) = Date
.Cells(lRow, ctSpalteErledigt) = "erledigt"
End If
lRow = lRow + 1
bDoCheck = Not (IsEmpty(.Cells(lRow, ctSpaltePrüfen)))
End With
Loop
Set objApp = Nothing
End Sub
1. Frage: "E-Mail Betreff"
Betrifft meines Erachtens folgenden Codeteil: objMailItm.Subject = .Cells(lRow, ctSpalteVorgang)
Ich würde gerne einen logischen E-Mail Betreff erstellen, der sich aus folgenden Values zusammensetzt:
IMMER Zelle B1 + IMMER Zelle B2 + "Vorgangs-Nr." + ctSpalteVorgang + "ist offen"
2. Frage: "Body Text"
Betrifft meines Erachtens folgenden Codeteil:
objMailItm.Body = .Cells(lRow, ctSpalteBetreff)
Dort würde ich gerne mehrere Informationen reinpacken, z.B. ctSpaltebetreff kombiniert z.B. Zeile untendrunter "DEADLINE:" ctSpalteprüfen
3. Frage:
Nach dem Mailen wird automatische ein "erledigt" in die Spalte J geschrieben, dies bedeutet allerdings nicht, dass die Aktivität auch erledigt ist. Ich würde das dann rausnehmen (habe ich auch schon mit Erfolg hinbekommen). Ob der Vorgang erledigt ist oder nicht sollte ich noch selbst entscheiden und dann eintragen. (so dass dieser Vorgang folglich nicht mehr beim Versenden mit betrachtet wird).
Aber besteht die Möglichkeit ab der Spalte Q die erfolgten Versendetermine einzutragen, sollte Q ausgefüllt sein (also schonmal ein Reminder versendet) soll in Spalte L ein weiteres Datum eingetragen werden. So könnte ich nämlich einen Verlauf der Reminderaktivitäten hinterlegen. Weiß allerdings absolut nicht wie ich das anstelle könnte, dass der immer eine Spalte weiterspringt, sofern gefüllt.
LG + schonmal Danke vorab für Eure Hilfe!
Jessi