Bonjour,
J'ai créé une macro sur Excel qui envoi un mail aux adresses générer à partir de numéros de téléphone contenu dans les cellules sélectionner.
Et ça marche super bien:
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
 
Sub SmartPush()
    Dim Adr As String
    Dim Adresse As String
    Dim Msg As String
    Dim Tel As Object
    Dim ObjOutlook As New Outlook.Application
    Dim Mail
    Dim Compt As Integer
 
 
    Set Zone = Selection
    Debug.Print Zone.Address
    Adr = "@smartpush.mailtosms.aw.atos.net;"
    For Each Tel In Zone
        Compt = Compt + 1
        Debug.Print Tel.Address
        NumTel = Tel.Value
        If (NumTel Like 6 & "*") Or (NumTel Like 7 & "*") Then
            Adresse = Adresse & " " & 0 & NumTel & Adr
        End If
    Next
    Debug.Print Adresse
    Msg = InputBox("Saisir le message à envoyer:" & Chr(10) & "Il sera envoyé à " & Compt & " clients.", "Message", "Message par defaut")
    Debug.Print Msg
    Set Mail = ObjOutlook.CreateItem(olMailItem)
    With Mail
        .To = Adresse
        .Body = Msg
        '.Send
    End With
End Sub
Cette petit macro plait beaucoup à mes collègues et j'aimerais donc la diffuser et après quelques recherches j'ai voulus créé un complément avec Visual Studio.
Mais une fois le projet créé et la macro coller au bonne endroit mon code c'est illuminé en rouge (des fautes partout).
J'ai donc fais les corrections demander mais ça ne marche plus car une erreur persiste à la ligne 32 avec l’objet ZoneSelec.
Pourriez-vous m'aider car je bloque vraiment dessus

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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
 
Imports Microsoft.Office.Tools.Ribbon
Imports Microsoft.Office.Interop
Imports Microsoft.Office.Tools
 
Public Class Ribbon1
 
    Private Sub Ribbon1_Load(ByVal sender As System.Object, ByVal e As RibbonUIEventArgs) Handles MyBase.Load
 
    End Sub
 
    Private Sub Button1_Click(sender As Object, e As RibbonControlEventArgs) Handles Button1.Click
 
        Dim ObjOutlook As Outlook.Application
        Dim Mail As Outlook.MailItem
        Dim ObjExcel As Excel.Application
        Dim Adr As String
        Dim Adresse As String
        Dim Msg As String
        Dim Compt As Integer
        Dim Tel As Object
        Dim ZoneSelec As Object
        Dim NumTel As Object
 
        ObjOutlook = CreateObject("Outlook.Application")
        ObjExcel = CreateObject("Excel.Application")
        Adr = "@smartpush.mailtosms.aw.atos.net;"
        Adresse = ""
        ZoneSelec = ObjExcel.Selection
 
 
        For Each Tel In ZoneSelec
            Compt = Compt + 1
            NumTel = Tel.Value
            If (NumTel Like 6 & "*") Or (NumTel Like 7 & "*") Then
                Adresse = Adresse & " " & 0 & NumTel & Adr
            End If
        Next
 
        Msg = InputBox("Saisir le message à envoyer:" & Chr(10) & "Il sera envoyé à " & Compt & " clients.", "Message", "Message par defaut")
        Mail = ObjOutlook.CreateItem(ObjOutlook.OlItemType.olMailItem)
 
        With Mail
            .To = Adresse
            .Body = Msg
            .Send()
        End With
 
    End Sub
 
End Class