Utiliser le nom d'une varaible string Right ou left

Bonjour à tous,

Voici un problème que j'essaye de résoudre depuis quelques heures et qui va certainement vous paraitre simple :

Voici ce que je veux faire.

J'ai plusieurs variables string, Eq1, Eq2...Eqn.

Dans ces variables sont stockées des équations de différentes régressions de courbes dans un graphe

En comparant les R2 des différentes régressions mon code choisit la meilleure et lui attribue un ordre, 1, 2, ... n avec une variable Order

Je souhaite maintenant extraire les coefficients de la régression dans des cellules en utilisant les fonctions left et right et c'est là que ça coince :

J'ai quelque chose du type Range(A1)= Left("Eq" & Order, 10) par exemple.

Cette expression me retourne Eq3 par exemple dans la cellule A1 si ma variable Order vaut 3, mais je n'arrive pas à faire executer la fonction left sur le contenu de l'équation 3.

Pouvez-vous m'aider sur ce point, existe-il une commande permettant d'évaluer "Eq"& Order dans la fonction left ?

En fichier joint le code que j'utilise

Merci à tous pour vos réponses.

Mathieu

21classeur2.xlsm (14.41 Ko)

Bonjour,

Le fichier que tu joint ne permet pas de savoir ce que tes variables peuvent contenir ?

Qu'y a-t-il dans..

Eq1 = ActiveChart.SeriesCollection(1).Trendlines(1).DataLabel.Text

A+

Bonjour,

Dans chacune des variables, Eq1 2 et 3 il y a les équations de différentes régressions :

Par exemple :

Eq1 : y = -5.979E-07x2 - 3.946E-04x + 1.812E+00 R² = 9.945E-01

Eq2 : y = -3.619E-10x3 + 5.153E-07x2 - 1.526E-03x + 2.192E+00 R² = 9.946E-01

Eq3 : y = -8.086E-11x4 + 3.313E-07x3 - 5.065E-04x2 + 3.408E-01x - 8.389E+01 R² = 9.987E-01

Merci d'avance

Ça commence à viendre..

mais j'ai pas encore compris.

Et tu voudrais quoi comme résultats?

EDIT : peut-être le résultat ?

    [A1] = Mid(eq1, InStr(1, eq1, "=") + 1)

Re EDIT:

J'avais pas compris du premier coup

A la place de déclarer eq1, eq2 et eq3

déclarer sous forme de tableau..

Dim eq(3) As String

Ce qui donnerait pour ton exemple..

    Left("Eq(Order), 10) 

OK merci je vais tester cela et je vous informe.

Mathieu


Super ça fonctionne,

Merci beaucoup Lermite, à bientôt sur le forum.

Mathieu

Rechercher des sujets similaires à "utiliser nom varaible string right left"