Combiner 2 codes VBA

Bonjour à tous.

Mon tableur fonctionne très bien. Cependant, je souhaite lui apporter une fonction supplémentaire :

Je souhaite que chaque onglet porte le nom des élèves que j'inscris dans le tableau appelé "Liste".

Cependant, je n'y arrive pas.

Prenons l'exemple de mon tableur. Dans le tableau, le premier élève s'appelle "CHOUCHOU". Dans mon onglet "Elève1", on voit bien dans la case B2 le nom s'inscrire.

Mais je souhaite aussi que l'onglet porte ce nom. J'ai donc penser à ajouter ce code au premier qui existe :

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("B2")) Is Nothing Then

ActiveSheet.Name = Target

End If

End Sub

ça marche dans un tableur vierge sans aucun autre code mais dans mon tableur ça ne fonctione pas. Du coup, je me demande si l'on peut fusioner 2 codes VBA ensemble.

Je ne suis pas sûr de m'être bien expliquer...

Si quelqu'un peut m'aider.

Merci à vous.

Fred

Bonjour prof41, bonjour le forum,

Pour chaque feuille que tu veux renommer automatiquement ...

Dès que tu activeras la feuille, le code s'exécutera.

Si une autre feuille porte déjà ce nom, le code ajoutera au bout le numéro de la feuille entre parenthèse.

Private Sub Worksheet_Activate()
Dim i As Integer
On Error Resume Next   ' s'il y a une erreur, continue
With ActiveSheet
    For i = 1 To Worksheets.Count    ' passera en revue tous les noms de feuille
        If Worksheets(i).Name = .Cells(2, 2) & " " & .Cells(3, 2) Then   ' si un nom existe
            .Name = .Cells(2, 2) & " " & .Cells(3, 2) & "(" & i & ")"    ' ajoute le numéro de la feuille
        Else                                                            ' si non
            .Name = .Cells(2, 2) & " " & .Cells(3, 2)              '  renomme la feuille
        End If
    Next i                                                      '  pour boucler sur la prochaine feuille
End With
End Sub

Joseph

Bonjour,

Autre proposition avec ajustements:

1- une seule colonne : Noms/Prénoms pour éviter les doublons liés aux homonymes

2- une feuille modèle "Elève" dupliquée pour chaque nouveau nom inscrit dans la feuille "Liste"

Rechercher des sujets similaires à "combiner codes vba"