Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1736to1740
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

E-mail beantworten inkl. Anhang

E-mail beantworten inkl. Anhang
11.02.2020 14:08:28
Kai
Hallo,
benötige mal wieder hilfe.
Anbei der code über ein CommandButton der eine offene E-mail beantworten soll.
Momentan wird der eine Antwort E-mail gmit dem vorgegebenen Anhang geöffnet aber irgentwie bekomme ich es nicht hin den Sender der E-mail + CC + Betreff mit anzuzeigen.
Private Sub CommandButton2_Click()
Dim DateiName As String
Dim Pfad As String
Dim lw_pfad As String
Dim strFolder As String
Dim lngRetun As Long
Dim blnReturn As Boolean
Dim i As Long, Zelle As Range
Dim Zeichen As String
Dim myAnswer As Object
With Worksheets("Angebot")
For Each Zelle In .Range("T70")
For i = 1 To Len(Zelle.Text)
Zeichen = Mid(Zelle.Text, i, 1)
Select Case Zeichen
Case "/"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "\"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case ":"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "*"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "?"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case ">"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: E-mail beantworten inkl. Anhang
11.02.2020 15:43:59
Kai
Hätte auch noch das hier.
Funktioniert auch, aber leider ohne den Anhang. Rest könnte ich selber zusammenbasteln.
Sub TestMail()
DateiName = Sheets("Angebot").Range("t70") & ".pdf"
Sheets("Angebot").Range("C55:n111").ExportAsFixedFormat Type:=xlTypePDF, Filename:=DateiName,  _
Quality:=xlqualitystandart, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
Dim olApp As Object ', AktMail As Object,
Dim myAnswer As Object
Set olApp = CreateObject("Outlook.Application")             'OutlookVerweis
If Not olApp.ActiveInspector Is Nothing Then                'Pruefung auf offene Mail
With olApp.ActiveInspector.CurrentItem()
Set myAnswer = .ReplyAll                            'allen Antworten-Verweis
.Close False                                        'Aktuelle Mail schliessen
End With
With myAnswer
.SentOnBehalfOfName = "xxxxxxx"                     'senden von Konto
.Subject = "Betreff"                                'Betreff NEU schreiben? ohne  _
diese Zeile AW: Original-Betreff
.htmlbody = "Text" & .htmlbody                      'htmlBody ERGAENZEN
'            .htmlbody = "Text"                                  'htmlbody beschreiben
.Display                                            'anzeigen
End With
Else
MsgBox "keine offene Mail"
End If
Set myAnswer = Nothing
Set olApp = Nothing
End Sub

Anzeige
AW: E-mail beantworten inkl. Anhang
11.02.2020 18:13:13
Nepumuk
Hallo Kai,
ein Beispiel:
Option Explicit

Private Const olMail As Long = 43

Public Sub Test()
    Dim objOutlook As Object, objInspectors As Object
    Dim objItem As Object
    Dim blnFound As Boolean
    On Error Resume Next
    Set objOutlook = GetObject(Class:="Outlook.Application")
    If Err.Number <> 0 Then
        Call MsgBox("Kein offenes Outlook gefunden.", vbCritical, "Programmabbruch")
    Else
        Set objInspectors = objOutlook.Inspectors
        For Each objItem In objInspectors
            If objItem.CurrentItem.Class = olMail Then
                blnFound = True
                Call MsgBox(objItem.CurrentItem.SenderEmailAddress)
                Call MsgBox(objItem.CurrentItem.CC)
                Call MsgBox(objItem.CurrentItem.Subject)
            End If
        Next
        If Not blnFound Then _
            Call MsgBox("Keine offene Mail gefunden.", vbCritical, "Programmabbruch")
    End If
    Set objItem = Nothing
    Set objInspectors = Nothing
    Set objOutlook = Nothing
End Sub

Gruß
Nepumuk
Anzeige
AW: E-mail beantworten inkl. Anhang
12.02.2020 06:21:18
kai
Danke Nepumuk,
aber wo kommt nun mein PDf rein?
DateiName = Sheets("Angebot").Range("t70") & ".pdf"
Sheets("Angebot").Range("C55:n111").ExportAsFixedFormat Type:=xlTypePDF, Filename:=DateiName, _
Quality:=xlqualitystandart, IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:=True
AW: E-mail beantworten inkl. Anhang
12.02.2020 09:35:07
Nepumuk
Hallo Kai,
so?
Option Explicit
Private Const olMail As Long = 43
Public Sub Test()
Dim objOutlook As Object, objInspectors As Object
Dim objItem As Object, objMail As Object
Dim blnFound As Boolean
Dim strPath As String
On Error Resume Next
Set objOutlook = GetObject(Class:="Outlook.Application")
If Err.Number  0 Then
Call MsgBox("Kein offenes Outlook gefunden.", vbCritical, "Programmabbruch")
Else
On Error GoTo 0
Set objInspectors = objOutlook.Inspectors
For Each objItem In objInspectors
If objItem.CurrentItem.Class = olMail Then
blnFound = True
strPath = ThisWorkbook.Path & "\" & Worksheets("Angebot").Range("T70") & ".pdf"
Call Worksheets("Angebot").Range("C55:N111").ExportAsFixedFormat( _
Type:=xlTypePDF, Filename:=strPath, Quality:=xlQualityStandard, _
IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
False)
Set objMail = objItem.CurrentItem
With objMail
.SentOnBehalfOfName = "xxxxxxx"
.Subject = "Betreff"
.HtmlBody = "Text" & .HtmlBody
Call .Attachments.Add(strPath)
.Display
End With
End If
Next
If Not blnFound Then _
Call MsgBox("Keine offene Mail gefunden.", vbCritical, "Programmabbruch")
End If
Set objItem = Nothing
Set objInspectors = Nothing
Set objOutlook = Nothing
End Sub

Gruß
Nepumuk
Anzeige
AW: E-mail beantworten inkl. Anhang
12.02.2020 10:37:26
kai
Hallo Nepumuk,
wie immer super...:-)
einzig die Signatur fehlt noch dann wär es perfekt.
AW: E-mail beantworten inkl. Anhang
13.02.2020 06:19:40
kai
Hallo Nepumuk,
kannst du bitte nochmal drüberschauhen. Ich schaffe es einfach nicht, dass meine Signatur mit drin steht.
Getinspector funktioniert nicht.
Gruß Kai
AW: E-mail beantworten inkl. Anhang
14.02.2020 07:08:10
kai
Hallo zusammen,
hab es hinbekommen.
hab noch ein Problem mit dem Absatz beim smailtext.
Gibts da eine Trick? hab schon sämtliche (Chr(13)etc. ausprobiert)
Private Sub CommandButton2_Click()
Dim DateiName As String
Dim Pfad As String
Dim lw_pfad As String
Dim strFolder As String
Dim lngRetun As Long
Dim blnReturn As Boolean
Dim i As Long, Zelle As Range
Dim Zeichen As String
On Error Resume Next
Set objOutlook = GetObject(Class:="Outlook.Application")
If Err.Number  0 Then
Call MsgBox("Kein offenes Outlook gefunden.", vbCritical, "Programmabbruch")
Else
On Error GoTo 0
With Worksheets("Angebot")
For Each Zelle In .Range("T70")
For i = 1 To Len(Zelle.Text)
Zeichen = Mid(Zelle.Text, i, 1)
Select Case Zeichen
Case "/"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "\"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case ":"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "*"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "?"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case ">"
Zelle.Value = Left(Zelle.Text, i - 1) & "-" & Right(Zelle.Text, Len(Zelle.Text) - i)
Case "

Anzeige
AW: E-mail beantworten inkl. Anhang
14.02.2020 10:25:59
Nepumuk
Hallo Kai,
bei HtmlBody musst du Html-Tags verwenden. Für den Zeilenumbruch also <br>
Gruß
Nepumuk

123 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige