Comment mettre dans une variable le nom d'un champ, et non pas la chaine de
caractère que ce nom constitue nécessairement ? Voici le problème :
J'ai une table de 4 champs : ID_titre , titre_fr , titre_en , titre_de.
Soit en fait, une table qui contient un titre (mettons de livre) en trois
langues différentes.
Dans ma fonction, je pourrais écrire :
...
variable1 = .[titre fr]
variable2 = .[titre en]
variable3 = .[titre de]
...
Pour des raisons pratiques un peu longues à exposer ici (et sans grand
intérêt), je voudrais pouvoir écrire quelque chose du genre :
...
Dim variable (3) as string '(à moins que ce soit "as field" ? voir la suite)
Dim langue (3) as string
langue (1) = "fr"
langue (2) = "en"
langue(3) = "de"
...
for i = 1 to 3
variable(i) = ".[titre" & langue (i) & "]"
next i
...
D'expérience, je sais que ce n'est pas la bonne façon d'écrire l'affectation
des "variable(i)", puisque elles prennent pour valeurs les chaines ".[titre
fr]" , ".[titre en]" et ".[titre de]", et non pas le contenu des champs des
mêmes noms.
Donc... Quelle est la bonne méthode pour variabiliser mes noms de champs ?
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
LiR
Bonjour,
-> à moins que ce soit "as field" ?
Je dirais oui :
Dim variable (1 to 3) as DAO.Field Dim langue (1 to 3) as String Dim RS as DAO.Recordset langue (1) = "fr" langue (2) = "en" langue(3) = "de"
for i = 1 to 3 Set variable(i) = RS.Fields("titre" & langue (i)) next i
'..... 'Plus loin (exemple) :
contenu = variable(i).Value
Je pense que ça devrait répondre à ta question
Bonsoir,
Comment mettre dans une variable le nom d'un champ, et non pas la chaine de caractère que ce nom constitue nécessairement ? Voici le problème :
J'ai une table de 4 champs : ID_titre , titre_fr , titre_en , titre_de. Soit en fait, une table qui contient un titre (mettons de livre) en trois langues différentes.
Dans ma fonction, je pourrais écrire : .... variable1 = .[titre fr] variable2 = .[titre en] variable3 = .[titre de] .... Pour des raisons pratiques un peu longues à exposer ici (et sans grand intérêt), je voudrais pouvoir écrire quelque chose du genre : .... Dim variable (3) as string '(à moins que ce soit "as field" ? voir la suite) Dim langue (3) as string langue (1) = "fr" langue (2) = "en" langue(3) = "de" .... for i = 1 to 3 variable(i) = ".[titre" & langue (i) & "]" next i ....
D'expérience, je sais que ce n'est pas la bonne façon d'écrire l'affectation des "variable(i)", puisque elles prennent pour valeurs les chaines ".[titre fr]" , ".[titre en]" et ".[titre de]", et non pas le contenu des champs des mêmes noms.
Donc... Quelle est la bonne méthode pour variabiliser mes noms de champs ?
Merci de votre aide, JF
Bonjour,
-> à moins que ce soit "as field" ?
Je dirais oui :
Dim variable (1 to 3) as DAO.Field
Dim langue (1 to 3) as String
Dim RS as DAO.Recordset
langue (1) = "fr"
langue (2) = "en"
langue(3) = "de"
for i = 1 to 3
Set variable(i) = RS.Fields("titre" & langue (i))
next i
'.....
'Plus loin (exemple) :
contenu = variable(i).Value
Je pense que ça devrait répondre à ta question
Bonsoir,
Comment mettre dans une variable le nom d'un champ, et non pas la chaine de
caractère que ce nom constitue nécessairement ? Voici le problème :
J'ai une table de 4 champs : ID_titre , titre_fr , titre_en , titre_de.
Soit en fait, une table qui contient un titre (mettons de livre) en trois
langues différentes.
Dans ma fonction, je pourrais écrire :
....
variable1 = .[titre fr]
variable2 = .[titre en]
variable3 = .[titre de]
....
Pour des raisons pratiques un peu longues à exposer ici (et sans grand
intérêt), je voudrais pouvoir écrire quelque chose du genre :
....
Dim variable (3) as string '(à moins que ce soit "as field" ? voir la suite)
Dim langue (3) as string
langue (1) = "fr"
langue (2) = "en"
langue(3) = "de"
....
for i = 1 to 3
variable(i) = ".[titre" & langue (i) & "]"
next i
....
D'expérience, je sais que ce n'est pas la bonne façon d'écrire l'affectation
des "variable(i)", puisque elles prennent pour valeurs les chaines ".[titre
fr]" , ".[titre en]" et ".[titre de]", et non pas le contenu des champs des
mêmes noms.
Donc... Quelle est la bonne méthode pour variabiliser mes noms de champs ?
Dim variable (1 to 3) as DAO.Field Dim langue (1 to 3) as String Dim RS as DAO.Recordset langue (1) = "fr" langue (2) = "en" langue(3) = "de"
for i = 1 to 3 Set variable(i) = RS.Fields("titre" & langue (i)) next i
'..... 'Plus loin (exemple) :
contenu = variable(i).Value
Je pense que ça devrait répondre à ta question
Bonsoir,
Comment mettre dans une variable le nom d'un champ, et non pas la chaine de caractère que ce nom constitue nécessairement ? Voici le problème :
J'ai une table de 4 champs : ID_titre , titre_fr , titre_en , titre_de. Soit en fait, une table qui contient un titre (mettons de livre) en trois langues différentes.
Dans ma fonction, je pourrais écrire : .... variable1 = .[titre fr] variable2 = .[titre en] variable3 = .[titre de] .... Pour des raisons pratiques un peu longues à exposer ici (et sans grand intérêt), je voudrais pouvoir écrire quelque chose du genre : .... Dim variable (3) as string '(à moins que ce soit "as field" ? voir la suite) Dim langue (3) as string langue (1) = "fr" langue (2) = "en" langue(3) = "de" .... for i = 1 to 3 variable(i) = ".[titre" & langue (i) & "]" next i ....
D'expérience, je sais que ce n'est pas la bonne façon d'écrire l'affectation des "variable(i)", puisque elles prennent pour valeurs les chaines ".[titre fr]" , ".[titre en]" et ".[titre de]", et non pas le contenu des champs des mêmes noms.
Donc... Quelle est la bonne méthode pour variabiliser mes noms de champs ?
Merci de votre aide, JF
Jean-François
Oh que c'est beau ! Je sens que ça va marcher à merveille !
Merci de ton aide JF
"LiR" a écrit dans le message de news:
Bonjour,
-> à moins que ce soit "as field" ?
Je dirais oui :
Dim variable (1 to 3) as DAO.Field Dim langue (1 to 3) as String Dim RS as DAO.Recordset langue (1) = "fr" langue (2) = "en" langue(3) = "de"
for i = 1 to 3 Set variable(i) = RS.Fields("titre" & langue (i)) next i
'..... 'Plus loin (exemple) :
contenu = variable(i).Value
Je pense que ça devrait répondre à ta question
Bonsoir,
Comment mettre dans une variable le nom d'un champ, et non pas la chaine de caractère que ce nom constitue nécessairement ? Voici le problème :
J'ai une table de 4 champs : ID_titre , titre_fr , titre_en , titre_de. Soit en fait, une table qui contient un titre (mettons de livre) en trois langues différentes.
Dans ma fonction, je pourrais écrire : .... variable1 = .[titre fr] variable2 = .[titre en] variable3 = .[titre de] .... Pour des raisons pratiques un peu longues à exposer ici (et sans grand intérêt), je voudrais pouvoir écrire quelque chose du genre : .... Dim variable (3) as string '(à moins que ce soit "as field" ? voir la suite) Dim langue (3) as string langue (1) = "fr" langue (2) = "en" langue(3) = "de" .... for i = 1 to 3 variable(i) = ".[titre" & langue (i) & "]" next i ....
D'expérience, je sais que ce n'est pas la bonne façon d'écrire l'affectation des "variable(i)", puisque elles prennent pour valeurs les chaines ".[titre fr]" , ".[titre en]" et ".[titre de]", et non pas le contenu des champs des mêmes noms.
Donc... Quelle est la bonne méthode pour variabiliser mes noms de champs ?
Merci de votre aide, JF
Oh que c'est beau !
Je sens que ça va marcher à merveille !
Merci de ton aide
JF
"LiR" <LiR@discussions.microsoft.com> a écrit dans le message de news:
0D9EFDFA-806E-4A30-B2B7-4CBB35134E74@microsoft.com...
Bonjour,
-> à moins que ce soit "as field" ?
Je dirais oui :
Dim variable (1 to 3) as DAO.Field
Dim langue (1 to 3) as String
Dim RS as DAO.Recordset
langue (1) = "fr"
langue (2) = "en"
langue(3) = "de"
for i = 1 to 3
Set variable(i) = RS.Fields("titre" & langue (i))
next i
'.....
'Plus loin (exemple) :
contenu = variable(i).Value
Je pense que ça devrait répondre à ta question
Bonsoir,
Comment mettre dans une variable le nom d'un champ, et non pas la chaine
de
caractère que ce nom constitue nécessairement ? Voici le problème :
J'ai une table de 4 champs : ID_titre , titre_fr , titre_en , titre_de.
Soit en fait, une table qui contient un titre (mettons de livre) en trois
langues différentes.
Dans ma fonction, je pourrais écrire :
....
variable1 = .[titre fr]
variable2 = .[titre en]
variable3 = .[titre de]
....
Pour des raisons pratiques un peu longues à exposer ici (et sans grand
intérêt), je voudrais pouvoir écrire quelque chose du genre :
....
Dim variable (3) as string '(à moins que ce soit "as field" ? voir la
suite)
Dim langue (3) as string
langue (1) = "fr"
langue (2) = "en"
langue(3) = "de"
....
for i = 1 to 3
variable(i) = ".[titre" & langue (i) & "]"
next i
....
D'expérience, je sais que ce n'est pas la bonne façon d'écrire
l'affectation
des "variable(i)", puisque elles prennent pour valeurs les chaines
".[titre
fr]" , ".[titre en]" et ".[titre de]", et non pas le contenu des champs
des
mêmes noms.
Donc... Quelle est la bonne méthode pour variabiliser mes noms de champs
?
Oh que c'est beau ! Je sens que ça va marcher à merveille !
Merci de ton aide JF
"LiR" a écrit dans le message de news:
Bonjour,
-> à moins que ce soit "as field" ?
Je dirais oui :
Dim variable (1 to 3) as DAO.Field Dim langue (1 to 3) as String Dim RS as DAO.Recordset langue (1) = "fr" langue (2) = "en" langue(3) = "de"
for i = 1 to 3 Set variable(i) = RS.Fields("titre" & langue (i)) next i
'..... 'Plus loin (exemple) :
contenu = variable(i).Value
Je pense que ça devrait répondre à ta question
Bonsoir,
Comment mettre dans une variable le nom d'un champ, et non pas la chaine de caractère que ce nom constitue nécessairement ? Voici le problème :
J'ai une table de 4 champs : ID_titre , titre_fr , titre_en , titre_de. Soit en fait, une table qui contient un titre (mettons de livre) en trois langues différentes.
Dans ma fonction, je pourrais écrire : .... variable1 = .[titre fr] variable2 = .[titre en] variable3 = .[titre de] .... Pour des raisons pratiques un peu longues à exposer ici (et sans grand intérêt), je voudrais pouvoir écrire quelque chose du genre : .... Dim variable (3) as string '(à moins que ce soit "as field" ? voir la suite) Dim langue (3) as string langue (1) = "fr" langue (2) = "en" langue(3) = "de" .... for i = 1 to 3 variable(i) = ".[titre" & langue (i) & "]" next i ....
D'expérience, je sais que ce n'est pas la bonne façon d'écrire l'affectation des "variable(i)", puisque elles prennent pour valeurs les chaines ".[titre fr]" , ".[titre en]" et ".[titre de]", et non pas le contenu des champs des mêmes noms.
Donc... Quelle est la bonne méthode pour variabiliser mes noms de champs ?