Remplir des cellules via msgbox

Merci de ta réponse, ce n'était pas ça dont je parlais mais je me suis mal exprimé, j'ai réussi à le faire de mon côté !

Merci à toi en tout cas !

J'ai une petite question, je ne pense pas que ce soit sorcier mais je ne sais pas comment faire.

En fait, j’aimerai rajouter du texte (par exemple merci ou cordialement) après la ligne Mess = Mess & "- " & Tabl(ind) & Chr(10), c'est-à-dire après le listing des villes.

Comment je dois procéder ?

Merci beaucoup !

Bonjour jul997

Mess = "Bonjour " & Dest & "," & Chr(10) & "Tu te déplaces entre les villes suivantes : " & Chr(10)
            For ind = 0 To indt
                Mess = Mess & "- " & Tabl(ind) & Chr(10)
            Next
            Mess= Mess & "Cordialement"
            

Comme Mess se terminait par CHR(10) (saut à la ligne) je ne l'ai pas remis

Si tu veux espacer d'une autre ligne, tu fais simplement

Mess= Mess & CHR(10) &  "Cordialement"

Bonne journée

Encore une fois parfait merci beaucoup ! Est-il possible d'envoyer le mail avec une adresse mail que l'on choisi et non celle de notre boite Outlook par défaut ?

Merci,

Bonjour

Essaie comme cela :

With messagerie.CreateItem(olMailItem)
                .SentOnBehalfOfName = "tonadresse_envoi@gmail.com" ' ton adresse envoi
                .To = LeMail
                .Subject = "Déplacement"
                .body = Mess
                .Send
            End With

A +

Nickel ! Merci

Bon mon ficher est top, j'ai juste une dernière demande mais là honnêtement je ne sais pas si c'est vraiment possible...

Quand on envoie le mail, est-il possible de mettre en pièces jointes un fichier Excel (un fichier standard stocké dans un répertoire qui ne bouge jamais) et dans ce fichier en pièces jointes se trouverait les mêmes champs que l'on trouve déjà dans le mail (par exemple en A1 le nom, en A2 l'adresse mail et en A3 le listing des villes comme cela :

  • ville 1
  • ville 2
  • ville 3

L'idéal serait que le fichier en pièces jointes soit au format PDF... Est-ce possible ?

Merci beaucoup !

Re

With messagerie.CreateItem(olMailItem)
                .SentOnBehalfOfName = "tonadresse_envoi@gmail.com" ' ton adresse envoi
                .To = LeMail
                .Subject = "Déplacement"
                .body = Mess
                .Attachments.Add ("C:\test\MonDoc.txt") ' là tu indiques ton fichier à joindre
                .Send
            End With

Bye

Merci Patty5046 mais comment dit-on que l'on souhaite placer placer les champs dans des cellules spécifiques du fichier en pièces jointes ?

Merci,

Re re re

Private Sub CmdEnvoi_Click()
Dim messagerie As Variant
Dim Tabl()
Dim chemin
chemin = "C:\test\" ' là tu mets le chemin où tu veux créer ton fichier
    Set sh = Sheets("Feuil1")
    Set messagerie = CreateObject("Outlook.Application")
    Set courrier = messagerie.CreateItem(0)
    Dlig = sh.Range("A65536").End(xlUp).Row
    ReDim Tabl(Dlig)
    For i = 0 To LBDest.ListCount - 1
        If LBDest.Selected(i) = True Then
            Dest = LBDest.List(i)
            Set a = sh.Range("A:A").Find(Dest, lookat:=xlWhole)
            L1 = a.Row
            LeMail = sh.Cells(L1, 3)
            indt = 0
            Tabl(indt) = sh.Cells(L1, 2)
            For ind = L1 + 1 To Dlig
                If sh.Cells(ind, 1) = Dest Then
                    indt = indt + 1
                    Tabl(indt) = sh.Cells(ind, 2)
                Else
                    ReDim Preserve Tabl(indt)
                    Exit For
                End If
            Next

            Mess = "Bonjour " & Dest & "," & Chr(10) & "Tu te déplaces entre les villes suivantes : " & Chr(10)
            For ind = 0 To indt
                Mess = Mess & "- " & Tabl(ind) & Chr(10)
            Next
'création fichier à envoyer
            Workbooks.Add
            Sheets("Feuil1").Select
            sh.Range("1:1").Copy Range("1:1")
            For ind = 0 To indt
                sh.Range(L1 & ":" & L1).Copy Range(ind + 2 & ":" & ind + 2)
                L1 = L1 + 1
            Next
                ActiveWorkbook.SaveAs Filename:=chemin & "NouveauNom" & ".xlsx"
                ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        chemin & "NouveauNom" & ".pdf"
                ActiveWorkbook.Close
            With messagerie.CreateItem(olMailItem)
                .SentOnBehalfOfName = "tonadresse_envoi@gmail.com" ' ton adresse envoi
                .To = LeMail
                .Subject = "Déplacement"
                .body = Mess
                .Attachments.Add (chemin & "NouveauNom" & ".pdf") ' là tu indiques ton fichier à joindre
                .Send
            End With
        End If
        Mess = ""
        For ind = LBound(Tabl) To UBound(Tabl)
            Tabl(ind) = ""
        Next
    Next i

End Sub

Je précise que je n'ai pas contrôlé l'existence du fichier, je te laisse gérer...s'il existe déjà

Bon weekend

Bonjour Patty 5046,

Je reviens vers toi parce que je me suis un peu emmêler les pinceaux...

J'ai adapté mon fichier avec tout ce que tu m'as montré, le voila :

12sdtest.xlsm (47.33 Ko)

La première feuille du fichier ("SD") est donc constituée de 2 boutons :

Le premier permet d'ajouter des lignes sur ma feuille. En cliquant, un userform s'ouvre nous demandant de remplir les champs proposés. En validant, une msgbox s'ouvre nous demandant si on veut rajouter une action pour cette SD. Si on dit oui, le champs action du userform s'efface et on peut en inscrire une autre sans que les valeurs des autres champs ne s'effacent. En validant et en disant qu'on ne veut pas de nouvelle action, on retrouve bien dans la feuille les lignes correspondantes (2 lignes si 2 actions, 1 ligne si 1 action...). Jusque la parfait merci beaucoup.

La colonne RA et mail RA de la feuille ne sont pas des champs du userform, en effet, je les remplis automatiquement avec un recherchev via un module sur ma macro.

Les problèmes concernent mon 2ème bouton. En cliquant, un userform apparaît également avec la question suivante : De quel SD voulez-vous envoyer les actions?. Pour répondre à la question j'ai crée un champs en liste déroulante qui va chercher les champs de la colonne A, à savoir le numéro de ma SD.

C'est là que j'ai une première question ==> si on a incrémenté plusieurs lignes avec le premier bouton (donc avec le même numéro de SD), on retrouve dans la liste déroulante du userform2 les numéros de SD en doublons (ou plus selon le nombre de lignes...). J'aimerai qu'il y ait uniquement les valeurs uniques (donc si 4 lignes avec le n° égal à 15, on retrouverait seulement un 15 dans la liste déroulante), est-ce possible ? Merci

Après avoir sélectionner le n° de ma SD et avoir validé, une msgbox apparaît (voulez-vous envoyer les actions ?). En disant oui, le mail que je souhaite envoyer s'ouvre (j'ai mis en .display). C'est là que j'ai un 2ème petit soucis...

Dans mon mail, il me faut les informations correspondant au numéro de SD sélectionné en fait... Mais quand mon mail s'ouvre, ce sont tout le temps les informations de la première ligne de SD de ma feuille ("SD"). Si on sélectionne dans ma liste déroulante un numéro de SD correpondant à plusieurs lignes, on sait en fait que les seuls champs différents entre ces lignes sont les chamsp actions. L'idéal serait donc qu'il y ai dans la mail seulement le destinatire correspondant, le contrat, etc.. mais que l'on retrouve tout de même la liste des actions à la ligne...comme ce la :

  • action 1
  • action 2
  • action 3...

Est-ce que tu pourrais me dire ce qui ne va pas s'il te plait dans mon code ? Merci encore de ta patience

Bonjour

Vite fait , ai des amis

15sdtest-v1.xlsm (43.08 Ko)

J'ai supprimer dans SD1 (combo) rowsource et ai mis userform-initialize à la placeA +

Merci beaucoup Patty5046, cela fonctionne sauf le corps de mon mail avec les différentes actions. En effet, je n'ai dans le mail que une seule action alors que certaines SD ont plusieurs lignes donc plusieurs actions.

Je pensais que c'était dû au "ind" et "indt" dans la macro mais ça ne fonctionne pas non plus (ou alors j'ai mal fait...).

Si tu peux regarder. Ce n'est pas du tout pressé, regarde quand tu veux et profite de tes amis !!!!!!!!!!!!!!!!

Merci encore Patty5046

Bonjour jul997, bonjour le forum

te renvoie le fichier corrigé...je remettais indt à zéro à chaque fois donc j'écrasais les actions mea culpa

D'autre part il y avait des problèmes aussi pour la ville et la zone mail

Vois si cela marche mieux

10sdtest-v1.xlsm (43.23 Ko)

Bonne journée

Merci Patty5046 c'est top !!!

Juste est-il possible de mettre dans le mail toutes les actions au final ?

Je veux dire par la que dans le mail on met déjà la liste des actions avec la correspondance "contrat" en colonne J.

Est-ce qu"on peut dans ce mail rajouter une phrase après qui dit "voici également la liste des actions générales (correspondant à "général" dans la colonne J) :

  • action 1
  • action 2...

Merci beaucoup...

Bonsoir jul

Vois ce fichier

15sdtest-v1.xlsm (43.03 Ko)

Par contre je te demanderai à l'avenir de mieux exprimer tes besoins dès le départ, de ne pas les expliquer un par un...

C'est pénible pour nous de toujours être obligés de reprendre du travail déjà fait...

Sans rancune... il faut juste penser à ceux qui passent du temps à apporter de l'aide

Tu es déjà un membre "fidèle" , tu devrais être habitué...

Bonne soirée à toi et bon courage

Merci encore Patty5046.

Pour être très honnête, je ne savais pas trop quel serait la finalité de mon fichier quand je l'ai commencé.. Et avec tout ce que tu m'as montré, je me suis dit qu'il y avait des millions de possibilités de l'améliorer. Dsl pour le temps passé en tout cas mais merci beaucoup pour l'aide, tu as vraiment géré !

Bonjour jul, bonjour le forum

J'étais ces jours-ci sur un projet compliqué et donc fatiguée

Donc la modif que je t'ai faite a été vite faite :

J'ai en fait considéré que dans l'action affectée, il y avait toujours contrat

Et général n'était pas systématique.

Si c'est le cas , le message est bon

Si par contre, tu peux n'avoir que général sans contrat ...alors là il va te manquer le début du message : Bonjour etc...

Vois donc cela

Bonne journée à tous

Oui j'ai remarqué qu'il manquait le début du message pour juste "général" mais j'ai réussi à me débrouiller pour avoir le message en entier dans chaque cas, merci à toi !

Rebonjour

Super

Bonne journée et bonne continuation

Rechercher des sujets similaires à "remplir via msgbox"