[Excel] passage de variable

Fermé
LeTom46 Messages postés 30 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 15 mai 2008 - 15 mai 2008 à 10:23
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 - 15 mai 2008 à 11:46
Bonjour,

Je voudrai faire la chose suivante :

Sheets("feuil1").select
Range("C13).FormulaR1C1 = "=feuil2!R3+varC3"

var étant une variable.

je range donc dans la cellule C13 de la feuil1, la valeur de la cellule C3+var de la feuille feuil2.

Exemple, si var vaut 2 alors on range la valeur de la cellule C5.
J'espère que vous pourrez m'aider

En vous remerciant!!!
A voir également:

3 réponses

memphiS710 Messages postés 11 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 18 avril 2012 2
15 mai 2008 à 10:29
salut

alors, voila un exemple

pour ranger la valeur de C13 en C5 avec var = 2

tu dois faire [C3].offset(var,0).value = [C13].value
1
Ivan-hoe Messages postés 433 Date d'inscription dimanche 17 février 2008 Statut Membre Dernière intervention 17 octobre 2008 309
15 mai 2008 à 10:35
Salut Le Tom,
plutôt dans l'autre sens, non ?
Range("C13).value = Sheets("feuil2").range("C3").offset(var,0).value
bref, c'est .offset(ligne,colonne) qu'il te faut.
I.
1
LeTom46 Messages postés 30 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 15 mai 2008
15 mai 2008 à 11:07
Merci ça marche sauf que maintenant, un autre problème se présente à moi...

En fait je récupère 2 valeurs et je dois les additionner. Un exemple pour expliquer :

Range("H 6").Value = Sheets("feuil2").Range("C2").Offset(var, 0).Value + Sheets("feuil2").Range("C5").Offset(var, 0).Value

Dans mon exemple ça ne fait pas l'addition, mais la concaténation des 2 valeurs.

var = 2 donc je voudrai faire l'addition de C4 et C7 qui contiennent respectivement 5 et 7, au lieu d'obtenir 12, j'obtient 57

Merci de votre aide.

J'ai pour l'instant une solution qui marche mais très très lourde... J'espère que je pourrai la simplifier grâce à vous...
0
memphiS710 Messages postés 11 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 18 avril 2012 2 > LeTom46 Messages postés 30 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 15 mai 2008
15 mai 2008 à 11:28
il faut que tu attribue un nom de variable au case concernée, tu les déclares puis tu réalises ton opération
sinon, tu obtiens en effet la concaténation des deux
0
LeTom46 Messages postés 30 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 15 mai 2008 > memphiS710 Messages postés 11 Date d'inscription mercredi 3 octobre 2007 Statut Membre Dernière intervention 18 avril 2012
15 mai 2008 à 11:43
merci de ta réponse. C'est ce que j'ai trouvé comme solution, mais ayant 70 case ça me fait 70 variable donc un peu lourd, mais bon ça marche :)
Encore merci
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 191 > LeTom46 Messages postés 30 Date d'inscription mardi 7 mars 2006 Statut Membre Dernière intervention 15 mai 2008
15 mai 2008 à 11:46
essaye avec...
Range("H 6").Value = Val(Sheets("feuil2").Range("C2").Offset(var, 0).Value) + Val(Sheets("feuil2").Range("C3").Offset(var + 2, 0).Value )
0
lermite222 Messages postés 8724 Date d'inscription dimanche 8 avril 2007 Statut Contributeur Dernière intervention 22 janvier 2020 1 191
15 mai 2008 à 10:54
bonjour,
A la mode de chez moi... :D
Sub GG()
Dim Var As Integer
    Var = 2
    Sheets("Feuil1").[C13].Value = _
        Sheets("feuil2").[C3].Offset(Var, 0).Value
End Sub

A+
1