Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[VBA] Excel -> Lotus Notes E-Mail - mit Formatierung

Empfohlene Antworten

Veröffentlicht

hallo

ich komm jetzt seltenerweise auch mal mit einem anwendungsspezifischen problem.

vorgabe Notes 7.0.1 & Excel 2003.

ziel ist es, den inhalt einer exceldatei (samt formatierung, aber ohne formeln) in ein neues mail zu bekommen, was grundsätzlich ja funktioniert.

die relevanten codezeilen dazu:

    Set oSession = CreateObject("Notes.NotesSession")

    Set oDB = oSession.GETDATABASE("", "")

    Call oDB.OPENMAIL

    Set oDoc = oDB.CREATEDOCUMENT

    Call oDoc.REPLACEITEMVALUE("SendTo", "X Y/Z/AT")


    Call oDoc.REPLACEITEMVALUE("Subject", "mein betreff")

    Call oDoc.REPLACEITEMVALUE("Logo", "(mein_logo)")


    'create body text

    Set oRichTextItem = oDoc.CREATERICHTEXTITEM("Body")


    'Dim richStyle As NotesRichTextStyle

    Dim richStyle As Object

    Set richStyle = oSession.CreateRichTextStyle


    richStyle.NotesFont = FONT_COURIER

    richStyle.FontSize = 20

    richStyle.Bold = True


    'Dim richText As New NotesRichTextItem(doc, "Body")

    richStyle.PassThruHTML = True

    Call oRichTextItem.AppendStyle(richStyle)

    Call oRichTextItem.AppendText("ueberschrift")

    Call oRichTextItem.ADDNEWLINE(1)

    Call oRichTextItem.AppendText(Replace(Replace(Cells(17, 3).Value, ".xls", ""), "_", ":"))

    Call oRichTextItem.ADDNEWLINE(2)

    Call oDoc.Save(True, False)



    sMyAttachment = "V:\" & Cells(21, 2).Value & "\" & Cells(21, 3).Value ' Pfad zum Excel-File

    Workbooks.Open (sMyAttachment)


    Kopieren_Delta 'Kopiere den Inhalt der Zellen


    strTemp = HoleTextVonZwischenablage()

    strTemp = Replace(strTemp, vbTab, vbTab & vbTab)

    Call oRichTextItem.AppendText(strTemp)

mein problem ist allerdings, dass zwar der inhalt des excelfiles im mailbody landet, allerdings nur rudimentär formatiert (d.h. nur tabulatoren und halt schriftgrösse und -art.

hat jemand einen lösungsvorschalg, wie man die excel-zellformatierung in den mailbody reinbekommt?

s'Amstel

Bearbeitet von Amstelchen

  • 1 Jahr später...

Hi Amstelchen,

ich kann Dir leider nicht weiterhelfen. Aber viell. kannst Du mir weiterhelfen.

Ich möchte aus Excel heraus ein Blatt mit Notes versenden, sprich Blatt als Anhang in die Mail. Die Mail soll dann aber offen sein, damit ich den Text, empfänger etc. eingeben kann.

Danke Dir!

Grüße

Stefan

Hallo Amstelchen,

hab ich in deinem Code-Ausschnitt nicht gefunden wie Du es anstellst Werte

einzufügen - die durch eine Formel berechnet wurden.

Ich mach das immer so, interessiert mich ob Du das auch so machst

oder ob es noch andere Möglichkeiten gibt.

    
Range("A1:Z65000").Select
Selection.Copy
Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteValues, _
Operation:=xlNone, _
SkipBlanks:=False, _
Transpose:=False
[/PHP]

Wegen dem Problem das die Werte in der E-Mail nur rudimentär abgelegt

werden habe ich folgende Idee.

Da Du - so wie ich den Code interpretiere - schon eine HTML-Mail erzeugst,

könntest Du doch deine Arbeitsmappe als *.html abspeichern und dann diesen

von Excel erstellen HTML-Code in deine E-Mail einfügen.

Dann solltest Du alle Formatierungen haben, zumindest die meisten :)

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.