Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1384to1388
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Automatischer Emailversand - kleines Problem

Automatischer Emailversand - kleines Problem
01.10.2014 11:56:26
Christoph
Hallo Leute,
ich habe eine kleine Frage. Ich habe eine Liste mit unterschiedlichen Projekten und u.a. der jeweiligen Starttage der Projekte - https://www.herber.de/bbs/user/92926.xlsm
Ich habe nun begonnen ein Makro zu programmieren, welches automatisch eine Email versendet, wenn das Startdatum dem 'heutigen Datum' entspricht.
Function makro1_start()
'** Prozedur aufrufen
testemail
End Function

Sub testemail()
Dim objApp  As Outlook.Application
Dim objMail As Outlook.MailItem
Set objApp = CreateObject("Outlook.Application")
Set objMail = objApp.CreateItem(olMailItem)
sSubject = Range("E6").Value
sbody = Range("E6").Value
objMail.To = "christophzaenker@gmx.de"
objMail.Subject = sSubject
objMail.Body = sbody
objMail.ReadReceiptRequested = True
objMail.Display
objMail.Send
Set objApp = Nothing
Set objMail = Nothing
End Sub

Wie man erkennen kann, ist der Betreff und der Textkörper noch statisch. Ich finde gerade keinen Ansatz, wie ich dies lösen könnte. Die Dynamik in Makros abzubilden fällt mir immer noch nicht so leicht.
Im Prinzip möchte ich, dass wenn das heutige Datum dem Startdatum eines Projektes entspricht (es können auch mehrere Projekte an einem Tag starten), dass dann eine automatisierte Email versendet wird. Diese Mail sollte Platzhalter enthalten um bspw. den Ort des Projektes, welches am betreffenden Tag beginnt, aufnehmen zu können.
Bspw:
Folgende Projekte starten: [Hamburg]; [...]; [...]
Für Anregungen, die mir den Raum zum tüffteln lassen, wäre ich super dankbar. Sobald ich in der Lage dazu bin, möchte ich mein (leider noch nicht ausreichend vorhandenes) VBA-Wissen gerne dem Forum zur Verfügung stellen.
Ich bedanke mich schonmal vielmals im Voraus und wünsche Euch noch einen schönen Tag.
VG, Christoph

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatischer Emailversand - kleines Problem
01.10.2014 12:42:03
yummi
Hallo Christoph,
evt noch die Spalten anpassen:

Sub testemail()
Dim objApp  As Outlook.Application
Dim objMail As Outlook.MailItem
Dim llast As Long
Dim i As Long
Dim wkb As Workbook
Dim wks As Worksheet
Set objApp = CreateObject("Outlook.Application")
Set objMail = objApp.CreateItem(olMailItem)
Set wkb = ThisWorkbook
Set wks = wkb.Sheets(1)
llast = wks.UsedRange.SpecialCells(xlCellTypeLastCell).Row
For i = 5 To llast
If wks.Cells(i, 9).Value = wks.Cells(2, 2).Value Then
sSubject = wks.Cells(i, 5).Value   'zelle aus Spalte E
sbody = wks.Cells(i, 5).Value      'zelle aus Spalte E
objMail.To = "christophzaenker@gmx.de"
objMail.Subject = sSubject
objMail.Body = sbody
objMail.ReadReceiptRequested = True
objMail.Display
objMail.Send
End If
Next i
Set objApp = Nothing
Set objMail = Nothing
End Sub
Sollte das liefern was du willst
Gruß
yummi

Anzeige
AW: Automatischer Emailversand - kleines Problem
01.10.2014 21:24:54
Christoph
Hallo Yummi,
tausend Dank... Eine kleine Frage hätte ich noch:
Sub testemail()
Dim objApp  As Outlook.Application
Dim objMail As Outlook.MailItem
Dim llast As Long
Dim i As Long
Dim wkb As Workbook
Dim wks As Worksheet
Set objApp = CreateObject("Outlook.Application")
Set objMail = objApp.CreateItem(olMailItem)
Set wkb = ThisWorkbook
Set wks = wkb.Sheets(1)
llast = wks.UsedRange.SpecialCells(xlCellTypeLastCell).Row
For i = 6 To llast
If wks.Cells(i, 9).Value = wks.Cells(2, 2).Value Then
sSubject = wks.Cells(i, 2) & " - " & wks.Cells(i, 5).Value 'zelle aus Spalte E
sbody = wks.Cells(i, 2) & " - " & wks.Cells(i, 5).Value    'zelle aus Spalte E
objMail.To = "zaenker.christoph@gmail.com"
objMail.Subject = sSubject
objMail.Body = "Für folgende Projekte muss zeitnah ein Investitionsantrag gestellt  _
werden:" & vbCrLf & sbody
objMail.ReadReceiptRequested = True
objMail.Display
objMail.Send
End If
Next i
Set objApp = Nothing
Set objMail = Nothing
End Sub
Die For-Schleife hast du doch eingebaut, um Fälle abzufangen in denen bspw. 2 Projekte das gleiche Startdatum haben, oder? Leider funktioniert dies nicht und ich finde leider nicht raus wo das Problem liegt.
Es kann sein, dass bspw. zwei Projekte am 01.10.2014 beginnen. In diesem Fall sollen jeweils beide Projekte auch im Email-Body angegeben werden. Wie kann ich dieses Problem lösen bzw. wo kann ich mich in die entsprechende Materie einlesen, um dieses Problem möglicherweise selber lösen zu können?
Vielen Dank für die Hilfe. VG, Christoph

Anzeige
AW: Automatischer Emailversand - kleines Problem
02.10.2014 09:20:32
yummi
Hallo Christoph,
die for Schleife sorgt dafür, das jede Zeile überprüft wird, ob Startdatum = eingestelltes Datum und verschickt jedesmal eien mail (so der plan).
Was geht denn nicht?
WEnn Du es alles in eienr mail haben willst:

sbody = ""
For i = 5 To llast
If wks.Cells(i, 9).Value = wks.Cells(2, 2).Value Then
sSubject = "Start folgender Projekte"
sbody = sbody & vbcrlf & wks.Cells(i, 5).Value      'zelle aus Spalte E
End If
Next i
objMail.To = "christophzaenker@gmx.de"
objMail.Subject = sSubject
objMail.Body = sbody
objMail.ReadReceiptRequested = True
objMail.Display
objMail.Send
Ist ungetestet, sollte aber so gehen
Gruß
yummi

Anzeige
AW: Automatischer Emailversand - kleines Problem
07.10.2014 13:53:11
Christoph
Hallo Yummi,
entschuldige die verspätete Rückmeldung. Habe mich heute erst wieder VBA gewidmet. Deine Lösung funktioniert einwandfrei. Vielen vielen Dank dafür. Ich tüfftel gerade noch an einer Modifikation der Sache. Ggf. hole ich nochmal über das Forum rat ein. Aber erstmal versuche ich es gerade selber zu lösen - es geht darum, dass sichergestellt werden sollte, dass die Email genau einmal versendet wird. Es greifen nämlich 4 Personen auf die gleiche Datei zu und dann soll die Email nicht 4mal versendet werden :-) einen schönen Tag Dir.
VG, Christoph

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige