Formule conditionnel avec nom d'onglet

Résolu/Fermé
Elcaprio - 20 nov. 2012 à 11:21
 Elcaprio - 20 nov. 2012 à 15:49
Bonjour,
Je souhaiterais savoir s'il est possible de faire une formule "si" qui vérifie un nom d'onglet.
Exemple: si(nom_onglet="elcaprio";0;1)
Merci d'avance pour vos réponses.

A voir également:

3 réponses

Morgothal Messages postés 1236 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 19 mai 2015 183
20 nov. 2012 à 11:43
Bonjour,
Pour pouvoir récupérer et utiliser le nom d'onglet je crois qu'il est possible de le faire seulement en VBA, avec :
 ActiveWorkbook.ActiveSheet.Name


A+
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
20 nov. 2012 à 12:21
Bonjour à tous,

et par formule :
=STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;20)

eric
0
Merci de vos réponses, je ne connais pas le vba, donc je vais essayé par la formule.
si j'ai bien compris je dois avoir:
=si(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;20)="elcaprio";0;1)
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
20 nov. 2012 à 13:56
Non, tu copie-colles la formule sans rien changer.
Le fichier doit être enregistré pour que ça fonctionne.

eric
0
Morgothal Messages postés 1236 Date d'inscription jeudi 22 avril 2010 Statut Membre Dernière intervention 19 mai 2015 183
Modifié par Morgothal le 20/11/2012 à 13:49
Ah exact je n'avais pas pensé à CELLULE.
Eric (salut), ta formule ne fonctionne que si le nom d'onglet ne dépasse pas 20 caractères (il peut en comprendre 32 je crois) ? (Edit : 31 en fait)

Cette formule renvoie le nom d'onglet, à intégrer dans un SI comme tu l'a proposé ici :
=DROITE(CELLULE("nomfichier";A1);NBCAR(CELLULE("nomfichier";A1))-TROUVE("]";CELLULE("nomfichier";A1);1))


-------------------
Cordialement,
Clément
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
20 nov. 2012 à 13:55
Oui, j'avais mis 20 (qui nomme ses onglets avec une telle longueur ?) ;-)) mais on peut mettre 50.
Que ça dépasse la longueur du nom n'est pas gênant et la formule est plus courte.

eric
0
Ça me fais une formule a rallonge mais sa fonctionne

=SI(DROITE(CELLULE("nomfichier";A1);NBCAR(CELLULE("nomfichier";A1))-TROUVE("]";CELLULE("nomfichier";A1);1))<>"";RECHERCHEV(DROITE(CELLULE("nomfichier";A1);NBCAR(CELLULE("nomfichier";A1))-TROUVE("]";CELLULE("nomfichier";A1);1));'Element de calcul'!A20:C26;2);"")

Un grand merci a vous deux
0
eriiic Messages postés 24601 Date d'inscription mardi 11 septembre 2007 Statut Contributeur Dernière intervention 25 novembre 2024 7 243
20 nov. 2012 à 15:39
Re,

tu n'as pas lu (ou compris mon post 5), pas besoin de rallonger la formule de base.
Si tu penses qu'un nom d'onglet peut être plus grand que 20 car tu remplaces 20 par 32.

Et à quoi sert : =SI(DROITE(CELLULE("nomfichier";A1);NBCAR(CELLULE("nomfichier";A1))-TROUVE("]";CELLULE("nomfichier";A1);1))<>"";... ?
Tu crois qu'un nom d'onglet peut-être vide ?

=RECHERCHEV(STXT(CELLULE("nomfichier";A1);TROUVE("]";CELLULE("nomfichier";A1))+1;32);'Element de calcul'!A20:C26;2)
devrait être suffisant.

eric
0
En effet, la formule de base fonctionne aussi et ma conditionnelle n'a plus de sens.
Merci pour la solution et pour le correctif .

Elcaprio
0