Onglet Changement de nom

  • Initiateur de la discussion Initiateur de la discussion jorisphi
  • 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 !

jorisphi

XLDnaute Occasionnel
Bonjour à tous,

J'aimerai avoir un macro qui me change le nom des onglets et ce, lorsque j'encode les nouveaux noms dans ma feuille nommée "Introduction" , soit dans les cellules C5 à C14
Je joins mon fichier d'exemple

Cordialement
Jorisphi
 
Re : Onglet Changement de nom

Bonjour Jorisphi,

un essai à mettre dans le code de la feuille :

Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cellule As Range
    If Not Application.Intersect(Target, Range("C5:C14")) Is Nothing Then
        For Each Cellule In Application.Intersect(Target, Range("C5:C14")).Cells
            On Error Resume Next
                ThisWorkbook.Worksheets(Cellule.Offset(0, -1).Value).Name = Cellule.Value
                Cellule.Offset(0, -1).Value = Cellule.Value
            On Error GoTo 0
        Next Cellule
    End If
End Sub
 
Re : Onglet Changement de nom

Bonjour à tous
Une autre proposition dans le classeur joint.
Code:
[COLOR="DarkSlateGray"][B]Sub toto()
Dim oDat, i As Long

   With [B5]

      If Cells(Rows.Count, .Column).End(xlUp).Cells(1, 1).Row < .Row Then GoTo E

      With Application: .ScreenUpdating = False: .Calculation = xlManual: .EnableEvents = False: End With

      oDat = Range(.Cells, Cells(Rows.Count, .Column + 1).End(xlUp)).Value

      On Error Resume Next
      For i = 1 To UBound(oDat, 1)
         ThisWorkbook.Sheets(CStr(oDat(i, 1))).Name = CStr(oDat(i, 2))
      Next
      On Error GoTo 0

      With Application: .EnableEvents = True: .Calculation = xlAutomatic: .ScreenUpdating = True: End With

E: End With

End Sub[/B][/COLOR]
ROGER2327
#2561
 
Re : Onglet Changement de nom

Bonjour tototiti2008
Je lis ce jour votre réponse à mon post
Grand merci pour votre réponse, Cela fonctionne à merveille
A Bientôt
Cordialement
Jorisphi


Bonjour Jorisphi,


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim Cellule As Range
    If Not Application.Intersect(Target, Range("C5:C14")) Is Nothing Then
        For Each Cellule In Application.Intersect(Target, Range("C5:C14")).Cells
            On Error Resume Next
                ThisWorkbook.Worksheets(Cellule.Offset(0, -1).Value).Name = Cellule.Value
                Cellule.Offset(0, -1).Value = Cellule.Value
            On Error GoTo 0
        Next Cellule
    End If
End Sub
 
Re : Onglet Changement de nom

Bonjour Roger2327
Grand merci pour votre autre proposition très interessante
Un tout grand merci pour votre aide pécieuse
Cordialement
Jorisphi
Bonjour à tous
Une autre proposition dans le classeur joint.
Code:
[COLOR="DarkSlateGray"][B]Sub toto()
Dim oDat, i As Long

   With [B5]

      If Cells(Rows.Count, .Column).End(xlUp).Cells(1, 1).Row < .Row Then GoTo E

      With Application: .ScreenUpdating = False: .Calculation = xlManual: .EnableEvents = False: End With

      oDat = Range(.Cells, Cells(Rows.Count, .Column + 1).End(xlUp)).Value

      On Error Resume Next
      For i = 1 To UBound(oDat, 1)
         ThisWorkbook.Sheets(CStr(oDat(i, 1))).Name = CStr(oDat(i, 2))
      Next
      On Error GoTo 0

      With Application: .EnableEvents = True: .Calculation = xlAutomatic: .ScreenUpdating = True: End With

E: End With

End Sub[/B][/COLOR]
ROGER2327
#2561
 
- 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
4
Affichages
332
D
  • Question Question
Réponses
5
Affichages
250
Didierpasdoué
D
Réponses
3
Affichages
221
Réponses
10
Affichages
518
Retour