MAC - Quitter Mail en VBA & rendre focus sur feuille active?

Bonsoir le forum,

Une fois cette macro lancée, elle aboutie sur un MsgBox...

Problème, on est obligé de cliquer sur le MsgBox ou la feuille "Devis" pour récupérer le focus...

Le code :

Sub Ouvrir_Mail()

    ConditionsCommerciales = "Mac OS X Mountain Lion:Users:iDev4s:Documents:*Documents:Conditions Commerciales" & ".pdf"
    RIBCPro = "Mac OS X Mountain Lion:Users:iDev4s:Documents:*Documents:R.I.B Compte Pro CA" & ".pdf"
    AttestationALLIANZ = "Mac OS X Mountain Lion:Users:iDev4s:Documents:*Documents:Attestation d'assurance ALLIANZ" & ".pdf"

 '-------------------------------------------------- PARTIE "DEVIS" --------------------------------------------------------

If Range("Y31").Value = 1 Then
            If Range("H1").Value = "Mode Facture" Then
                        MsgBox "Vous êtes en ""Mode Facture"", vous ne pouvez pas envoyer ""Devis"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""Devis"" par eMail, veuillez redémarrer l'application en ""Mode Devis"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, le Devis des prestations pour lesquelles vous m'avez contacté." & vbCrLf _
                        & "Si vous souhaitez passer commande, merci de me retourner le Devis complété" & vbCrLf _
                        & "par la mention \""Bon pour accord\"" ainsi que les Conditions Commerciales complétées" & vbCrLf _
                        & "par la mention \""Lu et accepté\"", le tout dûment signé sans quoi votre commande" & vbCrLf _
                        & "ne serait pas considérée comme acceptée." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & "En attente de votre réponse." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Devis N°" & ActiveSheet.[F9] & ActiveSheet.[G9] & "_" & ActiveSheet.[I8], _
                        toaddress:="", _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:=(ConditionsCommerciales), _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox "Le Devis ""N°" & Range("F9").Value & ActiveSheet.[G9] & "_" & Range("I8").Value & Chr(34) & " a bien été envoyé au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '------------------------------------------------- PARTIE "FACTURE" -------------------------------------------------------

ElseIf Range("Y31").Value = 2 Then
            If Range("H1").Value = "Mode Devis" Then
                        MsgBox "Vous êtes en ""Mode Devis"", vous ne pouvez pas envoyer ""Facture"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""Facture"" par eMail, veuillez redémarrer l'application en ""Mode Facture"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, la Facture des prestations pour lesquelles vous m'avez contacté." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & "En attente de votre règlement." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Facture N°" & ActiveSheet.[F9] & ActiveSheet.[R21] & "_" & ActiveSheet.[I8], _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:="", _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox "La Facture ""N°" & Range("F9").Value & Range("R21").Value & "_" & Range("I8").Value & Chr(34) & " a bien été envoyée au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '----------------------------------------- PARTIE "DEVIS" & "FACTURE" -------------------------------------------

ElseIf Range("Y31").Value = 3 Then
            If Range("H1").Value = "Mode Facture" Then

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, le Devis et la Facture des prestations pour lesquelles vous m'avez contacté." & vbCrLf _
                        & "Merci de me retourner le Devis complété par la mention \""Bon pour accord\"" ainsi que" & vbCrLf _
                        & "les Conditions Commerciales complétées par la mention \""Lu et accepté\""," & vbCrLf _
                        & "le tout dûment signé et accompagné du règlement de la Facture." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Devis et Facture N°" & ActiveSheet.[F9] & ActiveSheet.[R21] & "_" & ActiveSheet.[I8], _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:=(ConditionsCommerciales), _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox "Le Devis et la Facture ""N°" & Range("F9").Value & Range("R21").Value & "_" & Range("I8").Value & Chr(34) & " ont bien été envoyés au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '-------------------------------------------- PARTIE "SITUATION 1" ---------------------------------------------

ElseIf Range("Y31").Value = 4 Then
            If Range("H1").Value = "Mode Devis" Then
                        MsgBox "Vous êtes en ""Mode Devis"", vous ne pouvez pas envoyer ""Situation 1"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""Situation 1"" par eMail, veuillez redémarrer l'application en ""Mode Facture"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, la première Situation des prestations pour lesquelles vous m'avez contacté." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & "En attente de votre premier règlement." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Situation 1 N°" & ActiveSheet.[F9] & ActiveSheet.[R21] & "_" & ActiveSheet.[I8], _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:="", _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox "La Situation 1 ""N°" & Range("F9").Value & Range("R21").Value & "_" & Range("I8").Value & Chr(34) & " a bien été envoyée au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '---------------------------------------- PARTIE "SITUATION 2" -------------------------------------------------

ElseIf Range("Y31").Value = 8 Then
            If Range("H1").Value = "Mode Devis" Then
                        MsgBox "Vous êtes en ""Mode Devis"", vous ne pouvez pas envoyer ""Situation 2"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""Situation 2"" par eMail, veuillez redémarrer l'application en ""Mode Facture"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, la deuxième Situation des prestations pour lesquelles vous m'avez contacté." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & "En attente de votre deuxième règlement." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Situation 2 N°" & ActiveSheet.[F9] & ActiveSheet.[R21] & "_" & ActiveSheet.[I8], _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:="", _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox "La Situation 2 ""N°" & Range("F9").Value & Range("R21").Value & "_" & Range("I8").Value & Chr(34) & " a bien été envoyée au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '------------------------------------------ PARTIE "SITUATION 3" -----------------------------------------------

ElseIf Range("Y31").Value = 9 Then
            If Range("H1").Value = "Mode Devis" Then
                        MsgBox "Vous êtes en ""Mode Devis"", vous ne pouvez pas envoyer ""Situation 3"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""Situation 3"" par eMail, veuillez redémarrer l'application en ""Mode Facture"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, la troisième et dernière Situation des prestations pour lesquelles vous m'avez contacté." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & "En attente de votre troisième et dernier règlement." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Situation 3 N°" & ActiveSheet.[F9] & ActiveSheet.[R21] & "_" & ActiveSheet.[I8], _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:="", _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox "La Situation 3 ""N°" & Range("F9").Value & Range("R21").Value & "_" & Range("I8").Value & Chr(34) & " a bien été envoyée au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '-------------------------------------------- PARTIE "METRES" --------------------------------------------------

ElseIf Range("Y31").Value = 5 Then
            If Range("H1").Value = "Mode Facture" Then
                        MsgBox "Vous êtes en ""Mode Facture"", vous ne pouvez pas envoyer ""Métrés"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""Métrés"" par eMail, veuillez redémarrer l'application en ""Mode Devis"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, la liste des matériaux et fournitures nécessaires pour le chantier de " & ActiveSheet.[I8] & "." & vbCrLf _
                        & "Merci de me faire ce Devis assez rapidement..." & vbCrLf _
                        & "Pour tous renseignements, mon numéro de mobile: 06 XX XX XX XX" & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Demande de Devis...", _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:="", _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox "Les Métrés ""N°" & Range("F9").Value & "XXX" & "_" & Range("I8").Value & Chr(34) & " ont bien été envoyés au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '------------------------------------------ PARTIE "ATTES. ALLIANZ" ---------------------------------------------

ElseIf Range("Y31").Value = 6 Then
            If Range("H1").Value = "Mode Devis" Then
                        MsgBox "Vous êtes en ""Mode Devis"", vous ne pouvez pas envoyer ""Attes. Allianz"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""Attes. Allianz"" par eMail, veuillez redémarrer l'application en ""Mode Facture"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, l'attestation d'assurance décennale de l'entreprise." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="Attestation d'assurance ALLIANZ", _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:=(AttestationALLIANZ), _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox """Attes. Allianz"" a bien été envoyé au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

            '----------------------------------------- PARTIE "R.I.B COMPTE PRO CA" -----------------------------------------

ElseIf Range("Y31").Value = 7 Then
            If Range("H1").Value = "Mode Devis" Then
                        MsgBox "Vous êtes en ""Mode Devis"", vous ne pouvez pas envoyer ""R.I.B Compte Pro CA"" par eMail !" & vbCrLf & vbLf & "Pour pouvoir envoyer ""R.I.B Compte Pro CA"" par eMail, veuillez redémarrer l'application en ""Mode Facture"".", vbExclamation, "Avertissement !"

            Else
                        MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
                        & vbLf _
                        & "Ci-joint, le relevé d'identité bancaire (RIB) de l'entreprise, pour que vous puissiez procéder au règlement par virement bancaire." & vbCrLf _
                        & "Pour plus de renseignements, vous pouvez me joindre au 06 XX XX XX XX." & vbCrLf _
                        & "En attente de votre règlement." & vbCrLf _
                        & vbLf _
                        & "Cordialement." & vbCrLf _
                        & vbLf _
                        & vbLf _
                        & "Mr Xxxxxxxxx Xxxxxxx" _
                        & vbLf _
                        & vbLf _
                        & vbLf, _
                        mailsubject:="R.I.B Compte Pro", _
                        toaddress:=Range("R33").Value, _
                        ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
                        bccaddress:="", _
                        attachment:=(RIBCPro), _
                        displaymail:=True
            End If

            Sheets("Devis").Select

            MsgBox """R.I.B Compte Pro CA"" a bien été envoyé au format (.PDF) à l'adresse : " & vbLf & vbLf & Range("R33").Value, vbInformation, "Confirmation d' Envoie"

End If

Range("R33").Select

ActiveWorkbook.Save

End Sub

Bonjour

Problème, on est obligé de cliquer sur le MsgBox ou la feuille "Devis" pour récupérer le focus...

Tout cela est normal. Ce que tu veux c'est juste une boite à message d'information ?

Si oui, tu peux utiliser la barre de statut d'Excel genre ceci :

application.statusbar="ton texte" et remettre la barre d'état à son état "naturel" par application.statusbar=false

Autre solution, par une userform qui affiche un message pendant un certain temps. cette solution est plus lourde évidemment

Crdlt

Bonsoir Dan,

Désolé pour cette réponse tardive mais j'étais en déplacement professionnel ...

En fait, la macro ouvre l'app Mail, remplie le corp du mail...

J'aimerais (si celà est possible biensûr !):

1) La macro ouvre l'app Mail.

2) Remplie le corp du mail.

3) Une fois le mail envoyé (par l'utilisateur seulement), quitter l'app Mail (par la macro).

4) simuler un clic sur la fenêtre Excel pour récupérer le focus.

J'espère avoir étais assez clair...

Bonjour et bonne année,

Un lien à consulter.

Cdlt;.

http://www.rondebruin.nl/mac/mail.htm

Merci Jean-Eric mais je connais déjà le site de Ron de Bruin…

La macro que j'ai postée a étée crée avec les exemples de Ron de Bruin…

Merci quand même !

Bonjour

En fait, la macro ouvre l'app Mail, remplie le corp du mail...

J'aimerais (si celà est possible biensûr !):

1) La macro ouvre l'app Mail.

2) Remplie le corp du mail.

3) Une fois le mail envoyé (par l'utilisateur seulement), quitter l'app Mail (par la macro).

4) simuler un clic sur la fenêtre Excel pour récupérer le focus.

C'est pas tout à fait la demande initiale,...qui parle de message box.

En gros qu'est ce que le code ne fait pas et que tu voudrais qu'il fasse.

S'il ne faut pas cliquer sur les Msgbox, faut les supprimer.

Crdlt

Salut Dan,

Dan a écrit :

C'est pas tout à fait la demande initiale,...qui parle de message box.

En gros qu'est ce que le code ne fait pas et que tu voudrais qu'il fasse.

S'il ne faut pas cliquer sur les Msgbox, faut les supprimer.

Si en fait, c'est la même demande...

Mais je me suis mal fait comprendre...

Si tu veux, quand la macro ouvre l'app Mail, quelle remplie le mail et que j'envoie le mail en cliquant sur "Envoyer",

la fenêtre de Mail reste au premier plan...

Je suis obligé de cliquer sur la croix rouge de l'app Mail pour la quitter et ensuite de re-cliquer sur la fenêtre d' Excel pour qu'il re-passe au premier plan et que donc j'ai le focus sur le MsgBox...

En gros, le code que je cherche a rajouter :

If mailEnvoyé = True Then
[tab]appMail = Quitter[/tab]
[tab]appExcel.Display = True[/tab]

ElseIf appMail = Quitter Then
[tab]appExcel.Display = True[/tab]
EndIf

Re,

En fait tu veux contrôler Mail depuis excel. Pas évident cela car Mail est un logiciel Appel et excel un logiciel Microsoft

Pourquoi ne pas simplement réactiver excel après l'envoi du courrier comme ceci :

Thisworkbook.Activate
Sheets("Devis").Activate

Salut Dan,

Les deux lignes de code que tu proposes ne donne pas le résultat attendu...

J'ai peaufiné se script qui fonctionne pour "Quitter" Mail.app avant de passer a "ThisWorkbook.Activate".

Il y a juste la ligne que j'ai surligné qui ne fonctionne pas...

En gros, je voudrais passer au script SEULEMENT si le mail est envoyé... sinon ne rien faire...

Une idée peut être ???

Dim scriptToRun As String 

If scriptToRun = scriptToRun & "send" = True Then

scriptToRun = scriptToRun & "tell application " & _
               Chr(34) & "Mail" & Chr(34) & Chr(13)
scriptToRun = scriptToRun & "quit" & Chr(13)
scriptToRun = scriptToRun & "end tell"

On Error Resume Next
MacScript (scriptToRun)
On Error GoTo 0

ThisWorkbook.Activate

Else

End If

Re,

Je viens au nouvelles....

Toujours pas une petit idée ???

Re

Ta demande oblige à utiliser les modules de classe (je pense) et/ou à contrôler l'OS Mac.

Possible d'avoir le dernier code complet que tu as posté ou tout au moins savoir où tu l'as placé dans le premier code posté ?

Salut Dan,

Voiçi la Fonction utilisée:

Function MailFromMacWithMail(bodycontent As String, mailsubject As String, _
                             toaddress As String, ccaddress As String, bccaddress As String, _
                             attachment As String, displaymail As Boolean)
'Ron de Bruin, function to Mail with Apple Mail, 10-Jan-2012

    Dim scriptToRun As String

    scriptToRun = scriptToRun & "tell application " & _
                  Chr(34) & "Mail" & Chr(34) & Chr(13)

    scriptToRun = scriptToRun & _
                  "set NewMail to make new outgoing message with properties " & _
                  "{content:""" & bodycontent & """, subject:""" & _
                  mailsubject & """ , visible:true}" & Chr(13)

    scriptToRun = scriptToRun & "tell NewMail" & Chr(13)

    If toaddress <> "" Then scriptToRun = scriptToRun & _
       "make new to recipient at end of to recipients with properties " & _
       "{address:""" & toaddress & """}" & Chr(13)

    If ccaddress <> "" Then scriptToRun = scriptToRun & _
       "make new cc recipient at end of cc recipients with properties " & _
       "{address:""" & ccaddress & """}" & Chr(13)

    If bccaddress <> "" Then scriptToRun = scriptToRun & _
       "make new bcc recipient at end of bcc recipients with properties " & _
       "{address:""" & bccaddress & """}" & Chr(13)

    If attachment <> "" Then
        scriptToRun = scriptToRun & "tell content" & Chr(13)
        scriptToRun = scriptToRun & "make new attachment with properties " & _
                      "{file name:""" & attachment & """ as alias} " & _
                      "at after the last paragraph" & Chr(13)
        scriptToRun = scriptToRun & "end tell" & Chr(13)
    End If

    If displaymail = False Then
      scriptToRun = scriptToRun & "send" & Chr(13)
    Else
      scriptToRun = scriptToRun & "set visible to true" & Chr(13)
      scriptToRun = scriptToRun & "activate" & Chr(13)
    End If

    scriptToRun = scriptToRun & "end tell" & Chr(13)
    scriptToRun = scriptToRun & "end tell"

    If Len(toaddress) + Len(ccaddress) + Len(bccaddress) = 0 Or mailsubject = "" Then
        MsgBox "Le champ To, Cc ou Sujet n'est  pas renseigné pour cet eMail!"
        Exit Function
    Else
        On Error Resume Next
        MacScript (scriptToRun)
        On Error GoTo 0
    End If
End Function

Et la macro avec la ligne surlignée qui ne fonctionne pas:

Sub Ouvrir_Mail()

Dim scriptToRun As String

ConditionsCommerciales = "Mac OS X Mountain Lion:Users:iDev4s:Documents:*Documents:Conditions Commerciales" & ".pdf"

If Not IsEmpty(Range("I8")) = True Then

   MailFromMacWithMail bodycontent:="Bonjour " & Range("I8").Value & "," & vbCrLf _
   & vbLf _
   & "Ci-joint, le Devis des prestations pour lesquelles vous m'avez contacté." & vbCrLf _
   & "Si vous souhaitez passer commande, merci de me retourner le Devis complété" & vbCrLf _
   & "par la mention \""Bon pour accord\"" ainsi que les Conditions Commerciales complétées" & vbCrLf _
   & "par la mention \""Lu et accepté\"", le tout dûment signé sans quoi votre commande" & vbCrLf _
   & "ne serait pas considérée comme acceptée." & vbCrLf _
   & "Pour plus de renseignements, vous pouvez me joindre au 06 xx xx xx xx." & vbCrLf _
   & "En attente de votre réponse." & vbCrLf _
   & vbLf _
   & "Cordialement." & vbCrLf _
   & vbLf _
   & vbLf _
   & "Mr Xxxxxxxxx Xxxxxxx" _
   & vbLf _
   & vbLf _
   & vbLf, _
   mailsubject:="Devis N°" & ActiveSheet.[F9] & ActiveSheet.[G9] & "_" & ActiveSheet.[I8], _
   toaddress:=Range("Q33").Value, _
   ccaddress:="xxxxxxx.xxxxxxxxx@yahoo.fr", _
   bccaddress:="", _
   attachment:=(ConditionsCommerciales), _
   displaymail:=True

  If scriptToRun = scriptToRun & "send" = True Then

      Application.Wait (Now + TimeValue("0:00:05")) 'Retarde de 05 secondes l'exécution de la suite du code...

      scriptToRun = scriptToRun & "tell application " & _
                              Chr(34) & "Mail" & Chr(34) & Chr(13)
      scriptToRun = scriptToRun & "quit" & Chr(13)
      scriptToRun = scriptToRun & "end tell"

      On Error Resume Next
      MacScript (scriptToRun)
      On Error GoTo 0
   End If

   ThisWorkbook.Activate

   MsgBox "L'eMail a bien était envoyé à l'adresse: " & Range("Q33").Value, vbInformation, "Confirmation d'envoi…"

Else
   MsgBox "Veuillez renseigner le Nom du client et son adresse eMail !", vbInformation, "Ooups !"

End If

Ens Sub

Re

J'ai pas mail au boulot mais à la lecture juste un truc, tu n'as pas essayé avec SENT plutôt que SEND

Crdlt

Dan a écrit :

Re

J'ai pas mail au boulot mais à la lecture juste un truc, tu n'as pas essayé avec SENT plutôt que SEND

Crdlt

Je viens d'essayer:

If scriptToRun = scriptToRun & "sent" = True Then

Ne marche pas...

Je viens aussi d'essayer:

If MacScript("tell application " & Chr(34) & "System Events" & Chr(34) & " to key code 2 using {shift down, command down}") = True Then

Sur la fenêtre "NewMail / Ecrire un message", sa correspond au raccourci clavier "Envoyer" (shift + cmd + D)

Ne marche pas non plus...

Rechercher des sujets similaires à "mac quitter mail vba rendre focus feuille active"