XL 2016 Problème envoi mail par macro suite passage Office 365

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Jean Michel

XLDnaute Nouveau
Bonjour à toutes et à tous (et bonne année),

Nous avions une macro dans Excel 2016 qui envoyait des mails sans difficulté.
Comme dans toute entreprise, nous avons un mail perso et les mails partaient d'une boite groupe du service.
Depuis une bascule récente vers Office 365, il semblerait que les boites mails perso aient basculé dans office 365 mais pas les adresses groupes, ce qui fait que lorsque le mail d'envoi s'affiche si l'emetteur ne clique pas en choisissant la boite groupe, il y a un message d'erreur.
(le corps du message adressé n'est pas repris dans le code ci-dessous mais c'est un simple copier/coller).
Est-ce que l'un d'entre vous a rencontré ce problème et a trouvé une solution pour éviter d'être obligé de choisir la boite d'envoi ? (code ci-dessous qui fonctionnait bien et qui fonctionne toujours SI on sélectionne la boite groupe lorsque le mail s'affiche)

Merci

Sub envoyermail()
Dim oOutlook As Object
Set oOutlook = CreateObject("outlook.Application")
Dim oMail As Object
Set oMail = oOutlook.CreateItem(0)
oMail.Sender = boitegroupe@entreprise.com
oMail.SendUsingAccount = boitegroupe@entreprise.com
oMail.SentOnBehalfOfName = boitegroupe@entreprise.com

With oMail
Dim oObjetWord As Object
Set oObjetWord = .GetInspector.WordEditor
.To = Range("b6")
.CC = Range("b11")
.Importance = 2
.Subject = "Commande XXX"
oObjetWord.Range(0).Paste
.Display
End With

End Sub
 
Vérification faite ce jour, tu as raison, les guillemets sont bien présents.

Bout de code à essayer :
VB:
Sub envoyermail()
Dim Account As Object
Dim Default As Boolean
    Box_Address = "boitegroupe@entreprise.com"
    With CreateObject("outlook.Application") ' Appel Outlook
        For Each Elem In .session.Accounts ' on regarde si Elem fait partie des comptes de l'utilisateur
            If Elem = Box_Address Then Set Account = Elem: Exit For
        Next
        If Account Is Nothing Then
            Set Account = .session.Accounts.Item(1) ' compte par défaut
            Default = True
        End If
        With .createitem(0)
            .Sender = Box_Address
            Set .SendUsingAccount = Account
            .SentOnBehalfOfName = Box_Address
            .To = Range("b6")
            .CC = Range("b11")
            .Importance = 2
            .Subject = "Commande XXX"
            If Default Then MsgBox "le compte pour l'envoi sera celui de" & vbLf & Account.UserName & " <" & Account.smtpaddress & ">"
            .Display ' indispensable içi avant d'appeler le getinspector
            With .GetInspector.WordEditor
                .Range(0).Paste
            End With
        End With
    End With

End Sub
 
Dernière édition:
Un autre test pour récupérer le compte par défaut :
VB:
Sub envoyermail()
Dim Account As Object
Dim Compte  As Object

    Box_Address = "boitegroupe@entreprise.com"
    With CreateObject("outlook.Application") ' Appel Outlook
        Set Default_Store = .GetNameSpace("MAPI").defaultstore
        For Each Compte In .Session.Accounts
           ' on choisit le compte par defaut
            If Compte.DeliveryStore.storeid = Default_Store.storeid Then
                Set Account = Compte
                Exit For
            End If
        Next
        If Account Is Nothing Then
            MsgBox "Compte par défaut non trouvé", vbCritical
            Exit Sub
        End If
        With .createitem(0)
            .Sender = Box_Address
            Set .SendUsingAccount = Account
            .SentOnBehalfOfName = Box_Address
            .To = Range("b6")
            '.CC = Range("b11")
            .Importance = 2
            .Subject = "Commande XXX"
            .display ' indispensable içi avant d'appeler le getinspector
            With .GetInspector.WordEditor
                .Range(0).Paste
            End With
        End With
    End With

End Sub
 
Bonsoir Fanch55,

Tout d'abord, je te demande de m'excuser pour cette réponse tardive, j'étais absent.

Hélas, ce nouvel essai ne fonctionne pas non plus.
J'en conclus que depuis le passage à Office 365, l'ancienne méthode ne fonctionne plus.

Merci pour ces échanges.

Bonne soirée.
 
Notre forum d’entraide est 100 % gratuit et le restera.
Aucune formation payante, aucun fichier à acheter, rien à vendre. Mais comme tout site, nous devons couvrir nos frais pour continuer à vous accompagner.
Soutenez-nous en souscrivant à un compte membre : c’est rapide, vous choisissez simplement votre niveau de soutien et le tour est joué.

Je soutiens la communauté et j’accède à mon compte membre

Discussions similaires

Réponses
11
Affichages
2 K
Réponses
1
Affichages
966
  • Question Question
XL 2016 Envoi mail
Réponses
0
Affichages
470
Retour