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

Daten in E-Mail einfügen

Daten in E-Mail einfügen
15.04.2023 14:05:47
Andi

Hallo liebe Excel-Experten,

Ich hab ein Excel-Tool mit der ich mit Hilfe einer Schaltfläche eine E-Mail mit Anhang (eine fremde Excel-Datei) erstellen kann - soweit so gut.

Nun zu meiner Frage:
Kann ich eine Zelle (z.B. A1) aus der fremden Excel-Datei auslesen und in die E-Mail einfügen?

E-Mail könnte z.B. lauten:


"Hallo,

die Testdatei enthält 8 Produkte

VG"


Die Zahl 8 ist in A1 in der fremden Excel-Datei zu finden

Gerne füge ich noch eine Excel-Datei bei, aber wollte erstmal grundsätzlich fragen, ob dies überhaupt möglich ist.

Vielen Dank

Schöne Grüße
Andi

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten in E-Mail einfügen
15.04.2023 15:02:36
Phio
Hallo, das ist grundsätzlich kein Problem.
Rückfrage: Soll die "fremde Excel-Datei" mit in die Mail, oder sollen das 2 verschiedene E-Mails werden.

Für zwei verschiedene Mails:

Sub EmailMitZelle()
    Dim OutlookApp As Object
    Dim OutlookMail As Object
    Dim Pfad As String
    Dim Wbk As Workbook
    Dim Zelle As Range
    
    'Dateiauswahl öffnen
    With Application.FileDialog(msoFileDialogOpen)
        .AllowMultiSelect = False
        .Filters.Clear
        .Filters.Add "Excel-Dateien", "*.xlsx, *.xlsm, *.xlsb, *.xls, *.xla, *.xlam, *.xltm"
        .InitialFileName = "C:\Test\"
        If .Show = True Then
            Pfad = .SelectedItems(1)
        Else
            Exit Sub
        End If
    End With
    
    'Öffnen der ausgewählten Excel-Datei
    Set Wbk = Workbooks.Open(Pfad)
    
    'Lesen des Werts aus Zelle A1
    Set Zelle = Wbk.Worksheets(1).Range("A1")
    Dim Zellenwert As Integer
    Zellenwert = Zelle.Value
    
    'Erstellen der E-Mail
    Set OutlookApp = CreateObject("Outlook.Application")
    Set OutlookMail = OutlookApp.CreateItem(0)
    With OutlookMail
        .BodyFormat = 2
        .To = "empfaenger@email.com"
        .Subject = "Betreff der E-Mail"
        .HTMLBody = "Hallo,
die Testdatei enthält " & Zellenwert & " Produkte.
VG" .Attachments.Add Pfad .Display End With 'Schließen der fremden Excel-Datei Wbk.Close False 'Freigeben der Speicher Set OutlookMail = Nothing Set OutlookApp = Nothing Set Wbk = Nothing Set Zelle = Nothing End Sub


Anzeige
AW: Daten in E-Mail einfügen
15.04.2023 15:20:23
Andi
Wow, vielen Dank. Werd es morgen gleich ausprobieren. Eine kurze Frage noch:
Was heißt "freigeben der Speicher"?

Nochmal vielen Dank


AW: Daten in E-Mail einfügen
15.04.2023 15:43:29
Phio
Die Zeilen im Code nach "'Freigeben der Speicher" geben den Speicherplatz frei, der von den Objekten verwendet wurde, die im Code erstellt wurden.

Dadurch wird verhindert, dass der Code unnötig Speicherplatz verbraucht, und mögliche Speicherprobleme werden vermieden.


AW: Daten in E-Mail einfügen
15.04.2023 16:10:39
Andi
Vielen Dank


AW: Daten in E-Mail einfügen
15.04.2023 18:08:45
Andi
Hallo,

hab es jetzt schon durchgespielt und bekomme bei der Zeile "Zellenwert = Zelle.Value" folgenden Fehler:

"Laufzeitfehler 13 - Typen unverträglich"

Wo liegt der Fehler?

Vielen Dank

Schöne Grüße


Anzeige
AW: Daten in E-Mail einfügen
15.04.2023 18:17:11
Oberschlumpf
hi,

a) Zellenwert hast du als ZAHL festgelegt; Inhalt von Target.Value ist aber keine Zahl!

b) änder...
Dim Zellenwert As Integer
...um in...
Dim Zellenwert As Variant
...hilfts?

Ciao
Thorsten

313 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige