renommer nouvel onglet avec la valeur d'une cellule
Le
magic-dd

Bonjour
je viens de creer une procedure mais je bloque sur le renommage de ma feuille
j'aimerai qu'elle prenne la valeur de la cellule A1 et qu'elle soit au format MMMM YYYY
voila ce que j'ai ecris mais ca merdouille
ActiveSheet.Name = ActiveSheet.Range("A1").Value.Format(Date, "MMMM YYYY").
merci
je viens de creer une procedure mais je bloque sur le renommage de ma feuille
j'aimerai qu'elle prenne la valeur de la cellule A1 et qu'elle soit au format MMMM YYYY
voila ce que j'ai ecris mais ca merdouille
ActiveSheet.Name = ActiveSheet.Range("A1").Value.Format(Date, "MMMM YYYY").
merci
Si dans la cellule A1, tu as une date reconnue par Excel et que tu veux
prendre
cette date comme nom d'un onglet d'une feuille, tu peux utiliser une de ces
2
syntaxes.
Ceci requiert que la feuille de calcul soit celle affichée à l'écran
'-----------------------------------------
Sub test()
With ActiveSheet
.Name = Format(.Range("A1"), "MMMM YYYY")
End With
End Sub
'-----------------------------------------
Lorsque tu utilises le nom de l'onglet de la feuille actuel que tu veux
modifier,
La feuille n'est pas obligée d'être la feuille active pour que cela
fonctionne.
'-----------------------------------------
Sub test()
With Worksheets("Feuil1")
.Name = Format(.Range("A1"), "MMMM YYYY")
End With
End Sub
'-----------------------------------------
je n'avais pas intuité le with end with et l'imbrication du nom de la cellule avec le format
en revanche, en cas de conflit,
c à d qu'une feuille se nomme déja de la meme maniere, est il ,po ssible de lui dire que si une feuille à déja le mem nom alors lui attribuer ce nom avec -1 ou -2 selon le cas
Le mercredi 17 septembre 2014 15:08:31 UTC+2, MichD a écrit :
je n'avais pas intuité le with end with et l'imbrication du nom de la cel lule avec le format
Le mercredi 17 septembre 2014 14:47:08 UTC+2, magic-dd a écrit :
D'abord, exécute cette macro une fois. Elle crée un nom (Names) "Compteur"
'-----------------------------------------
Sub Définir_Compteur()
Application.Names.Add Name:="Compteur", RefersTo:=1, Visible:úlse
End Sub
'-----------------------------------------
La procédure devient cela :
'-----------------------------------------
Sub test1()
On Error Resume Next
With Worksheets("Feuil1") ' ou ActiveSheet
Set Sh = Sheets(Format(.Range("A1"), "MMMM YYYY"))
If Err <> 0 Then
Err = 0
.Name = Format(.Range("A1"), "MMMM YYYY") & "(2)"
End If
End With
End Sub
'-----------------------------------------