Bonjour,
J'ai 30 champs qui se nomment pratiquement le m=EAme nom :=20
Grp_Mailing1
Grp_Mailing2
...
Code actuel :
If IsNull(Me.Grp_Mailing1) =3D True Then
Me.Grp_Mailing1 =3D 0
End If
If IsNull(Me.Grp_Mailing2) =3D True Then
Me.Grp_Mailing2 =3D 0
End If
If IsNull(Me.Grp_Mailing3) =3D True Then
Me.Grp_Mailing3 =3D 0
End If
.....
Je souhaiterais utiliser une boucle pour faire cela plus=20
proprement
du style :
Num =3D 1
Do While counter < NB_Enr.Value
Num =3D Num + 1
Me.Grp_Mailing & Num =3D 0
Loop
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Charles ERNST
Num = 1 Do While counter < NB_Enr.Value Num = Num + 1 Me("Grp_Mailing" & Num )= 0 Loop
"Herve Matous" a écrit dans le message de news:19a9901c44d8c$0ac37b80$ Bonjour, J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 ... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If .....
Je souhaiterais utiliser une boucle pour faire cela plus proprement du style : Num = 1 Do While counter < NB_Enr.Value Num = Num + 1 Me.Grp_Mailing & Num = 0 Loop
Merci d'avance Herve
Num = 1
Do While counter < NB_Enr.Value
Num = Num + 1
Me("Grp_Mailing" & Num )= 0
Loop
"Herve Matous" <anonymous@discussions.microsoft.com> a écrit dans le message
de news:19a9901c44d8c$0ac37b80$a301280a@phx.gbl...
Bonjour,
J'ai 30 champs qui se nomment pratiquement le même nom :
Grp_Mailing1
Grp_Mailing2
...
Code actuel :
If IsNull(Me.Grp_Mailing1) = True Then
Me.Grp_Mailing1 = 0
End If
If IsNull(Me.Grp_Mailing2) = True Then
Me.Grp_Mailing2 = 0
End If
If IsNull(Me.Grp_Mailing3) = True Then
Me.Grp_Mailing3 = 0
End If
.....
Je souhaiterais utiliser une boucle pour faire cela plus
proprement
du style :
Num = 1
Do While counter < NB_Enr.Value
Num = Num + 1
Me.Grp_Mailing & Num = 0
Loop
Num = 1 Do While counter < NB_Enr.Value Num = Num + 1 Me("Grp_Mailing" & Num )= 0 Loop
"Herve Matous" a écrit dans le message de news:19a9901c44d8c$0ac37b80$ Bonjour, J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 ... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If .....
Je souhaiterais utiliser une boucle pour faire cela plus proprement du style : Num = 1 Do While counter < NB_Enr.Value Num = Num + 1 Me.Grp_Mailing & Num = 0 Loop
Merci d'avance Herve
3stone
Salut,
"Herve Matous" J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 ... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If .....
Dim i as integer
For i = 1 to 30 if isnull(Me("Grp_Mailling" & i )) Then Me("Grp_Mailling" & i ) = 0 end if next i
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
Salut,
"Herve Matous"
J'ai 30 champs qui se nomment pratiquement le même nom :
Grp_Mailing1
Grp_Mailing2
...
Code actuel :
If IsNull(Me.Grp_Mailing1) = True Then
Me.Grp_Mailing1 = 0
End If
If IsNull(Me.Grp_Mailing2) = True Then
Me.Grp_Mailing2 = 0
End If
If IsNull(Me.Grp_Mailing3) = True Then
Me.Grp_Mailing3 = 0
End If
.....
Dim i as integer
For i = 1 to 30
if isnull(Me("Grp_Mailling" & i )) Then
Me("Grp_Mailling" & i ) = 0
end if
next i
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
"Herve Matous" J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 ... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If .....
Dim i as integer
For i = 1 to 30 if isnull(Me("Grp_Mailling" & i )) Then Me("Grp_Mailling" & i ) = 0 end if next i
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
Wilderwein
Bsr,
Essaye donc quelque chose du style :
Dim ctrl as control Dim grp as string
For Each ctrl In Form_test.Controls grp=Mid(ctrl.name,1,11) If (ctrl.ControlType¬TextBox) AND (grp="Grp_Mailing") then If isNull(ctrl) then ctrl=0 End if Next ctrl
J'ai déjà utilisé une procédure similaire qui m'a donné satisfaction...
"Herve Matous" a écrit dans le message de news:19a9901c44d8c$0ac37b80$ Bonjour, J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 ... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If .....
Je souhaiterais utiliser une boucle pour faire cela plus proprement du style : Num = 1 Do While counter < NB_Enr.Value Num = Num + 1 Me.Grp_Mailing & Num = 0 Loop
Merci d'avance Herve
Bsr,
Essaye donc quelque chose du style :
Dim ctrl as control
Dim grp as string
For Each ctrl In Form_test.Controls
grp=Mid(ctrl.name,1,11)
If (ctrl.ControlType¬TextBox) AND (grp="Grp_Mailing") then
If isNull(ctrl) then ctrl=0
End if
Next ctrl
J'ai déjà utilisé une procédure similaire qui m'a donné satisfaction...
"Herve Matous" <anonymous@discussions.microsoft.com> a écrit dans le message
de news:19a9901c44d8c$0ac37b80$a301280a@phx.gbl...
Bonjour,
J'ai 30 champs qui se nomment pratiquement le même nom :
Grp_Mailing1
Grp_Mailing2
...
Code actuel :
If IsNull(Me.Grp_Mailing1) = True Then
Me.Grp_Mailing1 = 0
End If
If IsNull(Me.Grp_Mailing2) = True Then
Me.Grp_Mailing2 = 0
End If
If IsNull(Me.Grp_Mailing3) = True Then
Me.Grp_Mailing3 = 0
End If
.....
Je souhaiterais utiliser une boucle pour faire cela plus
proprement
du style :
Num = 1
Do While counter < NB_Enr.Value
Num = Num + 1
Me.Grp_Mailing & Num = 0
Loop
For Each ctrl In Form_test.Controls grp=Mid(ctrl.name,1,11) If (ctrl.ControlType¬TextBox) AND (grp="Grp_Mailing") then If isNull(ctrl) then ctrl=0 End if Next ctrl
J'ai déjà utilisé une procédure similaire qui m'a donné satisfaction...
"Herve Matous" a écrit dans le message de news:19a9901c44d8c$0ac37b80$ Bonjour, J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 ... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If .....
Je souhaiterais utiliser une boucle pour faire cela plus proprement du style : Num = 1 Do While counter < NB_Enr.Value Num = Num + 1 Me.Grp_Mailing & Num = 0 Loop
Merci d'avance Herve
Herve Matous
Merci à tous les 3 pour votre gentillesse et vos compétences. J'ai trouvé bon bonheur en utilisant la réponse de 3Stone, mais je pense que vos 3 propositions sont excellentes. Cordialement Herve
Merci à tous les 3 pour votre gentillesse et vos
compétences. J'ai trouvé bon bonheur en utilisant la
réponse de 3Stone, mais je pense que vos 3 propositions
sont excellentes.
Cordialement
Herve
Merci à tous les 3 pour votre gentillesse et vos compétences. J'ai trouvé bon bonheur en utilisant la réponse de 3Stone, mais je pense que vos 3 propositions sont excellentes. Cordialement Herve
Michel Gesnot
Bonjour,
Une petite suggestion pour ne pas oublier la loi de la vexation universelle :
Il est très probable qu'Hervé devra ajouter/suprimer un groupe un jour ou l'autre, qu'il y aura des trous dans sa séquences etc... ce qui impliquera de reprendre le code et de l'adapter. Si Hervé travaille par le biais d'un tableau et utilise Ubound comme limite supérieure de la boucle, son application deviendra tout à fait dynamique.
L'utilisation d'un tableau lui éviterait d'avoir à réintervenir sur le code.
Bonne journée Michel Gesnot
-----Message d'origine----- Salut,
"Herve Matous" J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 .... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If ......
Dim i as integer
For i = 1 to 30 if isnull(Me("Grp_Mailling" & i )) Then Me("Grp_Mailling" & i ) = 0 end if next i
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
.
Bonjour,
Une petite suggestion pour ne pas oublier la loi de la
vexation universelle :
Il est très probable qu'Hervé devra ajouter/suprimer un
groupe un jour ou l'autre, qu'il y aura des trous dans sa
séquences etc... ce qui impliquera de reprendre le code et
de l'adapter.
Si Hervé travaille par le biais d'un tableau et utilise
Ubound comme limite supérieure de la boucle, son
application deviendra tout à fait dynamique.
L'utilisation d'un tableau lui éviterait d'avoir à
réintervenir sur le code.
Bonne journée
Michel Gesnot
-----Message d'origine-----
Salut,
"Herve Matous"
J'ai 30 champs qui se nomment pratiquement le même nom :
Grp_Mailing1
Grp_Mailing2
....
Code actuel :
If IsNull(Me.Grp_Mailing1) = True Then
Me.Grp_Mailing1 = 0
End If
If IsNull(Me.Grp_Mailing2) = True Then
Me.Grp_Mailing2 = 0
End If
If IsNull(Me.Grp_Mailing3) = True Then
Me.Grp_Mailing3 = 0
End If
......
Dim i as integer
For i = 1 to 30
if isnull(Me("Grp_Mailling" & i )) Then
Me("Grp_Mailling" & i ) = 0
end if
next i
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------
Une petite suggestion pour ne pas oublier la loi de la vexation universelle :
Il est très probable qu'Hervé devra ajouter/suprimer un groupe un jour ou l'autre, qu'il y aura des trous dans sa séquences etc... ce qui impliquera de reprendre le code et de l'adapter. Si Hervé travaille par le biais d'un tableau et utilise Ubound comme limite supérieure de la boucle, son application deviendra tout à fait dynamique.
L'utilisation d'un tableau lui éviterait d'avoir à réintervenir sur le code.
Bonne journée Michel Gesnot
-----Message d'origine----- Salut,
"Herve Matous" J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2 .... Code actuel : If IsNull(Me.Grp_Mailing1) = True Then Me.Grp_Mailing1 = 0 End If If IsNull(Me.Grp_Mailing2) = True Then Me.Grp_Mailing2 = 0 End If If IsNull(Me.Grp_Mailing3) = True Then Me.Grp_Mailing3 = 0 End If ......
Dim i as integer
For i = 1 to 30 if isnull(Me("Grp_Mailling" & i )) Then Me("Grp_Mailling" & i ) = 0 end if next i
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
.
3stone
Salut,
"Michel Gesnot" <snip> Il est très probable qu'Hervé devra ajouter/suprimer un groupe un jour ou l'autre...
Relire le message original apporte la réponse ;-)
"Herve Matous" J'ai 30 champs qui se nomment pratiquement le même nom : Grp_Mailing1 Grp_Mailing2
si évolution, il devra revoir ses tables, requêtes, formulaires et autres états...
Donc, soit il considère sa "construction" définie à jamais, soit il revoit le tout et... il sera libéré des 30 champs !
Dans ces conditions, un tableau... oui, si un Rembrandt ;-)
-- A+ Pierre (3stone) Access MVP ----------------------------- http://users.skynet.be/mpfa -----------------------------
Salut,
"Michel Gesnot"
<snip>
Il est très probable qu'Hervé devra ajouter/suprimer un
groupe un jour ou l'autre...
Relire le message original apporte la réponse ;-)
"Herve Matous"
J'ai 30 champs qui se nomment pratiquement le même nom :
Grp_Mailing1
Grp_Mailing2
si évolution, il devra revoir ses tables, requêtes, formulaires
et autres états...
Donc, soit il considère sa "construction" définie à jamais,
soit il revoit le tout et... il sera libéré des 30 champs !
Dans ces conditions, un tableau... oui, si un Rembrandt ;-)
--
A+
Pierre (3stone) Access MVP
-----------------------------
http://users.skynet.be/mpfa
-----------------------------