Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Hervé
Bonsoir, Sans utiliser une fonction, je ne suis pas sûr que tu puisse intercepter l'évennement, donc voici mon exemple :
Fonction à mettre dans un module standard : Function CHANGER_NOM_FEUILLE(Cel As Range) As String Application.Volatile CHANGER_NOM_FEUILLE = Cel.Parent.Name End Function
A mettre dans le module de la feuille ou tu utilise la fonction (ici la cellule est B17 dans la feuille "Feuil2") : Private Sub Worksheet_Calculate() Static NomFeuille As String If NomFeuille <> [B17] Then MsgBox "Le nom de la feuille a changé !" NomFeuille = [B17] End If End Sub
Tu peux alors utiliser la fonction sur une feuille cachée ou une ligne cachée, en faisant référence à n'importe quelle cellule de la feuille à contrôler (elle sert juste à retourner le nom de la feuille sur laquelle elle se trouve), comme ici en feuille "Feuil2" dans la cellule B17 : =CHANGER_NOM_FEUILLE(Feuil1!A15)
Le changement de nom provoque l'évennement Calculate (puisqu'il y a référence au nom de la feuille) qui te retourne ce que tu veux, ici le message "Le nom de la feuille a changé !"
Salutations Hervé.
"bigorneau" a écrit dans le message de news:
Bonjour à tous.
Comment détecter dynamiquement le changement de nom d'un onglet, sans utiliser une formule de feuille ?...
Bravo à celui ou celle qui pourrait me donner le tuyau.
Salutations
Bonsoir,
Sans utiliser une fonction, je ne suis pas sûr que tu puisse intercepter
l'évennement, donc voici mon exemple :
Fonction à mettre dans un module standard :
Function CHANGER_NOM_FEUILLE(Cel As Range) As String
Application.Volatile
CHANGER_NOM_FEUILLE = Cel.Parent.Name
End Function
A mettre dans le module de la feuille ou tu utilise la fonction (ici la
cellule est B17 dans la feuille "Feuil2") :
Private Sub Worksheet_Calculate()
Static NomFeuille As String
If NomFeuille <> [B17] Then
MsgBox "Le nom de la feuille a changé !"
NomFeuille = [B17]
End If
End Sub
Tu peux alors utiliser la fonction sur une feuille cachée ou une ligne
cachée, en faisant référence à n'importe quelle cellule de la feuille à
contrôler (elle sert juste à retourner le nom de la feuille sur laquelle
elle se trouve), comme ici en feuille "Feuil2" dans la cellule B17 :
=CHANGER_NOM_FEUILLE(Feuil1!A15)
Le changement de nom provoque l'évennement Calculate (puisqu'il y a
référence au nom de la feuille) qui te retourne ce que tu veux, ici le
message "Le nom de la feuille a changé !"
Salutations
Hervé.
"bigorneau" <nospam-bigorneau@wanadoo.fr> a écrit dans le message de news:
OPXNy0J3FHA.3732@TK2MSFTNGP15.phx.gbl...
Bonjour à tous.
Comment détecter dynamiquement le changement de nom d'un onglet, sans
utiliser une formule de feuille ?...
Bravo à celui ou celle qui pourrait me donner le tuyau.
Bonsoir, Sans utiliser une fonction, je ne suis pas sûr que tu puisse intercepter l'évennement, donc voici mon exemple :
Fonction à mettre dans un module standard : Function CHANGER_NOM_FEUILLE(Cel As Range) As String Application.Volatile CHANGER_NOM_FEUILLE = Cel.Parent.Name End Function
A mettre dans le module de la feuille ou tu utilise la fonction (ici la cellule est B17 dans la feuille "Feuil2") : Private Sub Worksheet_Calculate() Static NomFeuille As String If NomFeuille <> [B17] Then MsgBox "Le nom de la feuille a changé !" NomFeuille = [B17] End If End Sub
Tu peux alors utiliser la fonction sur une feuille cachée ou une ligne cachée, en faisant référence à n'importe quelle cellule de la feuille à contrôler (elle sert juste à retourner le nom de la feuille sur laquelle elle se trouve), comme ici en feuille "Feuil2" dans la cellule B17 : =CHANGER_NOM_FEUILLE(Feuil1!A15)
Le changement de nom provoque l'évennement Calculate (puisqu'il y a référence au nom de la feuille) qui te retourne ce que tu veux, ici le message "Le nom de la feuille a changé !"
Salutations Hervé.
"bigorneau" a écrit dans le message de news:
Bonjour à tous.
Comment détecter dynamiquement le changement de nom d'un onglet, sans utiliser une formule de feuille ?...
Bravo à celui ou celle qui pourrait me donner le tuyau.
Salutations
bigorneau
Bonsoir à tous.
Merci Hervé pour ta proposition, qui améliore une chouïa celle que j'avais mis au moins la veille sans en être pleinement satisfait. (Lire la réponse de bigorneau à bigorneau qui fixe le cadre plus large de mon problème Re: [VBA] Copie de feuille et valeur de propriété GroupName d'OptionButton" en date du 28/10/2005 13:14. Eh, ce n'est pas parce que l'on (se) pose une question qu'il ne faut pas continuer à chercher soi-même !)
Un peu puriste sur les bords, ça me gênait de devoir "poser un espion masqué" au sein de chaque feuille à surveiller. Et je me disais que ce serait beau de pouvoir gérer sous forme d'événement une modif. de nom d'onglet.
Je te remercie donc de m'avoir ouvert les yeux sur une évidence : à chaque création d'une nouvelle feuille, je colle l'espion correspondant dans ma feuille "Modèle" qui peut effectivement rester masquée. Il suffisait en fait de pointer sur la feuille à surveiller. Contrepartie : ça va m'obliger à gérer les éventuelles suppressions de feuilles. Ça devrait le faire ...
Meilleures salutations.
"Hervé" a écrit dans le message de news:
Bonsoir, Sans utiliser une fonction, je ne suis pas sûr que tu puisse intercepter l'évennement, donc voici mon exemple :
Fonction à mettre dans un module standard : Function CHANGER_NOM_FEUILLE(Cel As Range) As String Application.Volatile CHANGER_NOM_FEUILLE = Cel.Parent.Name End Function
A mettre dans le module de la feuille ou tu utilise la fonction (ici la cellule est B17 dans la feuille "Feuil2") : Private Sub Worksheet_Calculate() Static NomFeuille As String If NomFeuille <> [B17] Then MsgBox "Le nom de la feuille a changé !" NomFeuille = [B17] End If End Sub
Tu peux alors utiliser la fonction sur une feuille cachée ou une ligne cachée, en faisant référence à n'importe quelle cellule de la feuille à contrôler (elle sert juste à retourner le nom de la feuille sur laquelle elle se trouve), comme ici en feuille "Feuil2" dans la cellule B17 : =CHANGER_NOM_FEUILLE(Feuil1!A15)
Le changement de nom provoque l'évennement Calculate (puisqu'il y a référence au nom de la feuille) qui te retourne ce que tu veux, ici le message "Le nom de la feuille a changé !"
Salutations Hervé.
"bigorneau" a écrit dans le message de news:
Bonjour à tous.
Comment détecter dynamiquement le changement de nom d'un onglet, sans utiliser une formule de feuille ?...
Bravo à celui ou celle qui pourrait me donner le tuyau.
Salutations
Bonsoir à tous.
Merci Hervé pour ta proposition, qui améliore une chouïa celle que j'avais
mis au moins la veille sans en être pleinement satisfait.
(Lire la réponse de bigorneau à bigorneau qui fixe le cadre plus large de
mon problème
Re: [VBA] Copie de feuille et valeur de propriété GroupName d'OptionButton"
en date du 28/10/2005 13:14.
Eh, ce n'est pas parce que l'on (se) pose une question qu'il ne faut pas
continuer à chercher soi-même !)
Un peu puriste sur les bords, ça me gênait de devoir "poser un espion
masqué" au sein de chaque feuille à surveiller. Et je me disais que ce
serait beau de pouvoir gérer sous forme d'événement une modif. de nom
d'onglet.
Je te remercie donc de m'avoir ouvert les yeux sur une évidence : à chaque
création d'une nouvelle feuille, je colle l'espion correspondant dans ma
feuille "Modèle" qui peut effectivement rester masquée.
Il suffisait en fait de pointer sur la feuille à surveiller.
Contrepartie : ça va m'obliger à gérer les éventuelles suppressions de
feuilles. Ça devrait le faire ...
Meilleures salutations.
"Hervé" <hmsilvePasDePub@wanadoo.fr> a écrit dans le message de
news:uUpAMxL3FHA.1184@TK2MSFTNGP12.phx.gbl...
Bonsoir,
Sans utiliser une fonction, je ne suis pas sûr que tu puisse intercepter
l'évennement, donc voici mon exemple :
Fonction à mettre dans un module standard :
Function CHANGER_NOM_FEUILLE(Cel As Range) As String
Application.Volatile
CHANGER_NOM_FEUILLE = Cel.Parent.Name
End Function
A mettre dans le module de la feuille ou tu utilise la fonction (ici la
cellule est B17 dans la feuille "Feuil2") :
Private Sub Worksheet_Calculate()
Static NomFeuille As String
If NomFeuille <> [B17] Then
MsgBox "Le nom de la feuille a changé !"
NomFeuille = [B17]
End If
End Sub
Tu peux alors utiliser la fonction sur une feuille cachée ou une ligne
cachée, en faisant référence à n'importe quelle cellule de la feuille à
contrôler (elle sert juste à retourner le nom de la feuille sur laquelle
elle se trouve), comme ici en feuille "Feuil2" dans la cellule B17 :
=CHANGER_NOM_FEUILLE(Feuil1!A15)
Le changement de nom provoque l'évennement Calculate (puisqu'il y a
référence au nom de la feuille) qui te retourne ce que tu veux, ici le
message "Le nom de la feuille a changé !"
Salutations
Hervé.
"bigorneau" <nospam-bigorneau@wanadoo.fr> a écrit dans le message de news:
OPXNy0J3FHA.3732@TK2MSFTNGP15.phx.gbl...
Bonjour à tous.
Comment détecter dynamiquement le changement de nom d'un onglet, sans
utiliser une formule de feuille ?...
Bravo à celui ou celle qui pourrait me donner le tuyau.
Merci Hervé pour ta proposition, qui améliore une chouïa celle que j'avais mis au moins la veille sans en être pleinement satisfait. (Lire la réponse de bigorneau à bigorneau qui fixe le cadre plus large de mon problème Re: [VBA] Copie de feuille et valeur de propriété GroupName d'OptionButton" en date du 28/10/2005 13:14. Eh, ce n'est pas parce que l'on (se) pose une question qu'il ne faut pas continuer à chercher soi-même !)
Un peu puriste sur les bords, ça me gênait de devoir "poser un espion masqué" au sein de chaque feuille à surveiller. Et je me disais que ce serait beau de pouvoir gérer sous forme d'événement une modif. de nom d'onglet.
Je te remercie donc de m'avoir ouvert les yeux sur une évidence : à chaque création d'une nouvelle feuille, je colle l'espion correspondant dans ma feuille "Modèle" qui peut effectivement rester masquée. Il suffisait en fait de pointer sur la feuille à surveiller. Contrepartie : ça va m'obliger à gérer les éventuelles suppressions de feuilles. Ça devrait le faire ...
Meilleures salutations.
"Hervé" a écrit dans le message de news:
Bonsoir, Sans utiliser une fonction, je ne suis pas sûr que tu puisse intercepter l'évennement, donc voici mon exemple :
Fonction à mettre dans un module standard : Function CHANGER_NOM_FEUILLE(Cel As Range) As String Application.Volatile CHANGER_NOM_FEUILLE = Cel.Parent.Name End Function
A mettre dans le module de la feuille ou tu utilise la fonction (ici la cellule est B17 dans la feuille "Feuil2") : Private Sub Worksheet_Calculate() Static NomFeuille As String If NomFeuille <> [B17] Then MsgBox "Le nom de la feuille a changé !" NomFeuille = [B17] End If End Sub
Tu peux alors utiliser la fonction sur une feuille cachée ou une ligne cachée, en faisant référence à n'importe quelle cellule de la feuille à contrôler (elle sert juste à retourner le nom de la feuille sur laquelle elle se trouve), comme ici en feuille "Feuil2" dans la cellule B17 : =CHANGER_NOM_FEUILLE(Feuil1!A15)
Le changement de nom provoque l'évennement Calculate (puisqu'il y a référence au nom de la feuille) qui te retourne ce que tu veux, ici le message "Le nom de la feuille a changé !"
Salutations Hervé.
"bigorneau" a écrit dans le message de news:
Bonjour à tous.
Comment détecter dynamiquement le changement de nom d'un onglet, sans utiliser une formule de feuille ?...
Bravo à celui ou celle qui pourrait me donner le tuyau.