J
jean-michel
Guest
Bonjour,
C'est la première fois que je viens sur votre site, c'est également ma première macro que j'essaie de réaliser en vba, mais j'ai quelques soucis.
J'essaie de faire une macro qui permette de mettre à jour le nom de chaque feuille d'un classeur, en fonction d'une valeur figurant dans la cellule A1, par exemple, pour chacune d'entre elle.
J'ai une valeur du style 01/01/04 et je cherche à ce que le nom de la feuille dans laquelle figure cette valeur devienne JANVIER 2004, et ainsi de suite jusqu'à DECEMBRE 2004.
Les feuilles étant déjà existantes, j'ai déjà essayé plusieurs types de boucles, de conditions, mais au bout du compte je n'obtiens pas de résultat. J'en suis actuellement à 'erreur d'execution 424'
De plus, je n'arrive pas à limiter la macro aux feuilles que je veux actualiser.
Pourriez-vous m'aider ?
Voici ci-dessous le code vba:
Sub RenommerdesFeuilles()
Dim i As Integer, j As Integer
Dim Dates, Onglet As String
Application.ScreenUpdating = False
For i = 1 To Worksheets.Count
Dates = Sheet.Range("A1").Value
Onglet = UCase(Format(Dates, "mmmm yyyy"))
If Sheets(i).Name <> Dates Then
Sheets(i).Name = [Onglet]
Sheets(i).Select Replace:=False
j = j + 1
End If
Next
If Not IsEmpty(Dates) Then
On Error GoTo mon_message
End If
Exit Sub
mon_message:
attention = MsgBox("La feuille existe déjà", vbOKOnly, "Attention")
End Sub
Merci par avance
Salutations
Jean-Michel
C'est la première fois que je viens sur votre site, c'est également ma première macro que j'essaie de réaliser en vba, mais j'ai quelques soucis.
J'essaie de faire une macro qui permette de mettre à jour le nom de chaque feuille d'un classeur, en fonction d'une valeur figurant dans la cellule A1, par exemple, pour chacune d'entre elle.
J'ai une valeur du style 01/01/04 et je cherche à ce que le nom de la feuille dans laquelle figure cette valeur devienne JANVIER 2004, et ainsi de suite jusqu'à DECEMBRE 2004.
Les feuilles étant déjà existantes, j'ai déjà essayé plusieurs types de boucles, de conditions, mais au bout du compte je n'obtiens pas de résultat. J'en suis actuellement à 'erreur d'execution 424'
De plus, je n'arrive pas à limiter la macro aux feuilles que je veux actualiser.
Pourriez-vous m'aider ?
Voici ci-dessous le code vba:
Sub RenommerdesFeuilles()
Dim i As Integer, j As Integer
Dim Dates, Onglet As String
Application.ScreenUpdating = False
For i = 1 To Worksheets.Count
Dates = Sheet.Range("A1").Value
Onglet = UCase(Format(Dates, "mmmm yyyy"))
If Sheets(i).Name <> Dates Then
Sheets(i).Name = [Onglet]
Sheets(i).Select Replace:=False
j = j + 1
End If
Next
If Not IsEmpty(Dates) Then
On Error GoTo mon_message
End If
Exit Sub
mon_message:
attention = MsgBox("La feuille existe déjà", vbOKOnly, "Attention")
End Sub
Merci par avance
Salutations
Jean-Michel