Clever-Excel-Forum

Normale Version: Email Versand aus Excel
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Seiten: 1 2
Lieber Ralf,

FACKFull Ack = Full Acknowledge


Lieber Moderator,

ich bin nicht der Code-Monkey vom OP, auf SO würde ich ein Close-Vote abgeben, weil

Zitat:Questions should be closed by casting close votes if:
they are sufficiently similar to existing questions and would be answered identically to them.


Salute
Storax
Hallöchen,

hier mal was zum Rest:

Zitat:In der Tabelle Daten in Spalte j werden die Personen per Dropdown eingetragen, in der Tabelle Stammdaten sind diese in Spalte G aufgelistet und in Spalte H die dazugehörigen Email Adressen. Dazu soll auch noch der Text aus Tabelle Daten Spalte I in die Email als Text eingetragen werden und direkt versendet werden.

Hole Dir die zur Person gehörenden Daten auf Basis der Dropdown-Auswahl per SVERWEIS dazu. Dann kannst Du den E-Mail-Versand mit festen Zelladressen programmieren statt der Variablen, die Storax in seinem Beispiel verwendet hat.

Alternativ müsstest Du per VBA mit FIND schauen, in welcher Zeile Deine Person ist und die Daten dann aus dieser Zeile per VBA holen … SVERWEIS ist da sicher einfacher für Dich.
Übrigens, auch schon oft erschienen ist der Hinweis, dass Listen auf Basis von Personennamen irgendwann ein Problem bekommen, wenn ein zweiter Max Mustermann hinzukommt ...
PHP-Code:
Sub Worksheet_Change(ByVal Target As Range)
 
   Dim rngUser As Range
    Dim strUser 
As StringstrMailaddress As String
    
    With Target
        
        strUser 
Intersect(TargetRange("j:j"))
 
   End With
    
    Set rngUser 
Sheets("Stammdaten").Columns("g:g").Find(strUserLookIn:=xlValues)
 
   
    If rngUser Is Nothing Then
        MsgBox 
"Keine Email-Adresse zum User '" strUser "' vorhanden!"vbExclamation
        Exit Sub
    End 
If
 
   
    strMailaddress 
Sheets("Stammdaten").Cells(rngUser.Column8)
 
   Call SendMail(strMailaddress)
 
       
End Sub
Sub SendMail
(strMailaddress As String)

 
   Dim objOL As Object
    
    Set objOL 
CreateObject("Outlook.Application")

 
   With objOL.CreateItem(0)
 
       .To strMailaddress
        
.Subject "Betreff"
 
       .Body "Es gibt einen neuen Eintrag im Elektronischen Schichtbuch DL382 Welle "
 
       .Display
        
.Send
    End With

    Set objOL 
Nothing
End Sub 
Da habe ich ja was ins rollen gebracht.
Sorry bin eben ein Beginner.
Habe es jetzt so versucht, Outlook wird auch geöffnet aber es wird keine EMAIL aus der Tabelle Stammdaten Spalte H eingetragen. Den Text aus Tabelle Daten Spalte "I" ist noch nicht umgesetzt.
Habe einen Fehler schon selber gefunden :19:

strMailaddress = Sheets("Stammdaten").Cells(rngUser.Row, 9)

Jetzt fehlt nur noch die Funktion den Text Text aus Tabelle Daten Spalte I mit in die EMAIL eintragen.
Hallöchen,

wo ist die Schwierigkeit? Die Mailadresse holst Du Dir mit

strMailaddress = Sheets("Stammdaten").Cells(rngUser.Column, 8)

Im Prinzip kannst Du so auch den Body Bilden, z.B.

...
strBody = "Es gibt einen neuen Eintrag im Elektronischen Schichtbuch DL382 Welle "
strBody = strBody & vblf & …..Cells(…., 7)
...
Call SendMail(strMailaddress, strBody)


Sub SendMail(strMailaddress As String, strBody as String)

usw.
Seiten: 1 2