Bonjour
est-ce possible de faire afficher un calendrier dans une cellule pour y changer la date
en c10-12-14-16-18-20
voici le lien
http://www.cjoint.com/c/GKsmolfjU6u
merci
Bonjour
est-ce possible de faire afficher un calendrier dans une cellule pour y changer la date
en c10-12-14-16-18-20
voici le lien
http://www.cjoint.com/c/GKsmolfjU6u
merci
Bonjour guyguay,
Je te propose ce fichier Excel : https://mon-partage.fr/f/lgL9yvUg/
C'est un fichier .xlsm car il contient du code VBA (tu comprendras
plus loin pourquoi c'est nécessaire).
-----------------------------------------------
Pour réaliser ta demande, j'ai ajouté ce contrôle ActiveX :
« Microsoft Date and Time Picker Control 6.0 (SP6) ».
Si tu as comme moi Excel 2007, alors tu n'as rien à faire de spécial
dans le sens où ce contrôle est déjà disponible par défaut.
Je pense que c'est idem pour les versions ultérieures ; s'il n'est pas
disponible, il faudra l'installer à partir d'internet.
-----------------------------------------------
ATTENTION : l'affichage de ce contrôle est instable car sans ajouterLe code VBA inclus dans ThisWorkbook, sub Workbook_Open()
y remédie, mais ça m'a obligé à convertir ton fichier .xlsx en
fichier .xlsm, car un fichier .xlsx ne peut pas contenir de macro.
Grâce à ce code VBA, tu ne te rendras même pas compte du
désagrément visuel que j'ai évoqué : c'est ok dès l'ouverture
du fichier ! ;)
-----------------------------------------------
Le problème d'instabilité d'affichage étant réglé, voyons la suite :est la cellule C2 ; la date est au 06/11/2017 ➯ 06/11/2017 en C2, mais pour
éviter un affichage double de cette date, j'ai mis une couleur de police (texte)
« blanc » pour que le contenu de C2 ne se voit pas (car sur un fond blanc) :
si tu veux, c'est comme le style « caméléon » (une nouvelle mode ultra-chic
de la jet society, il paraît). ;P
J'ai essayé de mettre à la cellule liée un format personnalisé pour avoir
« lundi 6 novembre 2017 », mais ça ne tient pas : si on sélectionne une
autre date, ça revient au format JJ/MM/AAAA sans tenir compte du
format personnalisé : instable aussi ! mais avec ce que j'ai fait, c'est ok.
Il y a donc un seul contrôle, qui est au 06/11/2017 ; en C10 : =--C2
⚠ Ne mets pas =C2 car sinon, là aussi, ça ne tiendra plus compte
du format personnalisé et le format JJ/MM/AAAA sera appliqué.
-----------------------------------------------
Il semble que tu voulais un calendrier dans chacune de ces cellules :
C10, C12, C14, C16, C18, C20 (soit 6 contrôles Date Picker) ;
vu le contexte, c'est inutile, et ce qui suit est bien plus simple :
En C12 : =C10+1
En C14 : =C12+1
En C16 : =C14+1
En C18 : =C16+1
En C20 : =C18+1
-----------------------------------------------
Bien que le nom du fichier soit "Du 20 au 24 Nov 2017(.xlsm)",
j'ai volontairement mis une mauvaise date au 06/11/2017 ;
à toi de la changer en sélectionnant le 20 (novembre 2017) ;
tu pourras voir que tout s'adapte correctement grâce aux
formules vues ci-dessus.
Seule contrainte : l'utilisateur doit choisir une date uniquement dans
la 1ère colonne du calendrier, puisque c'est la colonne réservée pour
un Lundi ; rien ne l'empêche de choisir dans une autre colonne, mais
par exemple un « jeudi 23 novembre 2017 » en C10, ça ferait plutôt
un mauvais effet, car à droite de A10 = « LUNDI » ! ;)
-----------------------------------------------
Si tu veux ajouter du code VBA pour refuser une date qui n'est pas celle d'un
Lundi, je t'en laisse le soin : moi, j'ai reporté ça à la semaine des 4 jeudis... ;P
(si tu connais pas l'expression, c'est comme à la Saint Glin Glin ; une sorte
d'Arlésienne, quoi !)
-----------------------------------------------
J'espère que ma solution te plaira.
Merci de me donner ton avis.
Cordialement
Merci beaucoup pour ton travail, mais c'est vraiment trop elaboré pour moi.
ce que je cherche doit rester tres simple
si il faut modifier le fichier pour que ca fonctionne, alors proposer moi quelque chose
j'utilise office 2016
merci
quand j'ouvre le fichier j'ai un message d 'erreur de complilation
je dois cliquer sur ok et a cahque fois une page vba reste ouverte
est-ce normal
ensuite je ne vois pas la liste deroulante du calendrier
@guyguay
J'ai vu tes 2 copies d'écran ; DP01 est le nom que
j'ai donné au contrôle calendrier mis en cellule C2.
Regarde ces 3 copies d'écran :
https://mon-partage.fr/f/MNeXihT0/
https://mon-partage.fr/f/YuwyjHt7/
https://mon-partage.fr/f/W2noU21y/
Je viens de voir sur internet qu'Excel 2016 ne comporte pas la bibliothèque
« Microsoft Date and Time Picker Control 6.0 (SP6) ».
C'est bien typique de Microsoft, ça, d'enlever sans prévenir dans les nouvelles versions
ce qui plaisait bien avant ! tout comme le menu Démarrer de Windows 7 qui était très
bien fait et plaisait à tous ! perso, j'ai gardé Windows 7, et je n'ai jamais pris aucune
version ultérieure : ni 8.0 ; ni 8.1 ; ni 10 !!! heureusement !!! d'ailleurs, même cadeau,
j'en voudrai pas !!! ;)
À tout hasard, regarde si cet autre lien peut t'aider :
https://forum.excel-pratique.com/applications/calendrier-autonome-sans-module-microsoft-t72229.html
Perso, j'avais failli acheter Office 2016, mais plus j'en lis sur ce sujet et plus
je me félicite d'y avoir renoncé !!! Ouf ! que de galères j'me suis évité !!! :)
Bonjour guyguay,
Si ta question d'installer Excel 2013 est juste pour avoir "Microsoft Date and Time Picker Control 6.0 (SP6)", tu peux laisser tomber car j'ai trouvé cet article qui indique comment le télécharger et l'activer, cela pour ton Excel 2016 :
https://www.ablebits.com/office-addins-blog/2016/10/12/insert-calendar-excel-datepicker-template/
1) Défile vers le bas jusqu'à voir ce point : « 4. Link the calendar control to a cell »
2) Défile vers le bas (assez loin) pour voir :
« How to register the Calendar control on your machine »
Commence par tout lire depuis ce point jusqu'à la fin de l'article ; ensuite, va lire
à partir du début du même article : ces infos t'intéresseront sûrement aussi. ;)
---------------------------------------------------------
Tu devrais lire aussi cet autre article (car même si c'est pour Excel 2010, ça pourrait te servir pour Excel 2016) :
https://support.microsoft.com/fr-fr/help/2676583
---------------------------------------------------------
À tout hasard, lis aussi toute cette discussion :
https://forum.excel-pratique.com/excel/microsoft-date-and-time-picker-control-sous-wow8-t53534.html
---------------------------------------------------------
J'crois bien qu'avec toute cette lecture, tout ton Dimanche va y passer ! ;D
(et p't'être même aussi le début d'la semaine prochaine !)
---------------------------------------------------------
Remarque : comme les disques durs actuels ont une taille limitée de seulement
quelques centaines de gigaoctets (Go), voire de 2 téraoctets (To), je crois que
c'est pour cela que Microsoft a choisi de retirer son contrôle ActiveX si pratique
de Date and Time Picker (et idem pour Calendar) : il a eu peur que ça fasse
déborder les disques durs et en provoque la saturation... ;D
---------------------------------------------------------
Sinon, oui, ça doit être possible d'installer Excel 2013 en plus d'Excel 2016,
mais c'est quand même mieux d'éviter d'avoir 2 versions d'Office sur son
PC (dans le cas inverse, regarder du côté de la clé de registre NoRereg,
pour éviter les pénibles réenregistrements dans le Registre Windows).
Cordialement
J'ai bel et bien suivi toutes les étapes mais le "Microsoft Date and Time Picker Control 6.0 (SP6)", n'apparait toujours pas dans la liste des autres controles
je ne comprend pas pourquoi
aidez moi
merci
Bonsoir guyguay,
Si tu as bien un Windows 64 bits, tu as dû copier les 2 fichiers comctl32.ocx
et mscal.ocx dans ce dossier : C:\Windows\SysWow64 ; voir copie d'écran :
https://mon-partage.fr/f/2vxkHdUx/
Ensuite, j'avais enregistré les 2 dans la Base de registre Windows, et c'était
alors dans la liste des contrôles ActiveX.
--------------------------------------------------------------
As-tu bien ouvert une fenêtre d'invite de commande (sur un compte Administrateur
ou sur un compte en ayant les droits) ? si non : va sur ton compte Administrateur,
et fait Windows r ➯ fenêtre « Exécuter » ; tape : cmd Entrée (appuie sur la touche
Entrée, n'écris pas « Entrée » !)
Ensuite, juste après le signe « > », tape : regsvr32 mscal.ocx Entrée
idem pour : regsvr32 comctl32.ocx Entrée
--------------------------------------------------------------
Pour ces 2 commandes : si ça n'a pas marché, le message l'indiquera clairement ;
mais là, j'ai pas d'solution ! :(
Si ça a marché, tu dois voir un message indiquant que l'enregistrement est réussi ➯ ça sera
dans la liste des contrôles ; voir à la lettre C pour : « Calendar Control 9.0 », et à la lettre M
pour « Microsoft Date and Time Picker Control 6.0 (SP6) ».
⚠ peut-être faudra-t-il redémarrer le PC après la commande regsvr32.exe ?
(j'm'en souviens plus, car j'l'avais fait y'a très longtemps)
--------------------------------------------------------------
À tout hasard, voici 3 autres liens :
https://www.ocxdump.com/download-ocx-files_new.php/ocxfiles/M/MSCAL.OCX/9.0.0.2607/download.html
https://www.ocxdump.com/download-ocx-files_new.php/ocxfiles/C/COMCTL32.OCX/6.00.8105/download.html
https://forum.excel-pratique.com/excel/calendar-installation-t23293-10.html
--------------------------------------------------------------
Si malgré ces infos, ça ne marche toujours pas : désolé, j'ai pas d'autre solution à proposer ;
peut-être un autre intervenant pourra t'aider davantage ? alors au cas où, continue de
surveiller les éventuelles futures réponses.
Bonne chance, et bonne continuation !
Cordialement
celui ci a fonctionné tape : regsvr32 mscal.ocx Entrée
mais pas celui la regsvr32 comctl32.ocx Entrée
j'ai redémarré et ca ne fonctionne toujours pas
merci beaucoup pour ton aide
Bonjour guyguay et rhodo,
J'ai vu ton message dans le post précédent me demandant si je connaissais une solution.
Je n'étais pas intervenu dans le post "calendrier" car je voyais que rhodo s'occupait de toi et il est costaud.
Je ne sais pas si cela va t'aider car je ne travaille qu'avec Excel 2007 et 2013 mais dans ceux ci la procédure expliquer dans le mémo joint fonctionne très bien :
http://www.cjoint.com/c/GKusIS0KWSe
C'est en principe assez simple à mettre en place mais si tu as des difficultés n'hésites pas à me revenir (envoies ton fichier pour que je puisse insérer le calendrier à la bonne place)
Bien à toi
Chris
http://www.cjoint.com/c/GKuurAHzgye
Je n'avais pas vu que tu avais joint un fichier. Le voici avec les calendriers intégrés.
A+
Chris
Bonsoir Chris,
J'ai lu ton document Word, mais ce qui ne va pas, c'est à partir du point 3, au début de la 2ème page : tu as mis la bonne fenêtre « Autres contrôles », mais dans la liste, le bon item sélectionné « Microsoft Date and Time Picker Control 6.0 (SP6) » (que j'ai bien), est justement ce que n'a pas le demandeur guyguay ! il sera donc coincé, car tout le problème est justement de faire en sorte que ce contrôle apparaisse dans la fenêtre que tu as montré ; d'où les nombreux messages précédents ; mais là, après avoir proposé plusieurs solutions possibles, je sèche ! :( je ne suis donc pas aussi costaud que tu le pensais, mais merci quand même... ;)
J'ai aussi regardé ton fichier Excel, et tu as mis un contrôle date pour chaque jour de la semaine, comme l'avait demandé guyguay dans son énoncé initial ; au début, j'avais pensé faire la même chose, puis je me suis dit que puisque les jours de semaine se suivent (du Lundi au Samedi), c'est mieux de mettre un seul contrôle date pour le Lundi, et de mettre une formule « +1 jour » pour les autres jours du Mardi au Samedi ; surtout, ça évite un risque d'incohérence si après avoir choisi par exemple le lundi 13 novembre 2017, l'utilisateur choisit dessous une date autre que mardi 14 novembre 2017 (idem pour mercredi à Samedi) ; dans mon fichier Excel que j'ai joint, j'ai fait comme je viens de t'indiquer : avec un seul contrôle date.
Mon fichier est dans la 1ère réponse de la discussion, et le lien est toujours valable puisqu'il va du 18/11/2017 au 30/11/2017 ; je te remets le même lien ici pour te faciliter son accès :
https://mon-partage.fr/f/lgL9yvUg/
Cordialement
merci beaucoup Chris et Rhodo
Je pense etre obligé d'essayer d'installer Excel 2013
Bonsoir à tous les deux
Que de littérature sur le net concernant ce "bug" de Microsoft.
J'ai trouvé dans un coin ceci
http://www.cjoint.com/c/GKux4Pa0rVe
Regardes si cela fonctionne chez toi en Excel 2016.
Il a complètement reprogrammé un calendrier et ne passe donc pas par l'utilitaire qui pose problème (Microsoft Date and Time Picker Control 6.0 (SP6) )
Je n'ai pas étudié tout son classeur (c'est assez lourd) mais cela fonctionne.
A toi de voir si cela peut coller avec ton application
Il serait quand même dommage de foutre en l'air ton Excel 2016 à cause de ce bug. Je suppose que cette version apporte quand même des nouveautés utiles.
En tous cas, évite de faire cohabiter ensemble dans un même PC 2 versions d'Excel : tu vas droit aux em...
Tu pourrais aussi t'adresser au vendeur à qui tu as acheté ton 2016 et lui demander la procédure à suivre pour réclamer.
Tu peux aussi aller sur le site de Microsoft...Mais là bon courage...
Cela ne te console pas beaucoup mais je dois dire que c'était quand même intéressant de suivre ce débat et j'ai appris des choses.
A+
Chris
Bonjour à tous les deux,
Plus spécialement pour rhodo : je reviens sur la façon de calculer les différents jours de la semaine et tu as naturellement raison de le faire en ajoutant 1 plutôt que de devoir insérer toutes les dates de la semaine.
A vrai dire, je n'ai découvert le fichier sur le tard et j'ai fait au plus vite.
Toutefois je suis quand même content de l'avoir fait car cela m'a permis de m'entraîner à l'usage de cette insertion de date.
Notamment qu'il ne faut pas oublier de changer l'adresse de la cellule ET QU'IL FAUT UN CERTAIN TEMPS A EXCEL POUR REAGIR.
J'avais fait les implantations par copier/coller et je me suis aperçu que le réglage se faisait difficilement. Le format se transforme mystérieusement et il faut un peu "chipoter" pour le remettre d'aplomb, ensuite la macro ne réagissait pas quand on cliquait sur la flèche. J'ai essayé de chercher pourquoi et puis je me suis aperçu qu'après un certain temps cela fonctionnait. Excel a donc besoin de temps pour mettre en place l'outil. Je me demande si ce n'est pas toutes ces petites mises au point qui ont découragé Microsoft et l'ont poussé à abandonner cet outil.
C'était juste pour te faire part de ces petits avatars au cas où tu serais confronté aux mêmes difficultés.
Pour guygay : en y réfléchissant encore, ne laisse pas tomber Excel 2016 (à moins qu'il n'y ai d'autres défauts) pour un aussi petit objectif : faire un calendrier d'insertion est un gadget qui, sommes toutes, n'est pas très utile. Tu prends pratiquement autant de temps à ouvrir le calendrier et chercher la date plutôt que de la taper directement dans la cellule. Tu peux, par ailleurs, garantir l'encodage par d'autre méthode (Valider les données ou MEFC)
Bonne continuation
Chris
Merci Chris
le dernier fichier que tu as posté fonctionne
peut tu integrer cette fonction sur la colonne C de mon fichier
merci
Bonsoir,
Voici ton fichier en retour adapté :
http://www.cjoint.com/c/GKwagCPPjOe
Tu cliques DROIT dans la cellule C10 et tu verras apparaître le calendrier. Les autres dates se mettent à jour automatiquement en ajoutant 1 puisque les jours se suivent comme l'a fait justement remarqué rhodo
Comme je ne suis pas à l'origine de ce code, et pour aller vite (càd sans analyser comment les divers programmes s'emboîtent) j'ai procédé en gardant le fichier que j'avais pêché sur le net et en enlevant les onglets pour les remplacer par l'onglet de ton tableau.
Ensuite j'ai repéré parmi les divers VBA, les instructions qui précisaient la feuille ainsi que l'adresse de la cellule devant contenir la date. Et cela fonctionne.
Je n'ai pas eu le temps de me pencher sur la façon dont il faudrait procéder s'il fallait mettre plusieurs dates dans ce fichier. Si nécessaire, je regarderai mais là cela me prendra un peu plus de temps car il faut que j'assimile la logique de ce système.
Peux tu me dire si c'est nécessaire ,
A+
Chris
Bonsoir Martin
Il n'y a pas de formule : c'est du VBA çàd de la programmation.
Il y a dans le classeur que je t'ai envoyé des programmes et un Userform qui pilote toute cette opération dès que tu cliques droit dans la cellule C10.
Si tu veux les voir, tu dois aller sous l'onglet Développeur et cliquer sur Visual basic. Tu verras apparaître un nouvel écran assez compliqué qui permet de visualiser tous les programmes attachés à ce classeur ainsi que le userform. Mais vu que manifestement tu n'es pas du tout au courant : SURTOUT NE TOUCHE A RIEN. et cliques sur la croix rouge au dessus à droite pour sortir du mode programmation.
Il est impossible de t'expliquer la base du VBA sur ce site. Il faut que tu commences par apprendre soit par un cours soit pas la lecture (La série "Programmation VBA pour Excel aaa pour les nuls" par M.John Walkenbach est excelente)
Quand tu auras les bases, alors nous pouvons t'aider à progresser pour les cas difficiles.
Pour l'instant contentes toi d'utiliser la "magie" d'Excel et dis moi s'il faut plusieurs dates différentes dans ton tableur auquel cas je dois intervenir.
Par contre s'il n'en faut qu'une seule mais que tu as besoin d'autres classeurs pour l'avenir, il te suffit de dupliquer celui que je t'ai envoyé et adapter les paramètres de la nouvelle semaine.
Bon courage
Chris
Salut Chris
voici un autre fichier que j'aimerais modifier
J'aimerais avoir le calendrier a la cellule V3
comment faire pour copier le code de mon autre fichier a celui ci
Bonjour Martin,
Est-ce cela que tu désires ?
http://www.cjoint.com/c/GKAkiAOwxTo
Comment j'ai fait :
1 Je suis parti du fichier Calendrier initial (contenant les VBA et Userform et Fonctions) que j'ai sauvé sous un autre nom
2 J'ai enlevé les onglets
3 j'ai transféré les onglets de ton nouveau fichier dans ce fichier sauvé
4 j'ai adapté quelques paramètres : le nom de l'onglet et l'adresse V3 (voir caractère gras) :
1 VBA
Option Explicit
Public WithEvents Btn As MSForms.CommandButton
'Procédure lors du clic sur un bouton "jour"
Private Sub Btn_Click()
Dim maDate As Date
maDate = CDate(Btn.Caption & "/" & Calendrier.Tag)
'La ligne suivante détermine l'action à effectuer lors d'un clic sur le bouton
'Pour entrer la date choisie dans une cellule et fermer l'Userform :
'ActiveCell.Value = maDate
Worksheets("Recto").Range("V3") = maDate
Calendrier.Hide
End Sub
2 VBA
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
If Not Application.Intersect(Target, Range("V3")) Is Nothing Then
Cancel = True
Calendrier.Show
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Range("V3")) Is Nothing Then
Calendrier.Show
End If
End Sub
Et voilà.C'est du bricolage mais cela marche
En fait, l'auteur du code a utilisé des outils barrés par mot de passe que je ne suis pas parvenu à atteindre. Il faut donc impérativement garder toujours la même structure de fichier et faire évoluer les onglets.
Si j'ai le temps un jour, je regarderai comment contourner ces outils mais c'est certainement un travail de plusieurs heures voir jours.
Alors en attendant....
Bonne continuation
Chris
Encore moi : peux tu enlever ces vilains -1 en face de mes réponses ? Je ne crois pas les avoir mérités.
A+
Chris
Salut Chris ton fichier fonctionne bien
Avant que tu modifie le fichier j'avais plusieurs listes déroulantes qui sont disparus, est-ce ta modification qui a tout enlevé
ensuite je dois envoyer par courriel a mon employeur ce fichier a tout les jours, mais il n'aimeras pas avoir ce message a l'ouverture de ce dernier
comment faire pour éviter ce message
http://www.cjoint.com/c/GKAnT2tRNUu
merci encore
Oups le calendrier ne fonctionne pas bien
essaie de changer de date ca ne concorde pas
voici mon fichier avec mes listes deroulantes reparées
Bonjour,
Pour ta première question : comme je te l'ai expliqué je suis parti du fichier calendrier et j'ai transféré les informations donc oui, il se peut que les listes déroulantes soient passées à la trappe. Toutefois j'ai été voir le fichier d'origine et je ne trouve pas de listes déroulantes ???
Es tu certain de m'avoir envoyé le bon fichier ??
Pour la deuxième question : tu m'envoies une image .jpg. Est ce cela que tu envoies à ton patron ? et de quel message parles tu : l'avertissement automatique de Google concernant les fichiers protégés ??
Précises tes questions stp
A+
Chris
as tu ouvert le dernier fichier que j'ai posté , regarde la case v3 ca ne fonctionne pas bien
Pour les listes deroulantes, oublie mon message, j'ai tout corrigé (excuse moi)
le fichier que j'envoi a mon patron est un excel jamais un JPG
pour le message d'erreur ca n'apparait pas toujours oui (C,est la ligne jaune tout en haut du fichier)
merci
Martin
Je n'avais pas vu ton dernier fichier (on s'est probablement croisé dans l'expédition).
Ceci dit, je l'ai chargé et le calendrier fonctionne très bien chez moi.
J'espère que ce n'est pas une question de version de nouveau.
Est ce que tu cliques bien "droit" avec la souris ?
Dès que je clique droit sur V3, le calendrier apparaît et lorsque je clique sur une date, elle se met bien dans V3. Donc pour moi tout est en ordre.
Par contre, je ne vois toujours pas tes listes déroulantes ???
Pour ce qui est du message d'erreur, je n'ai rien remarqué non plus en ouvrant ton fichier mais naturellement il a été transmis par Cjoint.com ce qui n'est pas la même chose que par mail.
A-tu mis une protection à ton fichier Excel ??
A te lire
Chris
Oui je fais clic droit , mais si je veux inserer une date anterieure, par exemple un jour d'octobre alors la mauvaise date apparait.
pour les listes deroulantes je comprend bien comment les ajouter alors oublie ca
aucune protection sur mon fichier
merci beaucoup Chris pour tout ton temps
Martin
Bonsoir,
Voici le fichier que tu m'as envoyé :
http://www.cjoint.com/c/GKBxKvvdUTo
Pour moi : TOUT FONCTIONNE
Tu cliques droit sur V3 ; tu choisis le mois désiré en cliquant sur les flèches des mois + et - pour choisir le mois et tu cliques sur le jour désiré et il viendra s'inscrire dans la cellule V3.
J'ai essayé pour les mois de septembre ; octobre et novembre et j'ai cliqué sur plusieurs dates et tout répond parfaitement.
J'ai juste remis la détermination du jour de la semaine au-dessus de la date en utilisant la table des jours semaine que tu semblais avoir perdu.
Désolé mais si cela ne fonctionne pas chez toi, je ne peux plus t'aider : cela doit provenir de ton installation (peut être la version 2016) mais franchement cela m'étonnerait.
Es tu certain de ne pas faire une fausse manœuvre ??
J'oublie les listes déroulantes (je ne sais pas pourquoi mais j'oublie...)
Pour la protection veilles bien que le fichier soit sauvé avec dans les Options d'excel / Centre de gestion de la confidentialité/Barre des messages cocher "Ne jamais afficher...."
Voir image jointe
http://www.cjoint.com/c/GKBx3hfKbVo
C'est peut être cela mais je n'en suis pas certain. Il faudrait faire des essais ce qui n'est pas possible. Il faudrait que tu trouves quelqu'un qui s'y connait près de toi pour qu'il puisse tester ce que je ne peux pas faire à distance.
Confirmes moi quand même si tu arrives...ou pas...snif !
A+
Chris
Merci Chris
J'ai corrigé pour le message d'erreur dans les options
Pour la date qui n'est pas bonne, du moment que je retrograde de plus de 2 semaines en arriere, ca ne concorde plus
sinon tout va bien
merci encore
J'apprecie tout ton effort
Martin
Peux tu expliquer, pas à pas, ce que tu fais et comment tu le fais avec les dates utilisées et les résultats obtenus.
Utilises-tu les flèches de changement de mois ?
Bref essaies d'être le plus précis possible dans ta description de ton processus.
Comme je te l'ai dit, j'ai fait des essais sur plusieurs mois sans rien détecter.
Ce que l'on pourrait tenter de faire, c'est que je t'envoie un fichier où je mettrais un STOP dans le VBA qui va provoquer son arrêt et l'affichage du programme. Ensuite il faut pousser sur la touche F8 et le programme avance pas à pas. On pourrait essayer ainsi de détecter à quel moment il ne reconstitue pas la bonne date.
C'est ce que je ferais si l'incident arrivais chez moi.
Cette procédure n'est naturellement pas évidente pour quelqu'un qui ne connaît pas le VBA.
Il faut savoir que, durant cette procédure de pas à pas, il est possible, en positionnant le curseur avec la souris sur les variables du programme, de voir leur contenu et donc, en principe, de voir quand la date se déforme.
Es tu prêt à tenter l'expérience ???
Quoi qu'il en soit tu ne risques que de perdre du temps car, si cela ne marche pas, il suffit de supprimer le fichier. Cela ne "cassera" rien dans ton PC.
Qu'en penses tu ??
Chris
oui j'aimerais regler le probleme
pourrais-tu regarder sur mon pc via team viewer
Bonjour,
Voici le calendrier avec un STOP qui fera s'arrêter le programme au moment où tu auras cliquer sur le jour désiré.
Quand le programme s'arrêtera, tu auras à l'écran le programme qui sauve la date choisie et l'insère dans la cellule V3
Si tu positionne le curseur de la souris sur la variable "madate" tu verras apparaître la date sauvée sous forme de message sur fond jaune. Dis moi si c'est la date désirée ?
Après tu appuies sur F8 et le programme avancera pas à pas jusqu'à la ligne "Calendrier.Hide"
A ce moment retourne sur ton tableau pour voir si la date est toujours la bonne.
Ensuite tu retournes dans l'onglet du programme et tu appuis sur F5 et le programme s'achèvera tout seul.
Tu ne m'as pas répondu à ma demande de description détaillée de ce que tu exécutes comme procédure et c'est important pour essayer de comprendre.
Je ne possède pas team viewer et de toute façon, je ne souhaite pas m'introduire dans le PC d'autrui. Cela sort du cadre de l'assistance bénévole que je te donne. Imagine que j'endommage quelque chose involontairement...
J'attend ta réponse
A+
Chris
C'est mieux avec le fichier...
Ok je viens d'essayer
Quand tu parles de la variable madate qui devrait faire apparaitre sur fond jaune, je ne vois rien en jaune.
dnas quelle cellule se trouve cette variable, est-ce V3
Bon je vois que cela ne va pas être évident...
Quand tu cliques droit sur V3, le calendrier apparaît.
Ensuite tu cliques sur la date désirée.
Le VBA se déclenche et s'arrête sur l'instruction STOP et fait apparaître l'écran dans lequel on peut modifier le VBA (Attention ne touche à rien : tu es dans le programme)
Tu verras que l'instruction STOP est en surbrillance jaune foncé
Si tu places le curseur (sans cliquer) de la souris sur la variable "madate" (4 lignes plus haut à gauche), tu verras apparaître normalement sur fond jaune clair la date que tu as choisie. C'est le contenu de la variable à ce stade du programme. Si cette date n'est pas la bonne, on saura à peu près où se situe le problème.
ensuite tu appuies sur F8 et le programme avancera d'un pas
Il est maintenant sur l'instruction qui insère la date dans la cellule V3
Appuies encore une fois sur F8 et normalement si tu cliques sur l'onglet pour retourner dans le tableur, tu devrais voir la date dans V3
Retournes maintenant dans l'outil de programmation en cliquant sur l'onglet "Microsoft Visual Basic et appuies sur F5 et le VBA se termine. Tu peux retourner encore une fois sur l'onglet Microsoft Visualbasic et cliquer sur la croix blanche sur fond rouge dans le coin supérieur droit pour sortir de l'outil du VBA
Nous apprendrons ainsi peut être où se trouve le problème et toi tu auras appris (un peu) à manipuler les outils du VBA.
N'oublies pas de répondre à mes différentes questions concernant le déroulement du processus.
Cela peut te paraître fastidieux mais, par expérience, je me suis aperçu que, bien souvent, les gens déroule un processus sans mesurer pleinement les conséquences de certaines actions et de là on peut comprendre ce qui entraîne les problèmes.
Bon tout cela ne nous mènera peut être à rien mais au moins nous aurons essayer...
A bientôt
Chris
Salut Chris
C'est ca le probleme, quand je clique droit sur V3 le calendrier n'apparait pas
donc je ne peux aller plus loin
merci
Il y a surement un probleme
meme mon autre fichier que tu m'as peaufiner ne voit plus le calendrier
je suis perdu..... le voici sans le calendrier
Désolé mais chez moi, le fichier que tu viens de m'envoyer fonctionne très bien !!
Je ne sais pas ce que tu as comme installation mais cela ne semble pas être au top. Tu ferais bien de t'adresser à un professionnel sur place pour qu'il t'arrange tout cela.
En attendant tu n'as pas répondu à toutes mes questions.
Si tu y réponds, je veux bien encore essayé de t'aider mais je pense que cela vaudrait mieux que tu fasses vérifier ton installation.
Si j'ai bien compris, tu viens d'installer Excel 2016. Avais tu enlever de ton ordinateur ta précédente version ? Peut-être as tu des restes de l'ancienne version qui viennent perturber le bon fonctionnement.
Bonne chance en tous cas
Chris
Merci j'essaie de trouver mon probleme avec Excel et ensuite je pourrai repondre a tes questions et suivre pas a pas ta démarche proposée
Merci
Martin
Tu m'as peaufiné 2 fichiers avec calendrier
le premier http://www.cjoint.com/c/GLdmAesfBju fonctionne tres bien
et le deuxieme http://www.cjoint.com/c/GLdmBjhsMFu ne fonctionne pas
ce probleme est apparu voila seuelement 2 jours.
j'ai rien touché ou modifié dans mon ordinateur
j'avais essayé Excel 2013 la semaine derniere
mais je l'ai désinstallé correctement pour ensuite réinstaller 2016
C'est bizarre que l'un soit correcte et l'autre non
merci encore Chris
Martin
Je viens de comprendre quelque chose
j'ouvre mon fichier qui fonctionne, j'en fait une copie et la nomme fichier_2.
j'enregistre ce fichier et je l'ouvre a nouveau et la ca ne fonctionne plus
Je suis désespéré
Martin
Hum ! tu es un cas...
Je viens de faire la même manœuvre chez moi et je n'ai pas de soucis.
Quand tu sauves ton fichier, comment fais tu ? Expliques pas à pas ce que tu fais.
Respectes tu bien l'extension qui doit impérativement être .XLSM ?
C'est manifestement là où se situe le problème
Maintenant, encore une fois, cela devient une question de principe de vouloir comprendre, car honnêtement ce calendrier n'est pas vraiment très utile :
le temps de cliquer droit ; de régler le mois et de cliquer sur le jour, je suis certain que tu as taper la date au moins aussi vite (tu sais que quand tu encodes une date de l'année dans Excel, tu n'es pas obligé de taper l'année : 4/12 et ENTREE suffit Excel ajoute automatiquement l'année 2017.
On peut aussi ajouter facilement des contrôles de validité de date pour fiabiliser l'encodage comme par exemple si ce n'est pas un lundi : refus.
Enfin à toi de voir, je sais que cela fait "fun" de voir apparaître un calendrier mais est ce efficace ??
A te lire pour la suite du feuilleton (nous en sommes à l'épisode 47... nous battons tous les records)
Chris
Quand j'enregistre mes fichiers, c'est bien en XLSM
Mais ca ne fonctionne toujours pas
Par contre J'Ai trouvé un petit logiciel (Pop-Up Calendar) qui fait aussi bien le travail.
Donc j'abandonne le projet pour aller plus loin.
Merci encore Chris pour toute ton aide
Martin
Bonjour, encore un souci avec mon calendrier
Pour Pop-up calendar, que j'avais trouvé, j'en suis rendu a la fin de la periode d'évaluation et je crois pas que j'ai envi de continuer a L'utiliser.
Par contre , mon fichier arrangé par Chris voila 1-2 mois me cause encore des problemes
En V3 , J'ai une macro pour un calendrier qui apparait.
Lorsque je clique sur une date, ce n'est pas la bonne qui apparait
par exemple
le 8 janvier (8/01) me donne le 1 aout (1/08)
le 9 janvier (9/01) me donne le 1 septembre (1/10)
quelqu'un peut m'aider
Je sauvegarde vraiment en .XLSM
voici le fichier
merci
https://www.cjoint.com/c/HAivByNPASj