Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Comment faire pour répeter un script plusieurs fois

8 réponses
Avatar
omar_2891
Bonjour,

Je suis d=E9butant, je viens de terminer un script pour lancer une
analyse et envoyer un mail si cette analyse d=E9tecte une anomalie.
Voici mon script :

Sub Envoi_Mail_ALERTE()
Dim Colonne As Long

For Colonne =3D 1 To 201
If Cells(5, Colonne) < 1.33 And Cells(5, Colonne) > 0 Then
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String
MailAd =3D Range("b2")
Subj =3D Range("c2")
Msg =3D Msg & Range("a5")
URLto =3D "mailto:" & MailAd & "?subject=3D" & Subj & "&body=3D"
& Msg
ActiveWorkbook.FollowHyperlink Address:=3DURLto
End If
Next
End Sub

En fait, mon pb est de r=E9peter cette action de la ligne 5 jusqu'=E0 la
ligne 136, et aussi de changer le Msg du mail :
pour la ligne 5 : Msg =3D Msg & Range("a5")
pour la ligne 6 : Msg =3D Msg & Range("a6")
et ainsi de suite....

En vous remerciant d'avance.

Cordialement.

Omar.

8 réponses

Avatar
papou
Bonjour
Sub Envoi_Mail_ALERTE()
Dim Colonne As Long, i as Long
For Colonne = 1 To 201
If Cells(5, Colonne) < 1.33 And Cells(5, Colonne) > 0 Then
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String
MailAd = Range("b2")
Subj = Range("c2")
For i = 5 to 6
Msg = Msg & Range("a" & i)
Next i
URLto = "mailto:" & MailAd & "?subject=" & Subj & "&body=" & Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End If
Next Colonne
End Sub

Cordialement
Pascal

a écrit dans le message de news:

Bonjour,

Je suis débutant, je viens de terminer un script pour lancer une
analyse et envoyer un mail si cette analyse détecte une anomalie.
Voici mon script :

Sub Envoi_Mail_ALERTE()
Dim Colonne As Long

For Colonne = 1 To 201
If Cells(5, Colonne) < 1.33 And Cells(5, Colonne) > 0 Then
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String
MailAd = Range("b2")
Subj = Range("c2")
Msg = Msg & Range("a5")
URLto = "mailto:" & MailAd & "?subject=" & Subj & "&body="
& Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End If
Next
End Sub

En fait, mon pb est de répeter cette action de la ligne 5 jusqu'à la
ligne 136, et aussi de changer le Msg du mail :
pour la ligne 5 : Msg = Msg & Range("a5")
pour la ligne 6 : Msg = Msg & Range("a6")
et ainsi de suite....

En vous remerciant d'avance.

Cordialement.

Omar.
Avatar
Daniel
Bonjour.
Essaie :

Sub Envoi_Mail_ALERTE()
Dim Colonne As Long
Dim Ligne As Long
For Ligne = 5 To 136
For Colonne = 1 To 201
If Cells(Ligne, Colonne) < 1.33 And Cells(Ligne, Colonne) > 0
Then
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String
MailAd = Range("b2")
Subj = Range("c2")
Msg = Msg & Range("a" & Ligne)
URLto = "mailto:" & MailAd & "?subject=" & Subj & "&body=" &
Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End If
Next Colonne
Next Ligne
End Sub

Cordialement.
Daniel
a écrit dans le message de news:

Bonjour,

Je suis débutant, je viens de terminer un script pour lancer une
analyse et envoyer un mail si cette analyse détecte une anomalie.
Voici mon script :

Sub Envoi_Mail_ALERTE()
Dim Colonne As Long

For Colonne = 1 To 201
If Cells(5, Colonne) < 1.33 And Cells(5, Colonne) > 0 Then
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String
MailAd = Range("b2")
Subj = Range("c2")
Msg = Msg & Range("a5")
URLto = "mailto:" & MailAd & "?subject=" & Subj & "&body="
& Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End If
Next
End Sub

En fait, mon pb est de répeter cette action de la ligne 5 jusqu'à la
ligne 136, et aussi de changer le Msg du mail :
pour la ligne 5 : Msg = Msg & Range("a5")
pour la ligne 6 : Msg = Msg & Range("a6")
et ainsi de suite....

En vous remerciant d'avance.

Cordialement.

Omar.
Avatar
omar_2891
Merci beaucoup Papou mais visiblement maintenantque j'ai ajouté ceci
Excel me dit "Erreur d'éxecution '5' "
Et il m'indique une erreur à la ligne suivante :
ActiveWorkbook.FollowHyperlink Address:=URLto
Je ne comprend pas pkoi?
Avatar
omar_2891
Super, ca a l'air de bien marcher sauf que maintenant mon pb c qui
m'envoie trop de mail !!!!!!!!!!!!!!!!!!!!!!!! avec tous le meme
Message !!!
j'pense que l'on est sur la bonne voie mais saurais tu d'ou vient ce pb?
Avatar
Daniel
La macro examine chaque cellule entre les lignes 5 et 136 et les colonnes 1
à 201. Ca fait peut-être beaucoup ?
Daniel
a écrit dans le message de news:

Super, ca a l'air de bien marcher sauf que maintenant mon pb c qui
m'envoie trop de mail !!!!!!!!!!!!!!!!!!!!!!!! avec tous le meme
Message !!!
j'pense que l'on est sur la bonne voie mais saurais tu d'ou vient ce pb?



Avatar
omar_2891
Oui, effectivement. Et en fait l'idéal pour moi ce serait qu'un seul
mail englobant tout soit envoyé. J'ai réfléchi un peu et j'me suis
demandé si il était possible de créer une fonction permettant de
compléter la fin de la mauvaise ligne (0<valeur<1.33) d'une mention
ANOMALIE et à partir de là Executer la commande d'envoie du mail en
prenant à chaque fois la première case de la ou les mauvaise(s)
ligne(s)?
Avatar
Daniel
J'ai modifié ta macro pour n'envoyer qu'un message comportant les cellules
en erreur :

Sub Envoi_Mail_ALERTE()
Dim Colonne As Long
Dim Ligne As Long
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String
For Ligne = 5 To 136
For Colonne = 1 To 201
If Cells(Ligne, Colonne) < 1.33 And Cells(Ligne, Colonne) > 0
Then
MailAd = Range("b2")
Subj = Range("c2")
Msg = Msg & Range("a" & Ligne) & vbCrLf
MsgBox Msg
End If
Next Colonne
Next Ligne
URLto = "mailto:" & MailAd & "?subject=" & Subj & "&body=" & Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub

A tester, toutefois.
Daniel
a écrit dans le message de news:

Oui, effectivement. Et en fait l'idéal pour moi ce serait qu'un seul
mail englobant tout soit envoyé. J'ai réfléchi un peu et j'me suis
demandé si il était possible de créer une fonction permettant de
compléter la fin de la mauvaise ligne (0<valeur<1.33) d'une mention
ANOMALIE et à partir de là Executer la commande d'envoie du mail en
prenant à chaque fois la première case de la ou les mauvaise(s)
ligne(s)?
Avatar
omar_2891
J'ai tester et c'est parfait, j'te remercie beaucoup!!!! c t très
sympa de ta part de me consacrer de ton temps!!

Encore Merci et la prochaine peut etre

PS: si j cherche de l'aide j serai qui aller voir!!!!! LOL

Omar