jhaustein
Goto Top

Email aus access mit Outlook footer

Hallo Gemeinschaft,

sende über ein coding aus access über outlook mails - gibt es eine Möglichkeit, dass ich die Signatur eines email Kontos verwenden kann - also, dass ich praktisch über das Konto sende

Set objOutlook = CreateObject("Outlook.Application")
Set objOutlookMsg = objOutlook.CreateItem(0)

Content-ID: 6176021894

Url: https://administrator.de/forum/email-aus-access-mit-outlook-footer-6176021894.html

Ausgedruckt am: 22.12.2024 um 18:12 Uhr

6017814589
6017814589 01.03.2023 aktualisiert um 15:26:49 Uhr
Goto Top
Ja. Die Default Signatur wird auch bei solch erstellen Mails per Default angehängt.
Zum Senden einer Mail über einen bestimmten Account nutze man die Eigenschaft SendUsingAccount.
set objOutlook =  CreateObject("Outlook.Application")  
With objOutlook.CreateItem(0)
    set .SendUsingAccount = objOutlook.Session.Accounts.Item("user@domain.de")  
    .Display
End With
godlie
godlie 01.03.2023 um 15:13:33 Uhr
Goto Top
Hallo,

also so einfach kommste da nicht ran, müsstest ja mit dem UserProfile das Outlook starten ....

Aber ein anderer Ansatz wäre, die Signature Datei an den Mailbody zu hängen.

Bei aktuellen Outlooks ( 2016 / o365 ) sollte sich die Datei hier finden:

C:\Users\Username\AppData\Local\Packages\Microsoft.Office.Desktop_8wekyb3d8bbwe\LocalCache\Roaming\Microsoft\Signatures

Da musst du dann halt schaun wie du die HTML oder RTF reingefrimmelt bekommst.

grüße
jhaustein
jhaustein 01.03.2023 um 15:33:13 Uhr
Goto Top
@6017814589 - geht leider nicht
6017814589
6017814589 01.03.2023 aktualisiert um 15:41:21 Uhr
Goto Top
Zitat von @jhaustein:

@6017814589 - geht leider nicht
Senden tust du dann aber mit diesem Account, wenn du dann noch die Default-Signatur in Outlook auf die gewünschte einstellst, bist du fertig, Signatur erscheint auch in diesen Mails. Klappt hier problemlos.
Du musst schon sagen ob das separate Outlook Profile sind oder unterschiedliche Accounts in ein und dem selben Profil. Deine Fragen sind wie immer zu kurz und ohne alle nötigen Infos, wie immer bescheiden ...
jhaustein
jhaustein 01.03.2023 um 15:53:16 Uhr
Goto Top
Ist nur ein Profil - wo stellst du das default profil ein
6017814589
6017814589 01.03.2023 aktualisiert um 15:56:28 Uhr
Goto Top
Zitat von @jhaustein:
Ist nur ein Profil - wo stellst du das default profil ein
Standard-Signatur : Einstellungen > EMail > Signaturen
Default Outlook Profil: WIN+R > "control" eintippen, > E-Mail > Profile
jhaustein
jhaustein 01.03.2023 um 16:12:41 Uhr
Goto Top
wo mache ich das ?
Standard-Signatur : Einstellungen > EMail > Signaturen
jhaustein
jhaustein 01.03.2023 um 16:14:32 Uhr
Goto Top
in Outlook unter Signaturen ist eine Standardsignatur mit dem entsprechenden Konto eingestellt - das greift aber nicht
6017814589
6017814589 01.03.2023 aktualisiert um 16:32:19 Uhr
Goto Top
screenshot

Klappt hier problemlos mit Outlook 2021 Pro Plus.

screenshot
jhaustein
jhaustein 01.03.2023 um 16:34:15 Uhr
Goto Top
genauso habe ich es auch eingestellt gehabt
6017814589
6017814589 01.03.2023 aktualisiert um 16:48:03 Uhr
Goto Top
Dann ist dein Outlook oder Profil wohl put, geht ja Demo s.o..
sabines
sabines 01.03.2023 um 17:07:00 Uhr
Goto Top
Zitat von @6017814589:

Dann ist dein Outlook oder Profil wohl put, geht ja Demo s.o..

Moin,

funktioniert das auch noch, wenn Du Text im Body mitlieferst?
Würde mich wundernface-wink

Grüße
6017814589
6017814589 01.03.2023 aktualisiert um 17:13:52 Uhr
Goto Top
Zitat von @sabines:
Moin,

funktioniert das auch noch, wenn Du Text im Body mitlieferst?
Würde mich wundernface-wink
Davon hat er nichts gesagt, klappt aber auch wenn man die Body-Eigenschaft bei der Zuweisung wieder hinten anhängt.
jhaustein
jhaustein 01.03.2023 um 17:13:41 Uhr
Goto Top
Text liefere ich mit - hast du noch eine Idee @sabines

With objOutlookMsg

Set objOutlookRecip = .Recipients.Add("test@web.de")  
objOutlookRecip.Type = olTo

.Subject = "Verwaltungsgebühr "  
.Body = Anredeemail & vbCrLf & vbCrLf & "anbei erhalten Sie unsere Verwaltungskostenrechnung." & vbCrLf & vbCrLf & "Mit freundlichen Grüßen" & vbCrLf & vbCrLf & ""  
.Importance = olImportanceNormal
.Attachments.Add strDatei
.Send
 End With
6017814589
6017814589 01.03.2023 aktualisiert um 17:16:42 Uhr
Goto Top
Zitat von @jhaustein:

Text liefere ich mit - hast du noch eine Idee @sabines
Wenn du den Body komplett überschreibst ist ja klar das die Signatur weg ist 🙈. Den bereits vorhandenen Body musst du hinten anhängen
.Body = "Dein Text" & vbNewline & .Body  
jhaustein
jhaustein 01.03.2023 um 17:17:58 Uhr
Goto Top
gemacht - klappt leider nicht
jhaustein
jhaustein 01.03.2023 aktualisiert um 17:29:37 Uhr
Goto Top
wie sabines schon schrieb - in dem Moment, wo ich den Body fülle, ist die Signatur nicht mehr da

da hilft dieser code leider auch nicht
.Body = "Dein Text" & vbNewline & .Body  
jhaustein
jhaustein 02.03.2023 um 06:09:11 Uhr
Goto Top
Guten Morgen Gemeinschaft,

Hat vielleicht noch jemand eine Idee wie ich dieses Problem lösen kann?

Lieben Gruß
6017814589
Lösung 6017814589 02.03.2023 aktualisiert um 11:29:22 Uhr
Goto Top
Bei dir scheint aber auch nix zu gehen face-big-smile. Hier klappt auch das wie gewünscht. Wenn bei dir eben nicht, dann lies die Textdateien der Signatur im Verzeichnis %appdata%\Microsoft\Signatures mit dem Filesystemobject aus und füge den Inhalt in den Body an, fertig.

Sub NewOutlookMail()
Dim objOutlook as Object, fso as Object, objShell as Object, signaturename as String, signatureContent as Variant ,signatureFile as String
Set objOutlook = CreateObject("Outlook.Application")
Set fso = CreateObject("Scripting.Filesystemobject")
Set objShell = CreateObject("Wscript.Shell")

signaturename = "Standard"
signatureFile = objShell.ExpandEnvironmentStrings("%APPDATA%") & "\Microsoft\Signatures\" & signaturename & ".txt"
If not fso.FileExists(signatureFile) Then
	MsgBox "Signatur nicht gefunden!",vbExclamation
	Exit Sub
End If
signatureContent = fso.OpenTextFile(signatureFile,1,False,-1).ReadAll

With objOutlook.CreateItem(0)
	Set .SendUsingAccount = objOutlook.Session.Accounts.Item("user@domain.de")
	.Subject = "BlaBlub"
	.Body = "MeinText" & vbNewLine & &vbNewLine & signatureContent
	.Display
End With
set fso = Nothing
set objOutlook = Nothing
set objShell = Nothing
End Sub
jhaustein
jhaustein 02.03.2023 um 14:07:00 Uhr
Goto Top
super klasse - funktioniert toll
sabines
sabines 04.03.2023 um 11:59:51 Uhr
Goto Top
Muss ich mir auch mal anschauen face-wink