création d'une cellule automatiquement à l'arrivée d'un nouvel onglet

  • Initiateur de la discussion Initiateur de la discussion zumye
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

zumye

XLDnaute Occasionnel
bonsoir
je sais juste ramerner le nom d'un onglet à une cellule mais
est il possible de crée un nouvel onglet ex feuill2, feuill3... et que sur une autre feuillX, une cellule pour chaque onglet apparaisse avec le nom.
ex j'ai feuill1, feuill2,feuill3
et sur feuillX: cellule a1=feuiil1 a2=feuill2 a3=feuill3
et a chaque fois que je rajoute une feuill, une cellule se crée automatiquement en suivant l'odre a1,a2,a3....
merci
 
Re : création d'une cellule automatiquement à l'arrivée d'un nouvel onglet

Bonsoir zumye,

Si j'ai bien compris la demande...

Dans ton classeur, soit une feuille nommée "x", dans le module de code de l'objet ThisWorkbook tu peux essayer comme ça :
Code:
[COLOR=GRAY][B][I]DANS LE MODULE DE CODE DE L'OBJET THISWORKBOOK[/I][/B][/COLOR]

[COLOR=NAVY]Private Sub[/COLOR] Workbook_NewSheet([COLOR=NAVY]ByVal[/COLOR] Sh [COLOR=NAVY]As Object[/COLOR])
    Sheets("x").Cells(Application.Rows.Count, 1).[COLOR=NAVY]End[/COLOR](xlUp).Offset(1, 0).Value = Sh.Name
[COLOR=NAVY]End Sub[/COLOR]
La feuille "x" récupère ainsi le nom de chaque nouvel onglet que tu crées.

Cordialement,
 
Re : création d'une cellule automatiquement à l'arrivée d'un nouvel onglet

^bonsoir
peux tu m'expliquer la manip précisement
je clique sur thisworkbook ou sur module1?
ensuite c'est copier coller?je valide avec entrée?
car je me suis pas encore servu du vba
 
Re : création d'une cellule automatiquement à l'arrivée d'un nouvel onglet

Salut,

La même chose avec les noms des feuilles qui se mettent à jour automatiquement lors d'un chagement de nom.
Private Sub Workbook_NewSheet(ByVal Sh As Object)
NomFeuille = "feuillX"
Ligne = 1
Set Cible = Worksheets(NomFeuille)
For Each C In Worksheets
If C.Name <> NomFeuille Then
Chaine = "=MID(CELL(""nomfichier""," & C.Name & "!A1),SEARCH(""]"",CELL(""nomfichier""," & C.Name & "!A1),1)+1,32)"
Cible.Cells(Ligne, 1).Formula = Chaine
Ligne = Ligne + 1
End If
Next C
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
3
Affichages
935
Réponses
6
Affichages
1 K
Retour