Insérer un calendrier dans plusieurs cellules excel 2016

Anr1

XLDnaute Occasionnel
Supporter XLD
Bonjour,

Je viens vers vous pour que vous m'aider à crée un calendrier qui s'affiche dans les cellules de colonne A ("date" ) de A3 jusqu'à la fin de tableau avec un clic pour tous les feuils de classeur ("Feuil1,2....4).

j'ai essayé mais j'arrive pas surtt je trouve pas le montview sur ma machine.

Je reste à votre disposition pour plus d'information.

Merci bien d'avance
 

Pièces jointes

  • test1-2.xlsm
    59 KB · Affichages: 12

sylvanu

XLDnaute Barbatruc
Supporter XLD
Bonjour anouarlachiri,

En PJ un exemple basé sur le calendrier de Pollux et un Worksheet_SelectionChange.
La macro ouvre un calendrier à chaque clic sur une cellule de la colonne A de toutes les feuilles.
Cette macro doit être dans toutes les feuilles concernées.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 And Target.Row > 2 Then
        Target.Value = Calendar.ShowTopLeft(155, 230, 2) 'Arguments(left,top,region)
    End If
End Sub
 

Pièces jointes

  • New calendar version 2019-2020 V.4.1.1_Polux.xlsm
    78.8 KB · Affichages: 40

patricktoulon

XLDnaute Barbatruc
bonjour
@sylvanu
polux c'est le nom de mon pc ;)
et tant qu'a faire utiliser la bonne fonction
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 And Target.Row > 2 Then
        Target.Value = Calendar.ShowX(Target, , , 2)
    End If
End Sub
la ShowTopLeft(top ,left,region c'est pour les besoins particuliers

la showX te calcul le top left cellule par raport a l'ecran tout seul
 

Anr1

XLDnaute Occasionnel
Supporter XLD
Bonjour anouarlachiri,

En PJ un exemple basé sur le calendrier de Pollux et un Worksheet_SelectionChange.
La macro ouvre un calendrier à chaque clic sur une cellule de la colonne A de toutes les feuilles.
Cette macro doit être dans toutes les feuilles concernées.
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 And Target.Row > 2 Then
        Target.Value = Calendar.ShowTopLeft(155, 230, 2) 'Arguments(left,top,region)
    End If
End Sub
Bonjour @sylvanu,

Merci bien, c'est ce que je cherche exactement :)
je suis amateur en VBA donc pouvez vous m'expliqué les étapes svp afin d'activé userform ( je sais pas comment faire pour userform ) afin d'appliquer le code VBA sur mon fichier origine.

Merci :)
 

Anr1

XLDnaute Occasionnel
Supporter XLD
bonjour
@sylvanu
polux c'est le nom de mon pc ;)
et tant qu'a faire utiliser la bonne fonction
VB:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 1 And Target.Row > 2 Then
        Target.Value = Calendar.ShowX(Target, , , 2)
    End If
End Sub
la ShowTopLeft(top ,left,region c'est pour les besoins particuliers

la showX te calcul le top left cellule par raport a l'ecran tout seul
Bonjour @patricktoulon ,

Pouvez vous m'aidez aussi :) j'arrive pas à l'appliqué sur mon fichier je suis amateur en VBA

Merci d'avance.
 

sylvanu

XLDnaute Barbatruc
Supporter XLD
Re,
@ Patrick, Dans le code non, mais dans Propriétés.;)

@anouarlachiri,
1-Vous ouvrez le fichier, puis ALT+F11.
2- A droite dans Feuilles, vous faites Clic sur Calendar puis Exporter. Vous l'enregistrez où vous voulez.
3- Dans votre fichier, vous faites clic droit sur Microsoft excel Objects et Importer un fichier. Vous récupérez le calendar qu'on vient d'enregistrer. C'est tout.
4- Ensuite vous coller dans chaque feuille le petit bout de code. Prenez celui de Patrick.
Et c'est fini.
 

patricktoulon

XLDnaute Barbatruc
re
@anouarlachiri

il y a des commentaires dans le code du userform
tu pourrais peut être les lire ;)
Capture.JPG


c'est pas peine d'avoir mâcher le boulot ;)
il y a meme des exemples
 

patricktoulon

XLDnaute Barbatruc
Re,
@ Patrick, Dans le code non, mais dans Propriétés.;)

@anouarlachiri,
1-Vous ouvrez le fichier, puis ALT+F11.
2- A droite dans Feuilles, vous faites Clic sur Calendar puis Exporter. Vous l'enregistrez où vous voulez.
3- Dans votre fichier, vous faites clic droit sur Microsoft excel Objects et Importer un fichier. Vous récupérez le calendar qu'on vient d'enregistrer. C'est tout.
4- Ensuite vous coller dans chaque feuille le petit bout de code. Prenez celui de Patrick.
Et c'est fini.
c'est exactement ca
tu exporte le calendar
tu l'importe dans n'importe quel fichier
et tu suis exactement ce qui est montré en exemple dans les commentaires

la showx convient parfaitement pour les cellules dans une feuille ou un autre controls dans un autre userform les positions sont calculées automatiquement

la showtopleft c'est pour des besoins particuliers ou la référence n'est pas un object range ou ActivX
mais une position en points déterminé par les 2 premiers arguments
 

Anr1

XLDnaute Occasionnel
Supporter XLD
Re,
@ Patrick, Dans le code non, mais dans Propriétés.;)

@anouarlachiri,
1-Vous ouvrez le fichier, puis ALT+F11.
2- A droite dans Feuilles, vous faites Clic sur Calendar puis Exporter. Vous l'enregistrez où vous voulez.
3- Dans votre fichier, vous faites clic droit sur Microsoft excel Objects et Importer un fichier. Vous récupérez le calendar qu'on vient d'enregistrer. C'est tout.
4- Ensuite vous coller dans chaque feuille le petit bout de code. Prenez celui de Patrick.
Et c'est fini.

Merci bcp je pense de réussir à faire les étapes sauf que la deuxième étape j'arrive pas à exporter un calendar je trouve pas la casse pour l faire ...
 

Anr1

XLDnaute Occasionnel
Supporter XLD
c'est exactement ca
tu exporte le calendar
tu l'importe dans n'importe quel fichier
et tu suis exactement ce qui est montré en exemple dans les commentaires

la showx convient parfaitement pour les cellules dans une feuille ou un autre controls dans un autre userform les positions sont calculées automatiquement

la showtopleft c'est pour des besoins particuliers ou la référence n'est pas un object range ou ActivX
mais une position en points déterminé par les 2 premiers arguments
Pouvez vous m'envoyer votre fichier pour que je pourais lire les commentaires
Merci bien
 

Discussions similaires

Statistiques des forums

Discussions
311 707
Messages
2 081 734
Membres
101 809
dernier inscrit
HADER2024