Récupération du nom de la feuille active dans une cellule Excel

Bonjour à tous,

Contexte du problème :

Avec Excel 2010 et un fichier CL.xlsm et 2 feuilles de calcul A et B

1* Dans le Module N°6 de la macro du fichier CL, j’ai placé :

Function feuilleactive()

feuilleactive = ActiveSheet.Name

End Function

Dans la feuille A et la feuille B d’Excel, en écrivant :

=Module6.feuilleactive() dans A1 de A et de B "

Si CONCATENER(A1 de A et A1 de B) est écrit « AB » et non « A » ou « B » exclusivement suivant le seul onglet activé. Cette information permettant d’autoriser la validation d’autres cellules de A si elle est seule activée ou de B si cette dernière est seule activée mais jamais « AB » des 2 feuilles

S’il y aune solution différente pour y parvenir, j’e n serais très fier .

Très cordialement à tous et joyeuses fêtes

Bonjour,

Pour connaître le nombre de feuilles actives, tu peux utiliser la fonction :

Function NbFeuillesActives()
  NbFeuillesActives = ActiveWindow.SelectedSheets.Count
End Function

Daniel

Oups, ça ne fonctionne pas et je ne comprends pas pourquoi...

Merci Daniel pour cette formule de comptage du nombre de feuilles actives.

Je l'ai vérifié avec dans excel: = NbFeuillesActives() et c'est =1 (normal) mais je n'en sais pas plus pour enregistrer dans une cellule, aquelle des 2 feuilles A& B est réellement active.

Merci de ton aide en tous cas

Bonjour Matysek35, DanielC,

Avec la fonction ci-dessous qui liste dans une boîte de messages les noms des feuilles en sélection.

Mettre uniquement = NbSht() en cellule A1 de la première feuille. Pas nécessaire sur les autres.

Function NbSht()
Dim Sht As Worksheet, Ong As String
Application.Volatile
NbSht = Windows(1).SelectedSheets.Count
If NbSht > 1 Then
For Each Sht In Windows(1).SelectedSheets
Ong = Sht.Name & Chr(10) & Ong
Next
MsgBox NbSht & " Feuilles en sélection" & Chr(10) & Ong
End If
End Function

Toute entrée dans une cellule d'une feuille active ne fera aucune alerte. Sauf si une autre ou plus de feuilles sont sélectionnées.

Merci Daniel pour la nouvelle macro que j’ai placée en A1 de A mais aussi de B après plusieurs tests.

NbSht = toujours= 1 avec le compteur de feuilles et on quitte la macro, en passant manuellement d’un onglet à l l’autre d’où ma question : Quelles sont les conditions pour que NbSht prenne une valeur supérieure sachant qu’il compte des feuilles du classeur.

Par ailleurs, dans une autre cellule, dans chacune des 2 feuilles A et B, et sans macro, j’affiche bien le nom de chaque feuille concernée avec cette formule :

=DROITE(CELLULE("nomfichier";$A$3);NBCAR(CELLULE("nomfichier";$A$3))-TROUVE("]";CELLULE("nomfichier";$A$3)))

Mais pas d’information me confirmant, dans une cellule, si la feuille est active ou non, mise à part qu’on le suppose lorsque l’onglet concerné est sélectionné manuellement.

J’espère que l’on va y arriver. A bientôt et profite du week-end.

Oui, comme je l'ai indiqué dans mon dernier message, ça ne fonctionne pas et je ne comprends pas pourquoi. Je vais ouvrir une nouvelle discussion sur le forum.

Daniel

Merci Daniel, je vais suivre cela sur le forum.

Belle journée

A nouveau,

Quelles sont les conditions pour que NbSht prenne une valeur supérieure sachant qu’il compte des feuilles du classeur.

Apparemment tu n'as pas bien lu le message que j'ai posté hier à 18h12.

Toute entrée dans une cellule d'une feuille active ne fera aucune alerte. Sauf si une autre ou plus de feuilles sont sélectionnées

Toute entrée dans une cellule implique nécessairement que soit inscrit dans une cellule (quelconque) un texte ou une valeur.

Et il n'y a pas besoin de placer la formule =NbSht() dans les cellules A1 de toutes les feuilles. Seule la première feuille suffit.

La preuve ci-dessous.

image image

Oh! merci Daniel, j'ai testé avec succès ce que tu m'a écrit en dernier. Je peux utiliser maintenant l'information.

Je ne doute pas que cela pourra aider d'autres personnes.

Bonne continuation à toi et au plaisir

Bonjour à tous,

@ X Cellus,

Je crois qu'on s'est mal compris.

- Nouveau classeur

- Ajout de la fonction dans un module standard.

- Sélection de deux feuilles.

Ajout de la fonction en E3.

- Résultat : 1

J'ai avancé ce matin :

- Sur le même ordi, la fonction donne le résultat correct avec Excel 2010

- Ma version actuelle est Excel 365 insider beta.

Rechercher des sujets similaires à "recuperation nom feuille active"