exxist
Goto Top

Zellbereich in HTMLbody einfügen (Range bis einschließlich letzter genutzter Zeile) VBA Mail

Hallo zusammen,

sitze seit geraumer Zeit an folgendem Code und finde den Fehler leider nicht. Hoffe jemand kennt die Lösung!
Mit dem Code werden automatische Mails generiert. Dabei sollen dem Body an letzter Stelle der Zelleninhalt im Range Spalte B bis Spalte J (Zeile 8 bis letzte gefüllte Zeile in Spalte A) hinzugefügt werden.
Danke für jede Hilfe.

Sub Anfrage()
'  
' Anfrage Makro  
'  
' Tastenkombination: Strg+m  
'  
letztezeile = Worksheets("Master").Cells(Rows.Count, 1).End(xlUp).Row  
    Dim MyOutApp As Object, MyMessage As Object
    Dim rng As Range
        Set MyOutApp = CreateObject("Outlook.Application")  
        Set MyMessage = MyOutApp.CreateItem(0)
        With MyMessage
            'Der Empfänger stehen in Spalte B ab Zeile 3  
            .To = Range("B3") 'E-Mail Adresse  
            'Der Betreff in Spalte A  
            .Subject = Range("B4") '"Betreffzeile"  
            .HTMLBody = "<p style='font-family:Arial'>" & Range("B5") & "</p>" _  
            & "<p style='font-family:Arial'>" & Range("B6") & "</p>" _  
            & "<p style='font-family:Arial'>" & Range("B7") & "</p>" _  
            & Sheets("MASTER").Range("B8:J" & Cells(Rows.Count, 1).End(xlUp).Row)  
            .Display
        End With
        'Objectvariablen leeren  
        Set MyOutApp = Nothing 'CreateObject("Outlook.Application")  
        Set MyMessage = Nothing 'MyOutApp.CreateItem(0)  
        'Sendepause einschalten  
        'Outlook kann die Aufträge nicht schnell genug verarbeiten  
        Application.Wait (Now + TimeValue("0:00:01"))  
End Sub

Content-Key: 318580

Url: https://administrator.de/contentid/318580

Printed on: May 2, 2024 at 19:05 o'clock

Mitglied: 131223
131223 Oct 20, 2016 updated at 20:35:04 (UTC)
Goto Top
Sheets("MASTER").Range("B8:J" & Cells(Rows.Count, 1).End(xlUp).Row) 
Was erwartest du hier? Das ein Range automatisch zu einer HTML-Tabelle wird ?? Das kann so ja niemals klappen. Ein Objekt aus Zellen mit Eigenschaften ist kein String...


Durchlaufe den Range mit zwei Verachachtelten For-Schleifen (eine für die Zeilen und die innere für die Spalten) und setze damit deinen HTML-Code für eine Tabelle zusammen. Diesen kannst du dann In die Mail einfügen.

Oder du arbeitest mit Copy und Paste. Range kopieren und dann übers Outlook Objekt in die Mail pasten.