Cellules Variable Excel Fonction | VB.net

Résolu
Bonjour,

Je désirerais avoir un petit coup de pouce afin de m'aider à progresser dans mon application, j'aimerais executer une instruction du style :

            wsExcel.Cells(newcell, i).Value = "=SOMME(" & wsExcel.Cells(6, i) & ":" & wsExcel.Cells(newcell - 1, i) & ")"


Mais bien sur ça ne passe pas, et avec wsExcel.Range, je ne peux pas car je n'utilise pas les lettres.

Voili Voilou, merci d'avance.

Cordialement,

Xineroks

3 réponses

  1. Contributeur
    Bonjour,

    peut être qu'en écrivant
    wsExcel.Cells(newcell, i).Value = "=SOMME(" & wsExcel.Cells(6, i).address & ":" & wsExcel.Cells(newcell - 1, i).address & ")"
    ça fonctionne ?

    Cordialement.
    1
    1. Eh bah dis donc, fallait le savoir que c'était .address ^^.

      Encore une fois grâce à toi j'arrive à avancer ! Tes aides me permettent de faire beaucoup de choses. Je te remercie sincèrement chossette9 !

      Cordialement,

      Xineroks
      1
      1. Contributeur
        Mais de rien !

        Pour l'explication, si tu n'utilise pas .Address, le programme prend par défaut .Value, ce qui signifie la valeur de la cellule. si tes deux cases, situées on va dire B6 et B14, et qu'elles contiennent "toto" et "titi", alors ta formule te demandait de faire la somme de toto à titi. Avec le .Address, tu demandes à faire la somme de B6 à B14.

        Cordialement.
        0
      2. Merci pour ces petits détails, c'est bien ce que je pensais :)
        0
    2. bonjour
      si tu veux obtenir une formule il te faut utiliser FormulaR1C1
      sinon pour obtenir une valeur
      With wsExcel
        v = WorksheetFunction.Sum(.Range(.Cells(6, i), .Cells(newcell - 1, i)))
        .Cells(newcell, i).Value = v
      End With

      bonne suite
      -1
      1. Merci, c'est vrai que j'utilise directement du texte à inserer afin de réaliser ma requête mais ce n'est peut être pas très adapté.
        0