Bonjour à tous,
Je suis face à un problème qui, a première vue me paraissait simple à résoudre, et pourtant je sèche...
J'ai créé une feuille "matrice" a partir de laquelle l'utilisateur rempli un certain nombre de données, et dans 2 colonnes différentes, il lui suffit de double cliquer sur la cellule pour afficher l'heure (voir code ci-dessous) :
Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Column = 7 Then Target.Value = Time
If Target.Column = 8 Then Target.Value = Time
Cancel = True
End Sub
Ce code est écrit dans la "Worksheet", ce que je souhaiterais, c'est que en créant une copie de cette feuille "matrice", ce code soit copié aussi, mais ça n'est pas le cas... Que faire ?
Voici la macro qui se déclenche en cliquant sur un bouton "créer une nouvelle journée" (qui crée une copie de la feuille matrice):
Sub CopieFeuille()
' CopieFeuille Macro
' Positionnement sur la feuille Matrice qui sera copiée tous les jours
Sheets("Matrice").Select
Cells.Select ' Sélection totale de la feuille
Selection.Copy ' Copie
ActiveSheet.Select
Range("A1").Select ' Positionnement du curseur en A1
'Lecture de la date du jour a en F2 (date du système par formule =MAINTENANT())
DateJour = Range("F2").Value
' Extraction de JJ-MM-AAAA Le nom de feuille n'accepte pas les /
JourDate = Left(DateJour, 2) & "-" & Mid(DateJour, 4, 2) & "-" & Mid(DateJour, 7, 4)
Sheets.Add , Worksheets(Worksheets.Count) ' Ajout d'une nouvelle feuille après la dernière
ActiveSheet.Paste ' Collage de la feuille copiée précédemment
ActiveSheet.Name = JourDate ' Attribution du nom de la nouvelle feuille
ActiveWindow.DisplayGridlines = False
ActiveSheet.Range("B9:M11,A1:M4,B5:C7,I5:L5").Locked = True
ActiveSheet.Protect
End Sub
Merci pour votre aide !