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
| Sub EmailVersTexte()
Dim EnrClient As Recordset, NumFichier As Integer, MaChaine As String, NombreAdresse As Integer, Cpt As Integer
Set EnrClient = CurrentDb.OpenRecordset("select * from clients where [courriel]<>""""")
If EnrClient.RecordCount = 0 Then
EnrClient.Close
Exit Sub
End If
' -----------
' définir le nombre d'adresses à générer par ligne
' -----------
NombreAdresse = 10
MaChaine = ""
Cpt = 0
NumFichier = FreeFile ' dernier n° de fichier libre
Open "c:\AdresseMail.rtf" For Output As #NumFichier ' ouvre un fichier texte. s'il n'existe pas le créé
Do Until EnrClient.EOF
MaChaine = MaChaine & EnrClient.Fields("courriel") & ";" ' rajout l'email et un ; à la chaine
Cpt = Cpt + 1
If Cpt = NombreAdresse Then 'nombre d'adresse atteint
MaChaine = Mid(MaChaine, 1, Len(MaChaine) - 1) ' enlève le dernier ;
Print #NumFichier, MaChaine ' imprime une ligne dans le fichier texte
Cpt = 0
MaChaine = ""
End If
EnrClient.MoveNext
Loop
MaChaine = Mid(MaChaine, 1, Len(MaChaine) - 1) ' enlève le dernier ;
Print #NumFichier, MaChaine ' imprime la dernière ligne dans le fichier texte
EnrClient.Close ' ferme le fichier texte
Close #NumFichier
End Sub |
Partager