Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Mail-empfänger aus Zelle in VBA!

Forumthread: Mail-empfänger aus Zelle in VBA!

Mail-empfänger aus Zelle in VBA!
29.08.2005 11:40:08
Marcel
Hallo zusammen,
Kann man sich irgendwie bei
.Item.To = auf eine Zelle in dem Arbeitsblatt beziehen?
Der Empfänger ändert sollt variabel sein.
'E-mail senden
Sheets("Tabelle1").Select
ActiveSheet.Range("A1").Select
ActiveWorkbook.EnvelopeVisible = True
With ActiveSheet.MailEnvelope
.Introduction = "Muster"
.Item.To = "Mustermann@_____.de"
.Item.Subject = "Muster"
End With
Gruß Marcel
Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mail-empfänger aus Zelle in VBA!
29.08.2005 12:10:16
Sylvio
Hallo Marcel,
.Item.To = ActiveWorkbook.Sheets("Tabelle1").Cells(2, 1).Value
Cells(2, 1) das ist die Zelle A2 einfach da die email rein und schon sollte das gehen.
Gruß Sylvio
AW: Mail-empfänger aus Zelle in VBA!
29.08.2005 12:50:03
Marcel
super,
danke dir ;-)
Anzeige
;
Anzeige

Infobox / Tutorial

E-Mail-Empfänger aus Zelle in VBA verwenden


Schritt-für-Schritt-Anleitung

  1. Öffne das Excel-Dokument: Stelle sicher, dass Du die Tabelle geöffnet hast, in der sich die E-Mail-Adresse befindet.

  2. Aktiviere die Entwicklertools: Gehe zu „Datei“ > „Optionen“ > „Menüband anpassen“ und aktiviere die Entwicklertools.

  3. Öffne den VBA-Editor: Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.

  4. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsm)“ und wähle „Einfügen“ > „Modul“.

  5. Gib den folgenden Code ein: Dieser Code nimmt eine E-Mail-Adresse aus Zelle A2 und verwendet sie als Empfänger.

    Sub EmailSenden()
        ActiveWorkbook.EnvelopeVisible = True
        With ActiveSheet.MailEnvelope
            .Introduction = "Muster"
            .Item.To = ActiveWorkbook.Sheets("Tabelle1").Cells(2, 1).Value
            .Item.Subject = "Muster"
        End With
    End Sub
  6. Führe den Code aus: Drücke F5, um das Makro auszuführen. Die E-Mail wird an die in Zelle A2 angegebene Adresse gesendet.


Häufige Fehler und Lösungen

  • Fehler: „Objektvariable nicht festgelegt“
    Lösung: Überprüfe, ob die Zelle A2 tatsächlich eine gültige E-Mail-Adresse enthält.

  • Fehler: E-Mail wird nicht gesendet
    Lösung: Stelle sicher, dass Dein E-Mail-Client (z. B. Outlook) korrekt konfiguriert ist und geöffnet ist, während das Makro ausgeführt wird.

  • Fehler: Falsche Zellreferenz
    Lösung: Achte darauf, dass Du die richtige Zellreferenz verwendest. In diesem Beispiel ist es Cells(2, 1) für Zelle A2.


Alternative Methoden

  • Direktes Verweisen auf die Zelle: Anstelle von ActiveWorkbook.Sheets("Tabelle1").Cells(2, 1).Value kannst Du auch Range("A2").Value verwenden, wenn Du sicher bist, dass Du immer auf die gleiche Zelle zugreifst.

  • Verwendung von InputBox: Du kannst die E-Mail-Adresse auch direkt über eine Eingabeaufforderung abfragen:

    Sub EmailMitInputBox()
        Dim emailAdresse As String
        emailAdresse = InputBox("Bitte E-Mail-Adresse eingeben:")
        ActiveWorkbook.EnvelopeVisible = True
        With ActiveSheet.MailEnvelope
            .Introduction = "Muster"
            .Item.To = emailAdresse
            .Item.Subject = "Muster"
        End With
    End Sub

Praktische Beispiele

  • E-Mail an mehrere Empfänger: Du kannst mehrere E-Mail-Adressen durch Kommas getrennt in einer Zelle angeben, und dann den Code entsprechend anpassen:

    .Item.To = Join(Application.Transpose(Range("A1:A3")), ";")
  • Zusätzliche Informationen an die E-Mail anhängen: Füge weitere Informationen aus anderen Zellen in den E-Mail-Text ein.

    .Introduction = "Muster" & vbCrLf & "Weitere Infos: " & Range("B1").Value

Tipps für Profis

  • Fehlerbehandlung einfügen: Implementiere eine Fehlerbehandlung, um unerwartete Probleme zu vermeiden:

    On Error Resume Next
    ' Dein Code hier
    On Error GoTo 0
  • E-Mail-Vorlagen verwenden: Du kannst eine E-Mail-Vorlage erstellen und die Variablen dynamisch einfügen, um den Prozess zu automatisieren.


FAQ: Häufige Fragen

1. Kann ich das Makro anpassen, um CC oder BCC hinzuzufügen?
Ja, Du kannst die .Item.CC und .Item.BCC Eigenschaften verwenden, um zusätzliche Empfänger hinzuzufügen.

2. Funktioniert dies in Excel 2016 und später?
Ja, das Beispiel funktioniert sowohl in Excel 2016 als auch in neueren Versionen. Achte darauf, dass die Entwicklertools aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige