Calendrier Fonction "Contrôle Calendrier 11.0"

  • Initiateur de la discussion Initiateur de la discussion targa
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

targa

XLDnaute Junior
Bonjour à tous,

J'ai un pti problème à soumettre, merci d'avance

La situation:
Dans ma feuille, j'ai 2 cellules de dates avec des cellules fusionnées.
la 1ère => B2😀2 (Nommée: Date1) avec la fonction "Microsoft Date and Time Picker Control 6.0(SP6)" => OK
La 2ème => B5😀5 (Nommée: Date2) avec la fonction "Calendar Control 11.0"

Mon problème:
Pour la 2ème cellule lorsque je clique dedans (avec cellules fusionnées)
ou d'autre cellules fusionnées, il me vient une alarme de débogage.
apparemment le code VBA n'accepte pas des cellules fusionnées.
Et deuxièmement à chaque cellule remplies que je sélectionne, il me vient le calendrier de sélection de date.
autre problème, lorsque je sélectionne plusieurs cellule, j'ai l'alarme aussi
Mon souhait est que le calendrier "Calendar Control 11", n'apparaisse que lorsqu'on sélectionne la cellule B5😀5 (Date2)

Pouvez-vous m'aider, svp, ci-joint un fichier d'exemple.

Un grand merci pour votre aide.
 

Pièces jointes

Dernière édition:
Re : Calendrier Fonction "Contrôle Calendrier 11.0"

Bonjour,

Juste changer le test de l'adresse de cellule:
Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
' si la sélection sur la feuille change (target est la référence de la sélection)
    If Target(1).Address(0, 0) <> "B5" Then
    'If Target.Column = 7 And Target.Row = 30 And Target.Cells.Count = 1 Then
        'si la colonne <>3 (C) ou la ligne <2 ou la sélection fait plus d'1 cellule
        Calendar1.Visible = False
        'alors on cache le calendrier
        Exit Sub
    Else
        'sinon
        Calendar1.Top = Target.Offset(0, 0).Top + 2
        ' aligner le calendrier avec le haut de la cellule en dessous
        Calendar1.Left = Target.Left + 50
        ' l'aligner à gauche de la cellule
        'Calendar1.LinkedCell = Target.Address
        ' mettre la cellule liée au contrôle sur la cellule sélectionnée
        If IsDate(Target.Value) Then
        'si la cellule sélectionnée contient une date
            Calendar1.Value = Target.Value
            ' la récupérer
        Else
            ' sinon mettre la date du jour
            Calendar1.Value = Date
        End If
        Calendar1.Visible = True
        'afficher le calendrier
    End If
End Sub

A+
 
Re : Calendrier Fonction "Contrôle Calendrier 11.0"

Bonjour Hasco,

Un grand merci pour ta la solution et réponse hyper rapide. 😉

Cela marche à merveille, je mets à disposition le fichier corrigé, pour ceux à qui cela interresserait

Meilleures salutations

A+

Targa
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
1
Affichages
385
Compte Supprimé 979
C
Retour