Microsoft Office Forum [ www.Office-Fragen.de ] >> READONLY <<

Microsoft Office 2003-2019 => Excel => Thema gestartet von: StefKe am März 30, 2016, 10:35:09 Vormittag

Titel: Excel-Bereich via Mail versenden
Beitrag von: StefKe am März 30, 2016, 10:35:09 Vormittag
Hallochen allerseits, ich habe diesen Code gefunden und für meinen Zweck zurechtgebaut. Soweit tut er auch was er soll. Nur leider wird das Mailfenster nicht fokussiert – es muss innerhalb der 5 Sekunden händisch getan werden.
Lässt sich die Fokussierung per Vba erreichen?


Sub BereichMailen()
    Dim OutApp As Object
    Dim Mail As Object
'    dim i
    Dim Nachricht As Object
    Dim lngletzteSpalte As Long
    Dim strAddress As String
' nachfolgend den gewünschten Tabellenbereich einstellen
    lngletzteSpalte = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
    ActiveSheet.Range("A13:F" & lngletzteSpalte).AutoFilter Field:=4, Criteria1:="<>"
    lngletzteSpalte = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Row
    Range("A13:F" & lngletzteSpalte).Select
    Selection.Copy
   
'Mailadresse:
     strAddress = ActiveSheet.Range("B7")
     
' Öffnen der Mail
        Set OutApp = CreateObject("Outlook.Application")
        Set Nachricht = OutApp.CreateItem(0)
        With Nachricht
            .Subject = "Bestellung zum: " & ActiveSheet.Range("B10") & " Kundennr.: " & ActiveSheet.Range("B8")
            .To = strAddress
            .Display
        End With
        Set OutApp = Nothing
        Set Nachricht = Nothing

'Kurz warten, damit die Mail Zeit zum Öffnen hat
        Application.Wait (Now + TimeValue("0:00:05"))

' Dann die Zwischenablage einfügen
        Application.SendKeys ("^v")
End Sub


Danke für jeden Rat!
Titel: Antw: Excel-Bereich via Mail versenden
Beitrag von: StefKe am März 30, 2016, 11:43:11 Vormittag
Ach hab grad die Lösung gefunden:

Dim MyAppID
MyAppID = Shell("C:\Program Files\Microsoft Office\root\Office16\OUTLOOK.EXE", 1)

sehr schön  8)
Titel: Antw: Excel-Bereich via Mail versenden
Beitrag von: StefKe am März 30, 2016, 11:48:11 Vormittag
Hi, muss noch mal anfragen: Wenn der Code unter Office 2010 läuft trägt:
Application.SendKeys ("^v")den Inhalt in .To ein und nicht in .body.
Also in der Adresszeile erscheint der Mailempfänger und der Inhalt der Zwischenablage. Wie ist das zu ändern?

Danke!