Comment faire pour mettre plusieurs calendriers?

Marix -  
f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour, j'ai déjà fait le tour de plusieurs sites pour pouvoir répondre à ma question. Est-il possible de combiner le calendrier variable sur plusieurs cellules (range) et quelques cellules qui ne sont pas ^sont pas consécutives?
EX:

Ma formule est :
Dim cel As Range
Private Sub Calendar1_Click()
If Not cel Is Nothing Then cel = Calendar1.Value
End Sub

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Intersect(Target, [A22:A30]) Is Nothing Then
Calendar1.Visible = False
Set cel = Nothing
Else
Set cel = Target
If IsDate(cel) Then Calendar1 = cel
Calendar1.Left = cel.Offset(0, 1).Left + 3
Calendar1.Top = cel.Top + 3
Calendar1.Visible = True
End If
End Sub

Ce qui me permet d'avoir un calendrier sur toutes les cellules de la plage A22:A30 et de pouvoir sélectionner plusieurs dates différentes. Mais j'aimerais aussi en avoir un sur la cellule B13 ainsi que sur d'autres cellules. Je ne sais pas si je suis clair mais j'espère avoir une réponse à ma question :) Merci!
A voir également:

1 réponse

f894009 Messages postés 17417 Date d'inscription   Statut Membre Dernière intervention   1 715
 
Bonjour,

Il faut des test en ou (Or) et le test inverse: Not Intersect

Private Sub Worksheet_SelectionChange(ByVal Target As Range) 
  If Not Intersect(Target, [A22:A30]) Is Nothing Or _ 
     Not Intersect(Target, [B13]) Is Nothing Or _ 
     Not Intersect(Target, [D14]) Is Nothing Or _ 
     Not Intersect(Target, [E14]) Is Nothing Then 
    Set cel = Target 
    If IsDate(cel) Then Calendar1 = cel 
    Calendar1.Left = cel.Offset(0, 1).Left + 3 
    Calendar1.Top = cel.Top + 3 
    Calendar1.Visible = True 
  Else 
    Calendar1.Visible = False 
    Set cel = Nothing 
    Exit Sub 
  End If 
End Sub 


Bonne suite
0