C
Christian
Guest
Bonsoir le forum,
le grand Thierry m'a fait cette macro l'autre jour, qui d'ailleurs, m'aide bien, mais je voudrais savoir si il serait possible de la modifier, afin d'enlever toutes les liaisons embarassantes et qui alourdissent les feuilles copiées.
Par avance merci,
Bonne fin de semaine à toutes et à tous.
Christian
"Sub CopyNameSheetBasic()
Worksheets("Feuil1").Copy Before:=Worksheets(1)
Worksheets(1).Name = Format(Sheets("Feuil1").Range("A1"), "DD-MM-YYYY")
End Sub
Cependant attention, il faudrait faire au moins deux tests comme ceci :
1) on vérifie que "A1" est bien une date sinon on sort!
2) on vérifie que la feuille nommée avec cette date n'existe pas déjà sinon
on sort! (on pourrait faire un Message aussi)
Sub CopyNameSheetControled()
Dim WS As Worksheet
Dim TheDate As String
If Not IsDate(Sheets("Feuil1").Range("A1")) Then Exit Sub
TheDate = Format(Sheets("Feuil1").Range("A1"), "DD-MM-YYYY")
For Each WS In Sheets
If WS.Name = TheDate Then Exit Sub
Next WS
Worksheets("Feuil1").Copy Before:=Worksheets(1)
Worksheets(1).Name = TheDate
End Sub
NB on ne peut pas nommer une feuille au format date DD/MM/YYYY
Voilà je pense que tu as les éléments Christian
Bon Week End et bon travail
@+Thierry"
le grand Thierry m'a fait cette macro l'autre jour, qui d'ailleurs, m'aide bien, mais je voudrais savoir si il serait possible de la modifier, afin d'enlever toutes les liaisons embarassantes et qui alourdissent les feuilles copiées.
Par avance merci,
Bonne fin de semaine à toutes et à tous.
Christian
"Sub CopyNameSheetBasic()
Worksheets("Feuil1").Copy Before:=Worksheets(1)
Worksheets(1).Name = Format(Sheets("Feuil1").Range("A1"), "DD-MM-YYYY")
End Sub
Cependant attention, il faudrait faire au moins deux tests comme ceci :
1) on vérifie que "A1" est bien une date sinon on sort!
2) on vérifie que la feuille nommée avec cette date n'existe pas déjà sinon
on sort! (on pourrait faire un Message aussi)
Sub CopyNameSheetControled()
Dim WS As Worksheet
Dim TheDate As String
If Not IsDate(Sheets("Feuil1").Range("A1")) Then Exit Sub
TheDate = Format(Sheets("Feuil1").Range("A1"), "DD-MM-YYYY")
For Each WS In Sheets
If WS.Name = TheDate Then Exit Sub
Next WS
Worksheets("Feuil1").Copy Before:=Worksheets(1)
Worksheets(1).Name = TheDate
End Sub
NB on ne peut pas nommer une feuille au format date DD/MM/YYYY
Voilà je pense que tu as les éléments Christian
Bon Week End et bon travail
@+Thierry"