J'utlise plusieurs champs dans 1 formulaire
Forms![Formulaire1]![Zonedetexte1]
Forms![Formulaire1]![Zonedetexte2]
...
Forms![Formulaire1]![Zonedetexten]
Je le lis, je le traite, et je l'écris dans diverses procédures
événementielles.
Voici l'ancienne structure :
Sub bouton1_clic()
... ' 50 lignes de code
Forms![Formulaire1]![Zonedetexte1] = ...
... ' 50 lignes de code
end sub
Sub bouton2_clic()
... ' 50 lignes de code identique
Forms![Formulaire1]![Zonedetexte2] = ...
... ' 50 lignes de code identique
end sub
Sub bouton n_clic()
... ' 50 lignes de code identique
Forms![Formulaire1]![Zonedetexte n] = ...
... ' 50 lignes de code identique
end sub
Comme j'ai beaucoup de lignes de code en commun dans plusierus procédures, à
part ce fameux champs qui difère,
j'aimerai utiliser 1 autre procédure en passant en paramètre le champ ainsi
:
Sub bouton1_clic()
call procedure(Forms![Formulaire1]![Zonedetexte1])
end sub
Sub bouton2_clic()
call procedure(Forms![Formulaire1]![Zonedetexte2])
end sub
...
sub procedure(zonetexte as control)
... ' 50 lignes de code
zonetexte = ...
... ' 50 lignes de code
end sub
La structure Avant fonctionnait... mais cela ne fonctionne plus avec la
structure Apres : /
Je n'arrive pas à affecter la nouvelle valeur dans la zone de texte.
J'ai essayé sans succès :
zonetexte as control
zonetexte as object
zonetexte as textbox
...
zonetexte = ...
zonetexte.value = ...
zonetexte.text = ...
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
Raymond
Bonjour.
Pourquoi ne passes-tu pas seulement l'indice de ton contrôle ?
Forms![Formulaire1]![Zonedetexte1] est composé de Forms![Formulaire1]![Zonedetexte et de 1]
j'appellerais ma procédure par : Sub bouton1_clic() call maprocedure("1")
dans la procédure unique maprocedure j'indiquerais le nom du contrôle ainsi:
sub maprocedure(Indice as String) Forms("formulaire1").Controls("Zonedetexte1" & Indice) = ... end sub
ça parait compliqué mais très simple d'utilisation -- @+ Raymond Access MVP. http://access.seneque.free.fr/ http://users.skynet.be/mpfa/charte.htm pour une meilleure efficacité de tes interventions sur MPFA.
"Stéphane Lavergne" a écrit dans le message de news:
Bonjour,
J'utlise plusieurs champs dans 1 formulaire Forms![Formulaire1]![Zonedetexte1] Forms![Formulaire1]![Zonedetexte2] ... Forms![Formulaire1]![Zonedetexten]
Je le lis, je le traite, et je l'écris dans diverses procédures événementielles.
Voici l'ancienne structure :
Sub bouton1_clic() ... ' 50 lignes de code Forms![Formulaire1]![Zonedetexte1] = ... ... ' 50 lignes de code end sub Sub bouton2_clic() ... ' 50 lignes de code identique Forms![Formulaire1]![Zonedetexte2] = ... ... ' 50 lignes de code identique end sub Sub bouton n_clic() ... ' 50 lignes de code identique Forms![Formulaire1]![Zonedetexte n] = ... ... ' 50 lignes de code identique end sub
Comme j'ai beaucoup de lignes de code en commun dans plusierus procédures, à
part ce fameux champs qui difère, j'aimerai utiliser 1 autre procédure en passant en paramètre le champ ainsi
:
Sub bouton1_clic() call procedure(Forms![Formulaire1]![Zonedetexte1]) end sub Sub bouton2_clic() call procedure(Forms![Formulaire1]![Zonedetexte2]) end sub ... sub procedure(zonetexte as control) ... ' 50 lignes de code zonetexte = ... ... ' 50 lignes de code end sub
La structure Avant fonctionnait... mais cela ne fonctionne plus avec la structure Apres : /
Je n'arrive pas à affecter la nouvelle valeur dans la zone de texte. J'ai essayé sans succès : zonetexte as control zonetexte as object zonetexte as textbox ... zonetexte = ... zonetexte.value = ... zonetexte.text = ...
Avez-vous 1 solution à mon pb svp ?
Merci d'avance, Stéphane
Bonjour.
Pourquoi ne passes-tu pas seulement l'indice de ton contrôle ?
Forms![Formulaire1]![Zonedetexte1] est composé de
Forms![Formulaire1]![Zonedetexte et de 1]
j'appellerais ma procédure par :
Sub bouton1_clic()
call maprocedure("1")
dans la procédure unique maprocedure j'indiquerais le nom du contrôle ainsi:
sub maprocedure(Indice as String)
Forms("formulaire1").Controls("Zonedetexte1" & Indice) = ...
end sub
ça parait compliqué mais très simple d'utilisation
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
"Stéphane Lavergne" <slavergne.enlevercetexte@power-m.fr> a écrit dans le
message de news:u2DkG95SDHA.3132@tk2msftngp13.phx.gbl...
Bonjour,
J'utlise plusieurs champs dans 1 formulaire
Forms![Formulaire1]![Zonedetexte1]
Forms![Formulaire1]![Zonedetexte2]
...
Forms![Formulaire1]![Zonedetexten]
Je le lis, je le traite, et je l'écris dans diverses procédures
événementielles.
Voici l'ancienne structure :
Sub bouton1_clic()
... ' 50 lignes de code
Forms![Formulaire1]![Zonedetexte1] = ...
... ' 50 lignes de code
end sub
Sub bouton2_clic()
... ' 50 lignes de code identique
Forms![Formulaire1]![Zonedetexte2] = ...
... ' 50 lignes de code identique
end sub
Sub bouton n_clic()
... ' 50 lignes de code identique
Forms![Formulaire1]![Zonedetexte n] = ...
... ' 50 lignes de code identique
end sub
Comme j'ai beaucoup de lignes de code en commun dans plusierus procédures,
à
part ce fameux champs qui difère,
j'aimerai utiliser 1 autre procédure en passant en paramètre le champ
ainsi
:
Sub bouton1_clic()
call procedure(Forms![Formulaire1]![Zonedetexte1])
end sub
Sub bouton2_clic()
call procedure(Forms![Formulaire1]![Zonedetexte2])
end sub
...
sub procedure(zonetexte as control)
... ' 50 lignes de code
zonetexte = ...
... ' 50 lignes de code
end sub
La structure Avant fonctionnait... mais cela ne fonctionne plus avec la
structure Apres : /
Je n'arrive pas à affecter la nouvelle valeur dans la zone de texte.
J'ai essayé sans succès :
zonetexte as control
zonetexte as object
zonetexte as textbox
...
zonetexte = ...
zonetexte.value = ...
zonetexte.text = ...
Pourquoi ne passes-tu pas seulement l'indice de ton contrôle ?
Forms![Formulaire1]![Zonedetexte1] est composé de Forms![Formulaire1]![Zonedetexte et de 1]
j'appellerais ma procédure par : Sub bouton1_clic() call maprocedure("1")
dans la procédure unique maprocedure j'indiquerais le nom du contrôle ainsi:
sub maprocedure(Indice as String) Forms("formulaire1").Controls("Zonedetexte1" & Indice) = ... end sub
ça parait compliqué mais très simple d'utilisation -- @+ Raymond Access MVP. http://access.seneque.free.fr/ http://users.skynet.be/mpfa/charte.htm pour une meilleure efficacité de tes interventions sur MPFA.
"Stéphane Lavergne" a écrit dans le message de news:
Bonjour,
J'utlise plusieurs champs dans 1 formulaire Forms![Formulaire1]![Zonedetexte1] Forms![Formulaire1]![Zonedetexte2] ... Forms![Formulaire1]![Zonedetexten]
Je le lis, je le traite, et je l'écris dans diverses procédures événementielles.
Voici l'ancienne structure :
Sub bouton1_clic() ... ' 50 lignes de code Forms![Formulaire1]![Zonedetexte1] = ... ... ' 50 lignes de code end sub Sub bouton2_clic() ... ' 50 lignes de code identique Forms![Formulaire1]![Zonedetexte2] = ... ... ' 50 lignes de code identique end sub Sub bouton n_clic() ... ' 50 lignes de code identique Forms![Formulaire1]![Zonedetexte n] = ... ... ' 50 lignes de code identique end sub
Comme j'ai beaucoup de lignes de code en commun dans plusierus procédures, à
part ce fameux champs qui difère, j'aimerai utiliser 1 autre procédure en passant en paramètre le champ ainsi
:
Sub bouton1_clic() call procedure(Forms![Formulaire1]![Zonedetexte1]) end sub Sub bouton2_clic() call procedure(Forms![Formulaire1]![Zonedetexte2]) end sub ... sub procedure(zonetexte as control) ... ' 50 lignes de code zonetexte = ... ... ' 50 lignes de code end sub
La structure Avant fonctionnait... mais cela ne fonctionne plus avec la structure Apres : /
Je n'arrive pas à affecter la nouvelle valeur dans la zone de texte. J'ai essayé sans succès : zonetexte as control zonetexte as object zonetexte as textbox ... zonetexte = ... zonetexte.value = ... zonetexte.text = ...
Avez-vous 1 solution à mon pb svp ?
Merci d'avance, Stéphane
Raymond
.../... Erreur lire : sub maprocedure(Indice as String) Forms("formulaire1").Controls("Zonedetexte" & Indice) = ... au lieu de sub maprocedure(Indice as String) Forms("formulaire1").Controls("Zonedetexte1" & Indice) = ...
excuses. -- @+ Raymond Access MVP. http://access.seneque.free.fr/ http://users.skynet.be/mpfa/charte.htm pour une meilleure efficacité de tes interventions sur MPFA.
.../...
Erreur lire :
sub maprocedure(Indice as String)
Forms("formulaire1").Controls("Zonedetexte" & Indice) = ...
au lieu de
sub maprocedure(Indice as String)
Forms("formulaire1").Controls("Zonedetexte1" & Indice) = ...
excuses.
--
@+
Raymond Access MVP.
http://access.seneque.free.fr/
http://users.skynet.be/mpfa/charte.htm pour une meilleure
efficacité de tes interventions sur MPFA.
.../... Erreur lire : sub maprocedure(Indice as String) Forms("formulaire1").Controls("Zonedetexte" & Indice) = ... au lieu de sub maprocedure(Indice as String) Forms("formulaire1").Controls("Zonedetexte1" & Indice) = ...
excuses. -- @+ Raymond Access MVP. http://access.seneque.free.fr/ http://users.skynet.be/mpfa/charte.htm pour une meilleure efficacité de tes interventions sur MPFA.
Xavier HUE
Bonjour Stéphane,
Sub ModifierControle(ctrl As Object) MsgBox ctrl.Value ctrl.Value = InputBox("Nouvelle Valeur", "Valeur actuelle " & ctrl.Value) End Sub