Bonjour à tous, Bonjour le Forum,
Grâce à vous j'ai finalisé un dossier qui fonctionne parfaitement bien sur mon ordinateur personnel.
Ce dossier permet d’envoyer depuis mon tableau Excel, un mail aux personnes concernées, 3 mois avant l’échéance d’un prêt.
Maintenant je souhaiterais le transférer sur mon ordinateur professionnel.
Pas très compliqué me direz-vous et c'est chose faite.
Seulement cette macro a été créée sous Windows 7, Excel 2010, Outlook 2007.
Mon ordinateur professionnel est sous Windows XP, Excel 2003, Outlook 2003 et nous utilisons Microsoft Exchange Server ainsi qu’un VPN.
Tout cela me complique énormément la correction des codes et j’ai beau chercher, je ne trouve pas de solutions.
Auriez-vous l’a gentillesse de m’éclaircir ?
Il était écrit sur mon ordi perso :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
Private Sub Workbook_Open()
Dim ol As New Outlook.Application
Dim olmail As MailItem, plage As Range
Dim admail As String, cel As Range, j As Long, derlg As Long
Dim messmail As String, secours As String, mess As String
With Sheets("feuil1")
    derlg = .Range("A" & .Rows.Count).End(xlUp).Row
    Set plage = .Range("D2:D" & derlg)
    For Each cel In plage
        If cel.Offset(0, 2) = "Vrai" Then
            mess = MsgBox("la " & .Range("E1").Value & " est au : " & cel.Offset(0, 1).Value & Chr(10) & Chr(10) _
                & "Voulez-vous envoyer la relance?", vbOKCancel)
            If mess = 1 Then
                admail = InputBox("destinataire", , cel.Offset(0, 3).Value)
                    On Error Resume Next
                    Shell """C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE"""
                    Set ol = New Outlook.Application
                    Set olmail = ol.CreateItem(olMailItem)
messmail = "XXX," & Chr(10) & Chr(10) & "XXXXXXX " & cel.Offset(0, -1).Value & Chr(9) & cel.Offset(0, -2).Value & ", XXXXXXX " & cel.Offset(0, 1).Value _
            & "." & Chr(10) & Chr(10) & "XXXXXXXX" & Chr(10) & Chr(10) & "XXXXXXXXX," _
            & Chr(10) & Chr(10) & Chr(10) & "Lucy"
                        With olmail
                            .To = admail
                            .Subject = "Info. Return loan order"
                            .Body = messmail
                            .Send
                        End With
                        On Error GoTo 0
            End If
        Else
        End If
    Next cel
End With
End Sub
Sur mon ordinateur professionnel j'ai changé :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 If cel.Offset(0, 2) = "Vrai" Then
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
 If cel.Offset(0, 2) = "True" Then
Car mon tableau Excel se met automatiquement en anglais puisque c'est une formule!
Ainsi que :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Shell """C:\Program Files\Microsoft Office\Office12\OUTLOOK.EXE"""
par
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Shell """C:\Program Files\Microsoft Office\Office11\OUTLOOK.EXE"""
J'espère que vous comprenez ce que je souhaite faire.
je pense que les codes a changer se trouvent ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
Private Sub Workbook_Open()
Dim ol As New Outlook.Application
Dim olmail As MailItem, plage As Range
Dim admail As String, cel As Range, j As Long, derlg As Long
Dim messmail As String, secours As String, mess As String
With Sheets("feuil1")
    derlg = .Range("A" & .Rows.Count).End(xlUp).Row
    Set plage = .Range("D2:D" & derlg)
    For Each cel In plage
        If cel.Offset(0, 2) = "Vrai" Then
            mess = MsgBox
Faut-il utiser "MAPIFolder ou autre chose.
Comment passer par Microsoft Exchange Server?
Je vous remercie de votre attention et vous souhaite une très bonne soirée.
Cordialement,