Répéter un code VBA à toutes les feuilles

Le
ninanova Hors ligne
Bonjour,

J'ai crée un fichier de suivi. J'ai crée un code VBA Calendrier pour une plus simple utilisation du fichier. Cependant, je n'arrive pas à répeter le code pour toutes les feuilles. Je ne sais pas non plus où il faudrait le mettre (module, classe, etc).

J'ai déjà essayé d'utiliser les codes trouvés sur le forum mais je n'y arrive toujours pas. J'ai 52 feuilles à modifier, toute votre aide sera précieuse.

Merci d'avance pour votre aide.

FYI

Private Sub Calendar1_Click()
ActiveCell.Value = Calendar1.Value
Calendar1.Visible = False
End Sub

Private Sub Calendar2_Click()
ActiveCell.Value = Calendar2.Value
Calendar2.Visible = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Column = 6 And Target.Row >= 7 And Target.Row <= 107 Then
Calendar1.Visible = True
Calendar1.Top = ActiveCell.Top
Calendar1.Left = ActiveCell.Left + ActiveCell.Width
Else
Calendar1.Visible = False
End If

If Target.Column = 7 And Target.Row >= 7 And Target.Row <= 107 Then
Calendar2.Visible = True
Calendar2.Top = ActiveCell.Top
Calendar2.Left = ActiveCell.Left + ActiveCell.Width
Else
Calendar2.Visible = False
End If

End Sub
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
kobaya Hors ligne
Le #24190841
ninanova a écrit le 23/01/2012 à 16h40 :
Bonjour,

J'ai crée un fichier de suivi. J'ai crée un code VBA Calendrier
pour une plus simple utilisation du fichier. Cependant, je n'arrive pas
à répeter le code pour toutes les feuilles. Je ne sais pas non
plus où il faudrait le mettre (module, classe, etc).

J'ai déjà essayé d'utiliser les codes trouvés sur
le forum mais je n'y arrive toujours pas. J'ai 52 feuilles à modifier,
toute votre aide sera précieuse.

Merci d'avance pour votre aide.

FYI

Private Sub Calendar1_Click()
ActiveCell.Value = Calendar1.Value
Calendar1.Visible = False
End Sub

Private Sub Calendar2_Click()
ActiveCell.Value = Calendar2.Value
Calendar2.Visible = False
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

If Target.Column = 6 And Target.Row >= 7 And Target.Row <= 107 Then
Calendar1.Visible = True
Calendar1.Top = ActiveCell.Top
Calendar1.Left = ActiveCell.Left + ActiveCell.Width
Else
Calendar1.Visible = False
End If

If Target.Column = 7 And Target.Row >= 7 And Target.Row <= 107 Then
Calendar2.Visible = True
Calendar2.Top = ActiveCell.Top
Calendar2.Left = ActiveCell.Left + ActiveCell.Width
Else
Calendar2.Visible = False
End If

End Sub


Bonjour ninanova,

Je te propose une solution qui a l'air de fonctionner. Pour cela, il faut télécharger mon exemple sur RapidShare, avec ce lien : https://rapidshare.com/files/1308975639/Calendrier.xls.

Cdlt,
Kobaya.
Publicité
Poster une réponse
Anonyme