Courbe avec cellules actives (excel)

Résolu
Bonjour,

J'ai fabriqué une macro, qui me trace la courbe de pionts sellectionnés dans une feuille, en mode enregistrement. Voici le résultat :
Range("B1:C1").Select
Range(Selection, Selection.End(xlDown)).Select
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("I=f(U)").Range("B1:C734")
ActiveChart.Location Where:=xlLocationAsObject, Name:="I=f(U)"

Maintenant, le nombre de point n'étant pas toujours 734, je voudrais remplacer ce programme par :
Range("B1:C1").Select
Range(Selection, Selection.End(xlDown)).Select
Charts.Add
ActiveChart.ChartType = xlXYScatter
ActiveChart.SetSourceData Source:=Sheets("I=f(U)").ActiveRange
ActiveChart.Location Where:=xlLocationAsObject, Name:="I=f(U)"

Mais cela ne fonctionne pas.

Quelqu'un pourait-il me dire pourquoi, et comment faire pour que cela fonctionne ?
merci.
Configuration: Windows XP
Internet Explorer 7.0

4 réponses

  1. Il me semblait avoir déjà vu cette fonction.
    Bref
    Merci encore.
    0
    1. Salut,
      Ici, "Zone" n'est pas une fonction, mais une variable de type Range que tu as définie avec Dim Zone as Range. On lui affecte la valeur voulue avec Set Zone = Selection et on la réutilise un peu plus loin.
      Quant à Activerange, je ne suis pas sûr que ça existe.
      I.
      0
      1. Merci Ivan-hoe,
        cela fonctionne parfaitement.
        Je me demande quand même pourquoi il accepte la fonction "zone" et pas la fonction activeRange
        quelqu'un saurait-il me le dire ?
        0
        1. Bonjour,
          tu peux contourner le problème en créant une variable Range (ici nommée Zone) qui correspond à ta plage de données.

          Range("B1:C1").Select
          Range(Selection, Selection.End(xlDown)).Select
          Dim Zone As Range: Set Zone = Selection
          Charts.Add
          ActiveChart.ChartType = xlXYScatter
          ActiveChart.SetSourceData Source:=Zone
          ActiveChart.Location Where:=xlLocationAsObject, Name:="I=f(U)"

          I.
          0