[Excel] passage de variable

LeTom46 Messages postés 30 Statut Membre -  
lermite222 Messages postés 9042 Statut Contributeur -
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!!!
Configuration: Windows XP
Internet Explorer 6.0

3 réponses

  1. memphiS710 Messages postés 11 Statut Membre 2
     
    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
  2. Ivan-hoe Messages postés 433 Date d'inscription   Statut Membre Dernière intervention   310
     
    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
    1. LeTom46 Messages postés 30 Statut Membre
       
      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
      1. memphiS710 Messages postés 11 Statut Membre 2 > LeTom46 Messages postés 30 Statut Membre
         
        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
      2. LeTom46 Messages postés 30 Statut Membre > memphiS710 Messages postés 11 Statut Membre
         
        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
      3. lermite222 Messages postés 9042 Statut Contributeur 1 199 > LeTom46 Messages postés 30 Statut Membre
         
        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
  3. lermite222 Messages postés 9042 Statut Contributeur 1 199
     
    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