afficher des variables
Le
Michel

Bonjour,
J'ai un problème qui me turlupine, mais c'est vrai que je ne suis pas très
bon en Vba. Pourtant, j'essaie lol.
Je veux récupérer 5 cellules disséminées dans une feuille. (Apparemment, ça,
j'y arrive).
Je veux attribuer ces 5 cellules à 5 variables, que j'ai nommées var1 à var
5.
Je veux aller dans une autre feuille et afficher ces 5 variables côte à
côte.
Voici ce que j'ai tenté
range("a1").select
for x =1 to 5
selection.value=varx
selection.offset(columnoffset:=1).select
next.
J'ai mis des espions (var1, var2 var5,x,varx).
X est reconnu, var1, var2 ..var5, aussi, jamais varx.
La cellule active se déplace dans la boucle, mais rien ne s'affiche.
Si quelqu'un pouvait me dire ou je pêche, un grand merci à lui.
J'ai un problème qui me turlupine, mais c'est vrai que je ne suis pas très
bon en Vba. Pourtant, j'essaie lol.
Je veux récupérer 5 cellules disséminées dans une feuille. (Apparemment, ça,
j'y arrive).
Je veux attribuer ces 5 cellules à 5 variables, que j'ai nommées var1 à var
5.
Je veux aller dans une autre feuille et afficher ces 5 variables côte à
côte.
Voici ce que j'ai tenté
range("a1").select
for x =1 to 5
selection.value=varx
selection.offset(columnoffset:=1).select
next.
J'ai mis des espions (var1, var2 var5,x,varx).
X est reconnu, var1, var2 ..var5, aussi, jamais varx.
La cellule active se déplace dans la boucle, mais rien ne s'affiche.
Si quelqu'un pouvait me dire ou je pêche, un grand merci à lui.
A mon avis, tu n'as pas publié tout ton code.
Tu mets le contenu de "Varx" dans A1:E1 ?
Daniel
Voici une procédure dont tu peux t'inspirer
dans ta situation :
'---------------------------------------------------
Sub Test()
Dim T(1 To 5), A As Long
'Tu places les 5 valeurs des 5 cellules
'dans une variable de type tableau (array)
With Worksheets("Feuil1")
T(1) = .Range("A1")
T(2) = .Range("C3")
T(3) = .Range("D33")
T(4) = .Range("G45")
T(5) = .Range("h66")
End With
'Et pour copier ce tableau dans une autre
'feuille sur une même ligne
With Worksheets("Feuil2")
'tu choisis la cellule de ton choix
.Range("B5").Resize(, 5) = T
End With
End Sub
'---------------------------------------------------
MichD
---------------------------------------------------------------
Si tu as 5 variables : Var1 , Var2 , Var3 , Var4 , Var5
Tu ne peux pas utiliser ce type de boucle...
For x = 1 to 5
Msgbox Var & x
Next
La concaténation n'est pas permise sur les noms des variables.
MichD
---------------------------------------------------------------
utilisable dans mon cas.
En tout cas, un grand merci a tous les deux.
"DanielCo" a écrit dans le message de groupe de discussion :
ktoblj$fgp$
Bonjour,
A mon avis, tu n'as pas publié tout ton code.
Tu mets le contenu de "Varx" dans A1:E1 ?
Daniel
Je vais tenter la solution que tu m'as proposée.
Et si ce type de boucle n'est pas utilisable dans mon cas, alors tu as
grandement répondu à ma question, car c'était ma principale voie de
recherche.
En te remerciant encore
Sincères salutations
"MichD" a écrit dans le message de groupe de discussion :
ktohpn$1hs$
à titre de complément,
Si tu as 5 variables : Var1 , Var2 , Var3 , Var4 , Var5
Tu ne peux pas utiliser ce type de boucle...
For x = 1 to 5
Msgbox Var & x
Next
La concaténation n'est pas permise sur les noms des variables.
MichD
---------------------------------------------------------------
sinon :
With Sheets("Feuil1")
Sheets("Feuil2").[A1:E1].Value = Union(.[B13], .[D16], .[F14],
.[H17], .[J14]).Value
End With
évite de faire une boucle.
Daniel
Au moins j'aurais appris des choses.
Et pour mon problème, tout roule.
Donc encore merci et félicitations à tous les deux
"DanielCo" a écrit dans le message de groupe de discussion :
ktr32o$erp$
Si tu veux travailler avec des variables, prends la méthode de MichD,
sinon :
With Sheets("Feuil1")
Sheets("Feuil2").[A1:E1].Value = Union(.[B13], .[D16], .[F14],
.[H17], .[J14]).Value
End With
évite de faire une boucle.
Daniel