OVH Cloud OVH Cloud

mise en variable du nom d'un onglet

11 réponses
Avatar
Elicend_News
Bonjour,

est ce possible d'avoir le nom d'un onglet en variable dans une formule ?
si ce n'est pas possible, comment faire pour utiliser une formule faisant
référence à un onglet qui peut etre choisi par l'utilisateur ?

j'ai bien une idée, en faisant rédérence dans les formules à un onglet
spécifiques sur lequel je viens coller les résultats de l'onglet choisi mais
ca me parait un peu trop bricolage ???

merci d'avance!

--

@ plus
Elicend
________________________

Attention adresse e-mail :
inconicoAfreePOINTfr
A = @
POINT = .
________________________

10 réponses

1 2
Avatar
denis le breton
en VBA tu fais un
Workbooks(nomdufichier).sheets5nomdelafeuille).Activate
pour sélectionner une feuille d'un fichier qui n'est pas actif
ou
Worksheets(nomdelafeuille).select
si le fichier est actif

Et voila en espérant que cela réponde à ton interrogation
A+
Denis

Bonjour,

est ce possible d'avoir le nom d'un onglet en variable dans une formule ?
si ce n'est pas possible, comment faire pour utiliser une formule faisant
référence à un onglet qui peut etre choisi par l'utilisateur ?

j'ai bien une idée, en faisant rédérence dans les formules à un onglet
spécifiques sur lequel je viens coller les résultats de l'onglet choisi mais
ca me parait un peu trop bricolage ???

merci d'avance!

--

@ plus
Elicend
________________________

Attention adresse e-mail :
inconicoAfreePOINTfr
A = @
POINT = .
________________________





Avatar
Paul V.
Bonjour,

En VBA pas de problème. Mais en formule, cela me parait un peu tiré par les
cheveux.
La seule solution.

Dans une cellule "neutre" demander d'introduire le nom ou le numéro de la
feuille, puis faire une formule "si" qui tient compte de la valeur de cette
cellule.

Il faudrait avoir une idée du nombre de feuilles concernées et du type de
formule pour t'aider plus.

A+

Paul V
"Elicend_News" <inconicoAfreePOINTfr> a écrit dans le message de news:
41e24cab$0$417$
Bonjour,

est ce possible d'avoir le nom d'un onglet en variable dans une formule ?
si ce n'est pas possible, comment faire pour utiliser une formule faisant
référence à un onglet qui peut etre choisi par l'utilisateur ?

j'ai bien une idée, en faisant rédérence dans les formules à un onglet
spécifiques sur lequel je viens coller les résultats de l'onglet choisi
mais
ca me parait un peu trop bricolage ???

merci d'avance!

--

@ plus
Elicend
________________________

Attention adresse e-mail :
inconicoAfreePOINTfr
A = @
POINT = .
________________________




Avatar
Elicend_News
salut

merci pour ta piste, mais j'ai peur que le choix du nombre d'onglets dépasse
les 7 qui seront la limite d'enchainement de conditions si ?

en fait j'ai différents tableaux un par onglet, et je veux faire une formule
qui aille chercher des coefficients dans les tableaux en en fonction d'un
choix d'un utilisateur.

de plus je butte sur un deuxieme probleme dans mes tableaux, je n'arrive pas
à utiliser la fonction equiv qui est à ma connaissance la seule à me
permettre d'avoir la valeur immédiatement supérieure ? il faudrait que mon
tableau soit ordonné dans l'ordre décroissant et ca n'est pas possible :(

bref... suis pas sortie d'affaire moi lol ;)



"Paul V." a écrit dans le message de
news:u%23kg$
Bonjour,

En VBA pas de problème. Mais en formule, cela me parait un peu tiré par
les

cheveux.
La seule solution.

Dans une cellule "neutre" demander d'introduire le nom ou le numéro de la
feuille, puis faire une formule "si" qui tient compte de la valeur de
cette

cellule.

Il faudrait avoir une idée du nombre de feuilles concernées et du type de
formule pour t'aider plus.

A+

Paul V
"Elicend_News" <inconicoAfreePOINTfr> a écrit dans le message de news:
41e24cab$0$417$
Bonjour,

est ce possible d'avoir le nom d'un onglet en variable dans une formule
?


si ce n'est pas possible, comment faire pour utiliser une formule
faisant


référence à un onglet qui peut etre choisi par l'utilisateur ?

j'ai bien une idée, en faisant rédérence dans les formules à un onglet
spécifiques sur lequel je viens coller les résultats de l'onglet choisi
mais
ca me parait un peu trop bricolage ???

merci d'avance!

--

@ plus
Elicend
________________________

Attention adresse e-mail :
inconicoAfreePOINTfr
A = @
POINT = .
________________________








Avatar
Michel Gaboly
Bonsoir,

Tu peux utiliser LIRE.CLASSEUR(1) pour construire une liste des onglets :

associe au nom ListeFeuilles (par exemple)

=SUBSTITUE(LIRE.CLASSEUR(1);"[" & LIRE.DOCUMENT(68) & "]";"")
Avatar
Michel Gaboly
Fin du message précédent encore tronqué ;-((((((

Tu peux ensuite faire ainsi référence à l'onglet n :

=INDEX(ListeFeuilles;n)

+ d'info ici (réponse récente)
http://www.gaboly.com/MPFE/LireClasseur1.html

--
Cordialement,

Michel Gaboly
www.gaboly.com
Avatar
Elicend_News
elle est pas mal ton astuce ! je la mets de coté!

j'ai solutionné le probleme en faisant d'une pierre 2 coups avec la fonction
suivante :

je stock le résultat de l'onglet choisi sur un onglet de variable, et je
scan mon tableau pour trouver la valeur sup en faisant un do loop !

ca fonctionne ! merci pour ton aide

Function trouve_sup_prix(Camp_Ref)
var_prix_SUP_01 = 10
var_prix_SUP_02 = 6

Nom_table_appro = Sheets("variables").Cells(2, 1).Value

'sécurité s'il n'y a pas de camp
If Camp_Ref < 0 Then
trouve_sup_prix = "probleme de camp"
Exit Function
End If

Do While Sheets(Nom_table_appro).Cells(var_prix_SUP_01,
var_prix_SUP_02).Value <> "" 'tand que les colonnes ne sont pas vides
If Sheets(Nom_table_appro).Cells(var_prix_SUP_01, var_prix_SUP_02).Value
Camp_Ref Then 'si c'est supérieur
trouve_sup_prix = Sheets(Nom_table_appro).Cells(var_prix_SUP_01,

var_prix_SUP_02).Value
Exit Do 'si la valeur supérieure est trouvée on sort de la boucle
pour gagner du temps de calcul
End If
var_prix_SUP_02 = var_prix_SUP_02 + 1 'incrément de la colonne
Loop

'autre solution mais plus lente
'For boucle = 1 To 30 Step 1
' If Sheets(Nom_table_appro).Cells(var_prix_SUP_01,
var_prix_SUP_02).Value > Camp_Ref Then
' trouve_sup_prix = Sheets(Nom_table_appro).Cells(var_prix_SUP_01,
var_prix_SUP_02).Value
' Exit For
' End If
' var_prix_SUP_02 = var_prix_SUP_02 + 1
'Next boucle

If trouve_sup_prix = "" Then trouve_sup_prix = 99999
End Function


"Michel Gaboly" a écrit dans le message de
news:OXcKs$
Fin du message précédent encore tronqué ;-((((((

Tu peux ensuite faire ainsi référence à l'onglet n :

=INDEX(ListeFeuilles;n)

+ d'info ici (réponse récente)
http://www.gaboly.com/MPFE/LireClasseur1.html

--
Cordialement,

Michel Gaboly
www.gaboly.com


Avatar
Ellimac
Bonjour,

Avec le nom de feuille dans la cellule A1 et récup de la
cellule B6 :
=INDIRECT(A1&"!B6")

Camille

-----Message d'origine-----
Bonjour,

est ce possible d'avoir le nom d'un onglet en variable
dans une formule ?

si ce n'est pas possible, comment faire pour utiliser une
formule faisant

référence à un onglet qui peut etre choisi par
l'utilisateur ?


j'ai bien une idée, en faisant rédérence dans les
formules à un onglet

spécifiques sur lequel je viens coller les résultats de
l'onglet choisi mais

ca me parait un peu trop bricolage ???

merci d'avance!

--

@ plus
Elicend
________________________

Attention adresse e-mail :
inconicoAfreePOINTfr
A = @
POINT = .
________________________


.



Avatar
Clément Marcotte
Ça, ça n'arrive pas dans OE ;-)


"Michel Gaboly" a écrit dans le message de
news:OXcKs$
Fin du message précédent encore tronqué ;-((((((

Tu peux ensuite faire ainsi référence à l'onglet n :

=INDEX(ListeFeuilles;n)

+ d'info ici (réponse récente)
http://www.gaboly.com/MPFE/LireClasseur1.html

--
Cordialement,

Michel Gaboly
www.gaboly.com


Avatar
Elicend_News
o la vache ! elle est top ton astuce !!!
ca marche aussi nikel je vais voir si je peux pas simplifier mes fonctions
du coup !

merci

"Ellimac" a écrit dans le message de
news:10b501c4f718$f7473010$
Bonjour,

Avec le nom de feuille dans la cellule A1 et récup de la
cellule B6 :
=INDIRECT(A1&"!B6")

Camille

-----Message d'origine-----
Bonjour,

est ce possible d'avoir le nom d'un onglet en variable
dans une formule ?

si ce n'est pas possible, comment faire pour utiliser une
formule faisant

référence à un onglet qui peut etre choisi par
l'utilisateur ?


j'ai bien une idée, en faisant rédérence dans les
formules à un onglet

spécifiques sur lequel je viens coller les résultats de
l'onglet choisi mais

ca me parait un peu trop bricolage ???

merci d'avance!

--

@ plus
Elicend
________________________

Attention adresse e-mail :
inconicoAfreePOINTfr
A = @
POINT = .
________________________


.



Avatar
AV
est ce possible d'avoir le nom d'un onglet en variable dans une formule ?


=STXT(CELLULE("filename";A1);TROUVE("]";CELLULE("filename";A1))+1;32)

PS : le fichier doit avoir été enregistré
AV

1 2