J'ai un petit pb avec ma macro.
J'ai plusieurs variables de nom :
- nom_1
- nom_2
...
- nom_10
Je dois rentrer des valeurs grace à une boucle. Je me demandais comment
faire pour que ma macro incrémente mes variables :
for n=1 to 10
nom_n = cells (n,1)
next n
Je n'arrive pas à obtenir cette logique de boucle.
QQ'un serait il comment écrire cette boucle ?
Salut ! A ma connaissance (certes très limitée), ce n'est pas possible de "variabiliser" un nom de varaible. EN revanche, l'utilisation d'un tableau de strings me semble indiqué dans ton cas !
Option Base 1 Dim Nom() as string For n=1 to 10 ReDim Preserve Nom(n) As String Nom(n)Îlls(n,1) Next n
Attention tout de même que c'est pas testé et que l'option base doit être à 1 pour que ça marche a priori (c'est là- dessus que le plus gros doute subsiste...), dans tous les cas, l'option base devrait être égal à la première valeur prise par la boucle for...
Pour récupérer la kème variable, tu fais Nom(k) !
Ca te va ?
-----Message d'origine----- Salut à tous,
J'ai un petit pb avec ma macro. J'ai plusieurs variables de nom : - nom_1 - nom_2 ... - nom_10
Je dois rentrer des valeurs grace à une boucle. Je me demandais comment
faire pour que ma macro incrémente mes variables : for n=1 to 10 nom_n = cells (n,1) next n Je n'arrive pas à obtenir cette logique de boucle. QQ'un serait il comment écrire cette boucle ?
Merci.
.
Salut !
A ma connaissance (certes très limitée), ce n'est pas
possible de "variabiliser" un nom de varaible. EN
revanche, l'utilisation d'un tableau de strings me semble
indiqué dans ton cas !
Option Base 1
Dim Nom() as string
For n=1 to 10
ReDim Preserve Nom(n) As String
Nom(n)=Cells(n,1)
Next n
Attention tout de même que c'est pas testé et que l'option
base doit être à 1 pour que ça marche a priori (c'est là-
dessus que le plus gros doute subsiste...), dans tous les
cas, l'option base devrait être égal à la première valeur
prise par la boucle for...
Pour récupérer la kème variable, tu fais Nom(k) !
Ca te va ?
-----Message d'origine-----
Salut à tous,
J'ai un petit pb avec ma macro.
J'ai plusieurs variables de nom :
- nom_1
- nom_2
...
- nom_10
Je dois rentrer des valeurs grace à une boucle. Je me
demandais comment
faire pour que ma macro incrémente mes variables :
for n=1 to 10
nom_n = cells (n,1)
next n
Je n'arrive pas à obtenir cette logique de boucle.
QQ'un serait il comment écrire cette boucle ?
Salut ! A ma connaissance (certes très limitée), ce n'est pas possible de "variabiliser" un nom de varaible. EN revanche, l'utilisation d'un tableau de strings me semble indiqué dans ton cas !
Option Base 1 Dim Nom() as string For n=1 to 10 ReDim Preserve Nom(n) As String Nom(n)Îlls(n,1) Next n
Attention tout de même que c'est pas testé et que l'option base doit être à 1 pour que ça marche a priori (c'est là- dessus que le plus gros doute subsiste...), dans tous les cas, l'option base devrait être égal à la première valeur prise par la boucle for...
Pour récupérer la kème variable, tu fais Nom(k) !
Ca te va ?
-----Message d'origine----- Salut à tous,
J'ai un petit pb avec ma macro. J'ai plusieurs variables de nom : - nom_1 - nom_2 ... - nom_10
Je dois rentrer des valeurs grace à une boucle. Je me demandais comment
faire pour que ma macro incrémente mes variables : for n=1 to 10 nom_n = cells (n,1) next n Je n'arrive pas à obtenir cette logique de boucle. QQ'un serait il comment écrire cette boucle ?
Merci.
.
AV
Tu pourrais faire ça :
Sub zz_Noms() For n = 1 To 10 ActiveWorkbook.Names.Add Name:="nom_" & n, _ RefersTo:="=" & ActiveSheet.Name & "!" & Cells(n, 1).Address Next n End Sub
AV
"Yann BARBARAY" a écrit dans le message news: bm3kf4$v0l$
Salut à tous,
J'ai un petit pb avec ma macro. J'ai plusieurs variables de nom : - nom_1 - nom_2 ... - nom_10
Je dois rentrer des valeurs grace à une boucle. Je me demandais comment faire pour que ma macro incrémente mes variables : for n=1 to 10 nom_n = cells (n,1) next n Je n'arrive pas à obtenir cette logique de boucle. QQ'un serait il comment écrire cette boucle ?
Merci.
Tu pourrais faire ça :
Sub zz_Noms()
For n = 1 To 10
ActiveWorkbook.Names.Add Name:="nom_" & n, _
RefersTo:="=" & ActiveSheet.Name & "!" & Cells(n, 1).Address
Next n
End Sub
AV
"Yann BARBARAY" <ybarbaray@mmcmarketing.net> a écrit dans le message news:
bm3kf4$v0l$1@news-reader5.wanadoo.fr...
Salut à tous,
J'ai un petit pb avec ma macro.
J'ai plusieurs variables de nom :
- nom_1
- nom_2
...
- nom_10
Je dois rentrer des valeurs grace à une boucle. Je me demandais comment
faire pour que ma macro incrémente mes variables :
for n=1 to 10
nom_n = cells (n,1)
next n
Je n'arrive pas à obtenir cette logique de boucle.
QQ'un serait il comment écrire cette boucle ?
Sub zz_Noms() For n = 1 To 10 ActiveWorkbook.Names.Add Name:="nom_" & n, _ RefersTo:="=" & ActiveSheet.Name & "!" & Cells(n, 1).Address Next n End Sub
AV
"Yann BARBARAY" a écrit dans le message news: bm3kf4$v0l$
Salut à tous,
J'ai un petit pb avec ma macro. J'ai plusieurs variables de nom : - nom_1 - nom_2 ... - nom_10
Je dois rentrer des valeurs grace à une boucle. Je me demandais comment faire pour que ma macro incrémente mes variables : for n=1 to 10 nom_n = cells (n,1) next n Je n'arrive pas à obtenir cette logique de boucle. QQ'un serait il comment écrire cette boucle ?