Nom d'un onglet reporté dans une cellule

Bonjour à tous,

est il possible de faire se reporter automatiquement le nom d'un onglet dans une cellule, ou l'inverse?

Par exemple je nomme l'onglet 122FR5 et c'est reporté en A1, ou l'inverse, j'écris 122FR5 en A1 et l'onglet est nommé pareil,

merci pour vos conseils

Bonjour

Tu peux tester ces 2 macros à placer dans le module de la feuille

Clic droit sur l'onglet de la feuille ---> Visualiser le code

Private Sub Worksheet_Activate()
  Application.EnableEvents = False
  Range("A1") = ActiveSheet.Name
  Application.EnableEvents = True
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$1" Then
    If Target <> "" Then
      ActiveSheet.Name = Range("A1")
    End If
  End If
End Sub

Attention la partie pour renommer la feuille n'a aucun garde fous ( caractères interdits - nom existant etc ..)

merci,

alors je viens de tester et ça fonctionne, mais si je définis le format de la cellule A1 en mmmm-aaa et que j'entre une date ça ne fonctionne pas,

en fait j'aurais du préciser au départ que la cellule pouvait contenir une date

donc par exemple ici j'entre en A1 12/13, la cellule affiche décembre-2013, et l'onglet devrait afficher le même nom

Bonjour

Modifies la macro

Private Sub Worksheet_Change(ByVal Target As Range)
  If Target.Address = "$A$1" Then
    If Target <> "" Then
      ActiveSheet.Name = Range("A1").Text
    End If
  End If
End Sub

ok, alors ça fonctionne très bien jusqu'à ce que je lance cette autre macro

    Private Sub Worksheet_Change(ByVal Target As Range)
      If Target.Address = "$C$1" Then
        If Target <> "" Then
          ActiveSheet.Name = Range("C1").Text
        End If
      End If
    End Sub

Bonjour

Il ne peut y avoir qu'une seule macro Worksheet_Change

ah ok, c'est dommage, et sinon, peut être une autre possibilité?

Bonjour

Tu veux soit modifier A1 ou C1 pour changer le nom de la feuille

Private Sub Worksheet_Change(ByVal Target As Range)
  If Not Intersect(Range("A1,C1"), Target) Is Nothing And Target.Count = 1 Then
    If Target <> "" Then
      ActiveSheet.Name = Target.Text
    End If
  End If
End Sub

ah ben c'est super! tout fonctionne maintenant

merci beaucoup

Rechercher des sujets similaires à "nom onglet reporte"