Utilisation du mdf Xlcalendar à la place de l'objet calendar
#1
Débutant XLPages

Inscription: 13/10/2009

Messages: 5

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 13-10-2009 11h40
Bonjour à tous et à toutes,

Un énième bravo pour la réalisation de cet outil.

Mon problème est le suivant, j'utilise dans un fichier Excel pour mes frais professionnels l'objet calendar pour sélectionner les dates, le soucis à priori c'est qu'il faut avoir acces sur son poste pour que ça marche, je ne peux donc pas en faire profiter aux collègues qui ne l'ont pas !

J'aimerai donc pouvoir utiliser le mdf Xlcalendar, mais le problème c'est qu'en sélectionnant une date celle-ci va s'insérer dans la cellule sélectionnée préalablement par l'utilisateur qui peut être n'importe où dans la feuille. Je souhaiterai donc comme l'objet calendar pouvoir récupérer la date sélectionnée par le clique de la souris, ou alors que celle-ci vienne se mettre dans une cellule que j'aurai choisi par programme et non par l'utilisateur.

Merci de votre aide.



Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#2
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 13-10-2009 20h45
Bonsoir Papounet, bienvenue sur XLpages.com et merci du compliment

A vrai dire, je ne comprends pas trop ta demande.

Pour rappel, le mDF XLcalendar peut s'afficher de 4 façons différentes :
1) depuis un bouton présent dans la barre d'outils Excel (qu'il est possible de masquer via les options du XLcalendar).
2) depuis le menu contextuel clic droit des cellules.
3) affichage automatique selon la détection du format de la cellule en cours (option activable/désactivable via les options).
4) par code VBA.

Pour toutes ces façons de faire, consulter l'article dédié "mDF XLcalendar en détail", la FAQ ou certains fils du Forum traitant du sujet.

Mais quelque soit la façon de procéder, il existe un point commun : l'affichage du XLcalendar ne se fait que par action volontaire de l'utilisateur ou du développeur.
Aussi, sauf en cas de mauvaise manipulation (de l'utilisateur ou du développeur), je ne vois pas comment une date pourrait être insérée ailleurs que dans la cellule visée. On peut bien sûr imaginer une macro qui irait récupérer la date insérée à un endroit et la déposer sur une autre cellule ailleurs.... mais je n'en vois vraiment pas l'intérêt.

Cordialement,


Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#3
Débutant XLPages

Inscription: 13/10/2009

Messages: 5

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 13-10-2009 21h48
Merci d'avoir pris en considération ma demande

Je souhaite remplacer l'objet calendar par ton outil pour les raisons que j'ai expliqué (calendar ne marche que si acces est installé).

J'ai déjà lu la documentation en ligne, mais je n'ai pas trouvé ce que je voulais ou j'ai pas compris :p

Y-a-t-il un évènement comme "Private Sub Calendar3_Click()" que je puisse utiliser afin de récupérer la date sélectionnée par l'utilisateur, ce qui me permet par la suite d'alimenter des cellules de la note de frais en automatique comme le n° de la semaine, les jours et dates de la semaine.

Ci-joint le tableau excel pour être plus claire.

Sinon, comment peut-on faire fonctionner l'objet calendar alors qu'on n'a pas Acces d'installé
? en fait j'ai besoin d'un calendrier perpétuel. 

Voilou

Pièce jointe:
xls Remboursement-exemple.xls   [ Taille: 69.00 Ko - Téléchargements: 441 ]
Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#4
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 13-10-2009 22h32
Re,

Voilà qui est plus clair

Ta façon d'utiliser le Calendar est en effet différente de ce que j'imaginais...

Tu trouveras en pièce jointe ton fichier modifié selon ma façon de voir les choses si tu comptes utiliser le mDF XLcalendar.

Ta procédure Calendar3_Click() est ainsi remplacée par ce code :
Private Sub btnXLcalendar_Click()
    Range("T2").Select
    Application.Run ("mDFXLcalShow")
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
Dim D As Date
    If Not Application.Intersect(Target, Range("T2")) Is Nothing Then
        D = Range("T2").Value
        Range("P2").Value = Year(D) & DatePart("ww", D, vbMonday, vbFirstFourDays)
        Range("lundi").Value = DateSerial(Year(D), Month(D), Day(D) - Weekday(D, vbMonday) + 1)
        Range(Choose(Weekday(D, vbMonday), "N6", "N9", "N12", "N15", "N18", "N6", "N6")).Activate
    End If
End 
Evidemment, ce code nécessite l'installation préalable du mDF XLcalendar sur la machine de l'utilisateur.


Inconvénient tourefois par rapport à ta première version : le calendrier n'est plus affiché directement dans la feuille mais remplacé par un bouton.


Par ailleurs, si je peux me permettre et pour ton info, quand tu écrits..
Dim i, j As Integer
... seul "j" est Integer. "i" sera variant.

Il convient d'écrire :
Dim i As Integer, j As Integer

Cordialement,


Edition : le code est corrigé (en rouge ci-dessus). Le code présent dans la pièce jointe ne l'est pas... il convient de rectifier.


Pièce jointe:
zip PourPapounet.zip   [ Taille: 27.10 Ko - Téléchargements: 566 ]
Edité par myDearFriend! le 13/10/2009 23:22:03

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#5
Débutant XLPages

Inscription: 13/10/2009

Messages: 5

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 13-10-2009 22h43
Un très grand merci pour les modifications et le conseil
C'est beaucoup plus condensé ou je devrais optimisé ! je vais essayer de décrypter tout ça.

On reconnait là un grand passionné.

Je ferme le sujet.


Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#6
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 13-10-2009 23h19
Merci à toi Papounet.

Si tu as besoin d'explications supplémentaires, n'hésite pas.

Cela dit, je viens de voir une erreur dans mon code, que je corrige plus haut dans le post :

J'avais écrit :
Range("P2").Value = Year(Date) & DatePart("ww", D, vbMonday, vbFirstFourDays)
Il faut rectifier en :
Range("P2").Value = Year(D) & DatePart("ww", D, vbMonday, vbFirstFourDays)

Bien cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#7
Débutant XLPages

Inscription: 13/10/2009

Messages: 5

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 14-10-2009 23h33
Bonsoir,

J'ai apporté la correction, merci. J'ai même ajouté un format afin que le n° de semaine soit toujours sur 6 caractères.

Il subsiste un problème, il me demande un mot de passe à chaque fois que je click sur le calendrier. J'ai lu le FAQ et je n'ai pas les prog cités d'installés ! As-tu progressé sur ce sujet ? Que puis-je faire pour éviter ça ?

Merci.



Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#8
Webmestre

Inscription: 18/05/2006
De Saône-et-Loire (71)

Messages: 1539

Système d'exploitation:
PC
Version Excel utilisée:
97, 2000, 2002, 2003, 2007, 2010, 2013, 2016 et 365
Posté le : 14-10-2009 23h46
Bonsoir Papounet,

Ah oui, ça c'est un problème en effet...

Désolé, je n'ai pas de solution à ce comportement bizarre d'Excel sous certaines config.
Ce problème apparait même lorsque tu utilises le classeur que j'ai joint plus haut ?
Es-tu sûr que tu n'as pas un autre complément installé qui pourrait donner cette incompatibilité ?

Désolé, je n'ai pas d'autre idée.

Cordialement,

Didier_mDF
Image redimensionnée
Le Webmaster

La réponse vous satisfait ? Merci de revenir solder le sujet en [résolu], voir ce lien
Hors Ligne
Rapport   Haut 

Re: Utilisation du mdf Xlcalendar à la place de l'objet calendar
#9
Débutant XLPages

Inscription: 13/10/2009

Messages: 5

Système d'exploitation:
PC
Version Excel utilisée:
2003
Posté le : 15-10-2009 19h56
Bonsoir,

Le problème a lieu aussi avec le fichier que tu m'as passé. Aussi je n'ai pas d'autres compléments d'installés dans Excel !

C'est étrange, j'ai récemment protégé un source sur Excel et ça n'a pas posé de problème ! Par contre c'est le source complet qui est protégé.

Je ne sais pas où chercher

Cela n'empèche pas le tableau de fonctionner mais bon.


Hors Ligne
Rapport   Haut 


Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

[Recherche avancée]


Qui consulte actuellement ce sujet ?   1 Utilisateur(s) anonymes