Combien de feuilles sont sélectionnées dans mon fichier

Bonjour,

La fonction FEUILLES() permet d'obtenir le nombre de feuille de mon fichier...

Est-ce qu'il existe une fonction genre 'FEUILLES_SELECT()' qui donnerait le nombre de feuilles actuellement sélectionnées.

Qqs explications supplémentaire sur mon besoin qui est a priori pas très original...
J'ai un tableau qui est rempli chaque jour par plusieurs personnes, chacun sur son onglet. Pour la maintenance et différentes actions de gestion, je sélectionne plusieurs feuilles et apporte des changements.

C'est un fichier sur Office365 placé en OneDrive.

Si j'oublie de désélectionner toutes les feuilles avant de quitter le fichier, ou si qqn se pointe pour faire des modifs alors que je n'ai pas terminé, il peut lui arriver de ne pas se rendre compte de la multisélection, de ejoindre sa feuille et d'apporter des modifications qui sont reportées sur toutes les feuilles en même temps !!

Je cherche au minimum à lui donner une alerte visuelle du fait qu'il est en train de modifier toutes les feuilles en même temps.

Savez-vous comment faire ça simplement ??

Bonjour,

Je ne vois pas de solution faisant uniquement appel aux fonctions Excel.

Si le fichier comporte déjà des macros, il serait facile d'ajouter à l'ouverture ou à la fermeture du classeur une instruction sélectionnant par exemple la 1ère feuille ce qui désélectionnerait automatiquement les autres feuilles.

Pour le code associé au module ThisWorkbook :

  • à l'ouverture
    • Private Sub Workbook_Open()
         ThisWorkbook.Worksheets(1).Select
      End Sub
  • à la fermeture
    • Private Sub Workbook_BeforeClose(Cancel As Boolean)
         ThisWorkbook.Worksheets(1).Select
      End Sub
Cdlt,

Cylfo

Merci pour la réponse.
Le fichier a une macro mais d'une part je maîtrise mal et d'autre part je chch toujours des solutions sans macros mais bon, quand il faut il faut :)

merci !

Bonsoir à tous ,

Est-ce qu'il existe une fonction genre 'FEUILLES_SELECT()' qui donnerait le nombre de feuilles actuellement sélectionnées ?

On peut utiliser la propriété "SelectedSheets" de ActiveWindow qui est la collection des feuilles sélectionnées.

ActiveWindow.SelectedSheets.Count donne le nombre de feuilles sélectionnées de ActiveWindow.

.

Pour illustrer :

  • sélectionner une ou plusieurs feuilles
  • puis cliquer sur la forme bleue

Le code :

Sub SelectionFeuilles()
Dim s, x
   s = "Nombre de feuilles sélectionnées : " & ActiveWindow.SelectedSheets.Count
   For Each x In ActiveWindow.SelectedSheets: s = s & vbLf & " -> " & x.Name: Next x
   MsgBox s
End Sub

Re,

On peut aussi faire une fonction VBA qui retourne True si la feuille est dans la sélection ou sinon retourne False. Le paramètre x de la fonction est le nom de la feuille :

Function DansSelectionFeuilles(x As String) As Boolean
Dim sh
   x = LCase(x)
   For Each sh In ActiveWindow.SelectedSheets
      If LCase(sh.Name) = x Then DansSelectionFeuilles = True: Exit Function
   Next sh
End Function

Bonjour Zaitham, mafraise,

Si le souhait est d'avoir un message d'alerte, il est possible de coder les événements "Workbook_SheetActivate" et "Workbook_SheetChange" liés au module "ThisWorkbook". Le message d'alerte n'est émis qu'une seule fois car si l'action est volontaire cela deviendrait vite agaçant . Par contre, si le message n'a pas été émis, en cas de sélection multiple de feuilles et de changement de feuille ou de 1ère saisie, le message sera émis une fois.

Il faut code les 2 événements car "Workbook_SheetActivate" ne sera déclenché que s'il y a un changement de feuille à l'intérieur des feuilles sélectionnées. Dans le cas d'une 1ère saisie sur une feuille du groupe sans qu'il y ait eu de changement de feuille au préalable (donc averti via "Workbook_SheetActivate"), l'événement "Workbook_SheetChange" permet de demander à l'utilisateur s'il souhaite conserver sa saisie.

Le message liste les feuilles sélectionnées.

La 1ère proposition coder l'événement d'ouverture OU de fermeture du fichier pour ne sélectionner qu'une feuille est plus légère mais si tu veux un message d'alerte cela reste une possibilité.

14zaitham-2.xlsb (28.30 Ko)

Cdlt,

Cylfo

Merci, ça fait plein de solutions bien différentes,

Merci beaucoup à chacun de vous, je vais implanter ça 👏👏

Rechercher des sujets similaires à "combien feuilles selectionnees mon fichier"