objet calendrier introuvable sous office 365 VBA

Tophe2

XLDnaute Impliqué
Bonjour Dranreb,

Merci pour ton fichier, le calendrier que j'avais était placé dans un userform avec plusieurs parties et il me permettait de sélectionner une date qui allait se mettre directement sur la 1er ligne vide de la colonne B2, peux tu me dire ce qu'il faut modifier dans ton code pour pouvoir insérer ton calendrier dans l'userform et qu'il puisse faire l'action souhaitée.

bonne journée
Christophe.
 

Dranreb

XLDnaute Barbatruc
Bonjour.
Il n'y a rien à modifier dans mon code, juste l'invoquer comme expliqué dans les commentaires.
Le plus simple c'est de coupler l'UFmCalend à un contrôle de l'UserForm dont vous parlez, comme montré dans l'UserForm1 de démonstration
 

Dranreb

XLDnaute Barbatruc
Vous pouvez par exemple aussi, pour l'emplacement du calendrier, dessiner dans votre UserForm un Cadre nommé au hasard Frame1 et mettre ce code :
VB:
Private Sub UserForm_Activate()
UFmCalend.Posit Frame1, 0, 0
ActiveSheet.[B2].Value = UFmCalend.Saisie
Unload Me
End Sub
 

Tophe2

XLDnaute Impliqué
Bonjour Chti160,
Bonjour Dranreb et merci pour vos propositions,

Mes meilleurs voeux pour cette nouvelle année

Le fichier est celui des salles opératoires (Christophe_14.0 Salle 8) que tu avais réalisé il y a maintenant plusieurs années et au qu'elle j'avais ajouté des userforms pour renseigner la feuille excel et qui est toujours en service :), je le mets en pièce jointe.

je vous souhaite une agréable journée
merci pour votre aide
Christophe
 

Fichiers joints

Dranreb

XLDnaute Barbatruc
Bonjour.
Pourquoi n'est-il pas équipé, du coup, de mon UFmCalend ?
Est-ce vraiment gênant qu'il ne soit affiché, mais où vous voulez, qu'au moment de saisir la date, en cliquant sur la TextBox1 ou le Label17 par exemple ?
 
Dernière édition:

Tophe2

XLDnaute Impliqué
Re,

Il y a différentes personnes qui sont en mesures de renseigner ce fichier, les éléments sélectionnés dans l'userform vont directement renseigner les cellules de la feuilles excel.

On peut être amené à saisir plusieurs interventions avec différentes dates à choisir sur la même journée, l'option calendrier était celle qui me semblait la mieux maintenant si dans le label 17 il peut être possible d'insérer cette possibilité de choix de date oui concernant la textebox 1 elle ne fait que le rappel de la date sélectionné, le problème c'est qu'il faut que le tout puisse fonctionner sous Office 365.

je n'ai pas encore le temps de travailler sur votre proposition car je n'ai pu me connecter uniquement ce jour et j'ai répondu à vos réponses au plus vite.

Merci pour votre aide et vos réponses
Bien cordialement
Christophe.
 

ChTi160

XLDnaute Barbatruc
Bonjour Christophe
Bonjour le Fil (Bernard),le Forum
content de te retrouver!
je me souvient de ce Fichier sur lequel j'ai travaillé .
je pourrait (et il y en a d'autres d'ailleurs sur le Forum )inclure un calendrier maison dans le Userform en lieu et place du Control Calendrier.
a voir ?
jean marie
 

Tophe2

XLDnaute Impliqué
Bonjour Jean Marie,

Je suis également content de te retrouver

Tu vois ton fichier fonctionne toujours (et ce n'est pas le seul :)), je vais regarder la proposition de Dranreb (je suppose Bernard) voir si j'arrive à quelque chose mais il est vrai que mes connaissances n'ont pas forcément évolués et je ne voudrai pas endommager le code existant. c'est bien dommage de ne pas faire évoluer excel en gardant toutes les possibilités car là nous sommes bien embêtés actuellement.

Merci pour ton aide
Bien cordialement
Christophe
 

Dranreb

XLDnaute Barbatruc
Regardez bien les commentaire des méthodes Saisie, Posit et Coupler de l'UFmCalend. Il a aussi une propriété Value qui peut être initialisée avant une instruction MaDate = UFmCalend.Saisie. Pour un couplage il prend comme date initiale la valeur de la propriété par défaut de l'objet couplé (Caption pour un Label, Value pour une TextBox) et naturellement il affecte à cette même propriété la UFmCalend.Value en sortie. Mais si l'utilisateur a bien fixé une date, la UFmCalend.Value devrait encore être disponible après pour une cellule (son type de donné est Date ou Empty, jamais String).
Ne surtout rien modifier dans le code de l'UFmCalend. Si vous aviez besoin de fonctionnalités supplémentaires dites le moi.
C'est au code appelant d'exploiter la valeur renvoyée par UFmCalend.Saisie
 
Dernière édition:

Tophe2

XLDnaute Impliqué
Bonjour Dranreb,
Bonjour le forum,

Merci pour ta réponse je vais essayer de faire tes propositions si besoin je reviendrai vers vous dès que possible.

Bonne Journée
Christophe.
 

Tophe2

XLDnaute Impliqué
Bonjour Dranreb,
Bonjour le Forum,

Je suis en train d'essayer ta 1 er solution qui m semble plus simple pour moi "dessiner dans votre UserForm un Cadre nommé au hasard Frame1" cependant j'ai une erreur 400 j'ai mis en commentaire ton code de l'userform_Activate pour y placer ta proposition mais j'ai une erreur 400 "feuille déjà affichée, affichage modal impossible" je dois certainement ne pas faire un "truc" mais quoi ?? je place mon fichier essai en pièce jointe. est il possible d'avoir de l'aide ou explication sur la correction à apporter pour que le calendrier puisse fonctionner et que je puisse le placer dans le fichier de destination. Puis je avoir une position libre ? faut il pour cela supprimer le code sur la position du calendrier ?

Merci pour votre aide
Bonne Journée
Christophe
 

Fichiers joints

Dranreb

XLDnaute Barbatruc
Bonjour.
J'ai dit de ne rien changer dans l'UFmCalend. Ni l'aspect ni la programmation. C'est une fourniture toute faite à utiliser tel quel.
Je parlais de mettre un cadre dans votre UserForm utilisateur pour y designer l'endroit où vous voulez que l'UFmCalend s'affiche au moment où vous voulez saisir une date, si ça ne vous convient pas qu'il s'affiche juste en dessous du Label ou de la TextBox couplé.
 
Dernière édition:

Tophe2

XLDnaute Impliqué
Bonjour Dranreb

J essai de comprendre ton calendrier mais tes connaissances avancées sont très loin de mon petit niveau donc oui je fais et je peux me tromper le tout c est de pouvoir échanger pour éventuellement évoluer, l objectif pour moi c est de pouvoir utiliser le fichier « registre intervention... » avec un calendrier en lieu et place du précédent et qu il puisse faire la même chose. Vous comprendrez que c est ma demande et pour cela, il est vrai, que j ai besoin de comprendre.

Merci pour votre proposition même si mon niveau en vba est très très loin di votre et c est ça qui est super sur ce forum c est bien l aide que nous pouvons avoir.

Je lis un agacement dans votre message j ai juste besoin d aide ce qui est simple pour certains,dans un domaine de compétence, peut ne pas forcément l être pour d autres mais on essai. Je vais continuer à mettre en place le calendrier dans le fichier de départ car pour moi c est indispensable. J apprécie votre aide et proposition je peux me tromper et mal faire le tout est de persévérer pour y arriver je le redit mon niveau est loin du votre et votre aide précieuse pour moi est très appréciable maintenant il faut que je puisse y arriver j espère pouvoir compter sur votre aide et celle du forum si je venais à ne pas y arriver de suite.

Sincèrement désolé si mes réponses ont pu vous agacer mais mon intérêt est de pouvoir mettre à jour le fichier rapidement pour pouvoir l utiliser dans le cadre de mes fonctions.

Agréable journée
Et j espère à bientôt
Christophe
 

Dranreb

XLDnaute Barbatruc
En lieu et place, ce ne sera peut être pas complètement le cas, dans la mesure où le calendrier que vous aviez apparaissait en permanence dans l'UserForm, tandis que l'UFmCalend ne s'affiche, de lui même lors d'une instruction d'appel UFmCalend.Saisie ou UFmCalent.Coupler, qu'au moment ou on veut saisir une date. Je ne suis pas spécialement agacé, j'en ai seulement déduis que vous n'aviez pas compris ce principe.
 

Tophe2

XLDnaute Impliqué
Re,

Tout d'abord merci pour votre réponse

Le fichier de départ est utilisé par plusieurs personnes (et il était déjà utilisé depuis le travail de chti160) je pensais pouvoir trouver le même calendrier (compatible office 365) ce qui pourrait, pour moi, être simple car la 1er manipulation dans l'userform est de renseigner la date d'intervention à enregistrer et elle va se placer dans les 3 première colonnes (avec différents formats) comme vous avez dû remarquer.

Vous avez bien déduis si la possibilité ci dessus n'est pas envisageable je devrai voir comment faire pour ne pas "trop" changer les manipulations informatique des différentes personnes tout en gardant votre travail.

Pensez vous que je puisse trouver une solution proche du fichier de départ ou je dois réfléchir différemment ?

Merci en tout cas de se pencher sur mon problème
Bonne Journée
Christophe
 

Dranreb

XLDnaute Barbatruc
Alors, si c'est la première manipulation à effectuer dans l'UserForm, mettez le code dans sa UserForm_Activate comme ça le calendrier s'affichera en même temps que l'UserForm, sans avoir de manipulation spéciale à faire, mais il se masquera une fois la date saisie pour pouvoir renseigner les autres contrôles de l'UserForm. Je vous conseille de garder cette date affichée dans un Label que vous n'aurez qu'à coupler à l'UFmCalend.
Mais peut être serez vous plus à l'aise avec un UFmCalend.Posit LeLabel suivi de MaDate = UFmCalend.Saisie("Intervention le :").
 

ChTi160

XLDnaute Barbatruc
Bonjour Christophe
Bonjour le Fil(Bernard) ,le Forum
Une autre approche (non encore finalisée) en mettant le Calendrier directement sur le Userform (voir Image)
Question que doit donner l'action sur une touche Date du calendrier?
jean marie
 

Fichiers joints

Discussions similaires


Haut Bas