Outlook.MailItem kennt keine Property SentOnBehalfOfName

Moderator: ModerationP

Outlook.MailItem kennt keine Property SentOnBehalfOfName

Beitragvon $3v|\| » 10. Okt 2018, 15:05

Hallo
Ich verwende Outlook 2013 und Exchange 2016

ich möchte bei einer E-Mail die Absender-Adresse ändern auf ein Konto bei dem ich das Recht habe zu senden.
Sonst habe ich in diesem anderen Konto keine Rechte.
Daher kann ich Funktion SendUsingAccount nicht verwenden, da mein Outlook nur mein Account kennt.
(siehe z.B. http://www.access-im-unternehmen.de/1124)
Von Hand funktioniert es auch: neue E-Mail -> Optionen -> Feld anzeigen -> von -> von Hand eintragen -> abschicken
Eigentlich sollte das kein Problem mit SentOnBehalfOfName sein (siehe https://docs.microsoft.com/en-us/office ... halfofname)

Allerdings: wenn ich das MailItem deklariere findet VBA die Eigenschaft nicht!
Wenn ich es als Object deklariere, dann wird es gefunden - ist aber unsauber!

Code: Alles auswählen
Option Explicit
Private Sub Click()
    Dim om_Item As Outlook.MailItem
    Dim om_Item2 As Object
    Dim oi_Inspector As Outlook.Inspector
   
    ' Verweis auf gerade offene E-Mail
    Set oi_Inspector = Application.ActiveInspector()
    Set om_Item = oi_Inspector.CurrentItem
    Set om_Item2 = oi_Inspector.CurrentItem

     om_Item2.SentOnBehalfOfName = "gott@himmel.de"
    ' om_Item.SentOnBehalfOfName = "gott@himmel.de" ' das geht nicht! WARUM?
 End Sub   
$3v|\|
 

Re: Outlook.MailItem kennt keine Property SentOnBehalfOfName

Beitragvon Michael Bauer » 11. Okt 2018, 08:34

Hallo,

wie lautet denn die Fehlermeldung?
Michael Bauer
Add-Ins für Microsoft Outlook
Benutzeravatar
Michael Bauer
Im Profil kannst Du frei den Rang ändern
 
Beiträge: 6374
Registriert: 03. Feb 2005, 15:07
Wohnort: Vollersode

Re: Outlook.MailItem kennt keine Property SentOnBehalfOfName

Beitragvon $3v|\| » 11. Okt 2018, 11:31

Ich glaub ich werd wahnsinnig!

Die letzten zwei Tage hat es nicht funktioniert!
- Die Autovervollständigung von "Microsoft Visual Basic for Applications" hat "SentOnBehalfOfName" nicht erkannt
- Beim Debuggen hat das Element "om_Item" im Überwachungsausdrücke-Fenster keinen Eintrag "SentOnBehalfOfName"
- Wenn ich es im Code verwendet habe, dann habe ich die Meldung "Das Objekt unterstütz diese Eigenschaft nicht" (oder so ähnlich) bekommen

In der Nacht von gestern auf heute hat mein Windows 7 Updates installiert (ich glaube zwar nicht dass das einen Einfluss hatte - aber möglich ist alles)
Und heute funktioniert es plötzlich!!!

Allerdings habe ich nun folgende Probleme:
- es funktioniert nur wenn das "Von"-Feld nicht sichtbar ist
- wenn das "Von"-Feld sichtbar ist, dann wird zwar der Wert von "SentOnBehalfOfName" geändert
und er merkt sich auch den Wert bis zu einem erneuten aufrufen der Testfunktion
aber der Wert im E-Mail-Editor ändert sich nicht.
- wenn das "Von"-Feld nicht sichtbar ist und wenn der Wert von "SentOnBehalfOfName" geändert wird,
dann wird das "Von"-Feld nicht automatisch eingeblendet.
Auch "om_Item.Display" bringt nichts.
Erst wenn ich ein anderes Feld ändere (gleicher Wert zurückschreiben funktioniert auch nicht),
dann wird das "Von"-Feld (mit dem richtigen Wert) eingeblendet.

Gibt es eine andere Möglichkeit das "Von"-Feld per VBA aus und wieder einzublenden?

Code: Alles auswählen
Public Sub testsent()
    Dim om_Item As Outlook.MailItem
    'Dim om_Item2 As Object
    Dim oi_Inspector As Outlook.Inspector
   
    Set oi_Inspector = Application.ActiveInspector()
    Set om_Item = oi_Inspector.CurrentItem
    'Set om_Item2 = oi_Inspector.CurrentItem
         
    Stop
    ' "Von" Feld muss ausgeblendet sein
    om_Item.SentOnBehalfOfName = "gott@himmel.de"
    om_Item.Display    ' bringt hier nichts
    om_Item.To = om_Item.To & " "    ' sorgt dafür, dass das "Von" Feld eingeblendet ist -> sehr unsauberer workaround!
    om_Item.SentOnBehalfOfName = "devil@hell.com"   ' wenn das "Von" Feld nun sichtbar ist bringen Änderungen nichts mehr - aber der Wert wird dennoch in das "om_Item" Objekt gespeichert
    om_Item.To = om_Item.To & " "
    om_Item.SentOnBehalfOfName = ""   ' auch löschen bringt nichts
    om_Item.To = om_Item.To & " "
    om_Item.SentOnBehalfOfName = "zeus@olymp.net"  ' dieser Wert wird in das Objekt gespeichert - aber in dem E-Mail Editor wird ein anderer angezeigt
    om_Item.To = om_Item.To & " "
End Sub
$3v|\|
 

Re: Outlook.MailItem kennt keine Property SentOnBehalfOfName

Beitragvon $3v|\| » 18. Okt 2018, 13:51

Für die Nachwelt, falls jemand das gleiche Problem hat:
Nachdem ich ewig viel über die nicht mehr zu verwendende Commandbar und über die Ribbon-Bar gelesen habe, bei dem ich nicht mal ansatzweise durchgeblickt habe, hab ich endlich eine Lösung gefunden um per VBA in einer Outlook E-Mail die "von" Leiste ein- und auszublenden:
Code: Alles auswählen
Dim oi_Inspector As Outlook.Inspector
Set oi_Inspector = Application.ActiveInspector()
oi_Inspector.CommandBars.ExecuteMso ("ShowFrom")
$3v|\|
Neuling
 
Beiträge: 1
Registriert: 11. Okt 2018, 11:34


Zurück zu Outlook Forum (provisorisch)

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste