Bonjour
Largement satisfait du coup de pouce apporté la dernière fois, je m'en remets une nouvelle fois à vous
Grâce à Pierre Fauconnier, j'ai donc réussi à modifier le code VBA, expliqué ici, pour n'envoyer des mails à une liste d'adresses QUE si ceux ci était visibles dans le document excel.
Mais voilà, j'ai un petit problème, que j'avais déjà remarqué avant, qui s'est plus ou moins résolu en ne prennant en compte que les adresses visibles, mais qui va potentiellement se reproduire.
Je remets ici le code utilisé :
Le but est donc, à partir d'un tableau excel avec des adresses mail, de faire un mail groupé pour toutes ces adresses dans outlook, avec les adresses dans le champ Bcc.
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 Private Sub CommandButton1_Click() 'compteur de ligne i = 3 'les adresses a prendre en consideration bcc_a_prendre = "" Do If Rows(i).Hidden = False Then bcc_a_prendre = bcc_a_prendre & Range("F" & i).Value & ";" i = i + 1 Loop Until Range("D" & i).Value = "" 'comme il y a un ; en trop dans chaque champ, l'enlever mais verifier que le champs n'est pas vide If Len(bcc_a_prendre) > 0 Then bcc_a_prendre = Left(bcc_a_prendre, Len(bcc_a_prendre) - 1) End If 'preparation du mail Hyperlien = "mailto:" & "?" Hyperlien = Hyperlien & "subject=" Hyperlien = Hyperlien & "&Bcc=" & bcc_a_prendre ActiveWorkbook.FollowHyperlink Hyperlien End Sub
Mais voilà, quand j'ai une liste trop grande d'adresses mail à prendre en concidération, j'ai un rapport de bug au moment où je clique sur le bouton. Le fait de ne prendre que les lignes sélectionnées a donc reporté le problème à plus tard, mais j'ai l'impression que le nombre de caractères dans le lien "mailto:blablabla" est limité.
Je me demandais donc s'il était possible de modifier ce code pour dire, par exemple, que si le nombre de caractères est plus grand que X, ou que le nombre de cases (où sont inscrites les adresses mails) est suppérieur à X, alors faire la même chose mais en plusieurs mail. (par exemple, arrivé à 50 adresses mails/cases/lignes du tableau excel, continuer dans un second mail, etc.)
Par acquis de conscience, j'explique quand même le bug, au cas où je le comprendrais mal :
Quand je prends toute la liste des adresses, j'ai un message d'erreur "Run-time error '-2147221020 (800401e4)': The adresses of this site is not valid. Check the adresses and try again." ; et quand je cliques sur "debug", il surligne dans le code la ligne "ActiveWorkbook.FollowHyperlink Hyperlien".
Un tout grand merci d'avance
Partager