IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

code à modifier [XL-2007]


Sujet :

Macros et VBA Excel

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    211
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 211
    Points : 64
    Points
    64
    Par défaut code à modifier
    Bonjour,

    Voici un code que l'on m'a fait pour envoyer des mails
    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
    Sub Envoi_mail()
        Dim Ol As New Outlook.Application, Olmail As MailItem, CurrFile$, nom$, dest$, fin&, i&, a&, liste$, n&, nn&
        Set Ol = New Outlook.Application
        Set Olmail = Ol.CreateItem(olMailItem)
        Application.ScreenUpdating = False
        'nom = ThisWorkbook.FullName ' si un jour Jacky tu veux envoyer le fichier avec
        With Feuil1
            fin = Feuil1.Range("F" & Rows.Count).End(xlUp).Row
            For i = 5 To fin
                If .Cells(i, 5) <> "" And .Cells(i, 5).Font.ColorIndex = 3 Then dest = dest & .Cells(i, 6) & ";": nn = nn + 1
            Next i
            If nn = 0 Then MsgBox "Vous n'avez pas choisi de destinataire" & vbCrLf & _
            "Vous devez avoir au moins une Croix rouge dans la liste" & vbCrLf & _
            "La ou les Croix rouge sont les destinataires, les noirs sont le Copies Conformes", , "Destinataire de l'envoi": Exit Sub
    1       For a = 5 To fin
                If .Cells(a, 5) <> "" And .Cells(a, 5).Font.ColorIndex <> 3 Then liste = liste & .Cells(a, 6) & ";"
            Next a
            dest = Mid(dest, 1, Len(dest) - 1)
            liste = Mid(liste, 1, Len(liste) - 1)
        End With
        With Olmail
            .To = dest
            .CC = liste
            .Subject = "Message de Jacky"
            .Body = "Bonjour c'est Jacky," & vbCrLf & "Et tu mets ce que tu veux....."
            '.Attachments.Add nom 'Jacky si un jour tu modifies pour envoyer un fichier tu retires le ' en début de ligne
            .Display
        End With
    End Sub
    mais je voudrais savoir ce qu'il faut changer pour décaller de 2 colonnes vers la droite
    merci
    jac

  2. #2
    pgz
    pgz est déconnecté
    Expert éminent Avatar de pgz
    Homme Profil pro
    Développeur Office VBA
    Inscrit en
    Août 2005
    Messages
    3 692
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Office VBA
    Secteur : Conseil

    Informations forums :
    Inscription : Août 2005
    Messages : 3 692
    Points : 6 591
    Points
    6 591
    Par défaut
    Bonjour.

    Je ne sais pas trop ce que tu veux dire, mais à chaque fois que tu lis une cellule, tu changes l'indice colonne, par exemple .cells(a,5) devient .Cells(a,7).

    PGZ

  3. #3
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Points : 12 068
    Points
    12 068
    Billets dans le blog
    8
    Par défaut heu !!!
    bonjour
    si je comprend bien ta macro tu envoie un mail a plusieurs destinataires en fonction des cellules et plusieurs accusés de réception le but c'est quoi??

  4. #4
    Expert éminent sénior Avatar de mercatog
    Homme Profil pro
    Inscrit en
    Juillet 2008
    Messages
    9 435
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations forums :
    Inscription : Juillet 2008
    Messages : 9 435
    Points : 31 877
    Points
    31 877
    Par défaut
    Bonjour
    Code nettoyé
    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
    Sub Envoi_mail()
    Dim Ol As New Outlook.Application
    Dim Olmail As MailItem
    Dim Nom As String, Dest As String, List As String
    Dim i As Long, Fin As Long, n As Long
     
     
    Application.ScreenUpdating = False
    Set Olmail = Ol.CreateItem(olMailItem)
    Nom = ThisWorkbook.FullName ' si un jour Jacky tu veux envoyer le fichier avec
    With Feuil1
        Fin = .Cells(.Rows.Count, "F").End(xlUp).Row
        For i = 5 To Fin
            With .Range("G" & i)  'G:Colonne des croix
                If .Value <> "" Then
                    If .Font.ColorIndex = 3 Then
                        Dest = Dest & ";" & .Offset(0, 1).Value
                        n = n + 1
                    Else
                        List = List & ";" & .Offset(0, 1).Value
                    End If
                End If
            End With
        Next i
        If n = 0 Then
            MsgBox "Vous n'avez pas choisi de destinataire" & vbCrLf & _
                "Vous devez avoir au moins une Croix rouge dans la liste" & vbCrLf & _
                "La ou les Croix rouge sont les destinataires, les noirs sont le Copies Conformes", _
                , "Destinataire de l'envoi"
        Else
            Dest = Mid(Dest, 2)
            List = Mid(List, 2)
            With Olmail
                .To = Dest
                .CC = List
                .Subject = "Message de Jacky"
                .Body = "Bonjour c'est Jacky," & vbCrLf & "Et tu mets ce que tu veux....."
                '.Attachments.Add Nom 'Jacky si un jour tu modifies pour envoyer un fichier tu retires le ' en début de ligne
                .Display
            End With
        End If
    End With
    Set Olmail = Nothing
    Set Ol = Nothing
    End Sub

  5. #5
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    211
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 211
    Points : 64
    Points
    64
    Par défaut
    bonsoir et merci, cela fonctionne
    cordialement
    jac

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Cherche outil comptage lignes de codes modifiées
    Par Onkas81 dans le forum Outils
    Réponses: 1
    Dernier message: 22/05/2016, 20h04
  2. JAVA : Marquer et rechercher code modifié
    Par ywan42 dans le forum Général Java
    Réponses: 10
    Dernier message: 26/08/2010, 15h04
  3. Code à modifier
    Par hellboy20 dans le forum Général JavaScript
    Réponses: 0
    Dernier message: 28/07/2009, 04h32
  4. module petites annonces (code à modifier)
    Par ccluz dans le forum ASP
    Réponses: 3
    Dernier message: 13/03/2008, 11h39
  5. L'ancien code (modifié) s'exécute toujours en debug
    Par frederix quest dans le forum Windows Forms
    Réponses: 2
    Dernier message: 13/08/2007, 20h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo