collection fausse boite de dialogue (Patricktoulon) episode 1 un vrai faux calendrier

collection fausse boite de dialogue (Patricktoulon) episode 1 un vrai faux calendrier v4.1.4

patricktoulon

XLDnaute Barbatruc
patricktoulon a posté une nouvelle ressource :

collection fausse boite de dialogue (Patricktoulon) episode 1 un vrai faux calendrier - un calendrier valable pour tout version excel

Bonjour a tous voici ma dernière version de mon calendrier all excel version
utilisable pour les cells et les controls dans un userform
affichage mode français ou US

elle fait parti de ma collection de pseudo boite de dialog perso avec des userform
En savoir plus sur cette ressource...
 

Fichiers joints

Dernière édition:

patricktoulon

XLDnaute Barbatruc
patricktoulon a mis à jour collection fausse boite de dialogue (Patricktoulon) episode 1 un vrai faux calendrier avec une nouvelle version :

modele entièrement repensé

Version.0
bonjour a tous et voila un virement a 190°
- code entièrement repensé
-design un peu différent,New!!!
-méthode utilisée inedites New!!!
-méthode d'apel lineaire New!!!
-utilisation de classe interne (intra userform)(pas de module classe)
-code de positionnement repensé(prise en charge des figé,freezepanes,etc...)New!!!
-auto fermeture sans perte de la donnée
-définition des jours fériés dans les controltiptext
-etc..

2 forme d’appel linéaire
  1. par un object range /...
Lire la suite de cette mise à jour...
 

patricktoulon

XLDnaute Barbatruc

Fichiers joints

Dernière édition:

ChTi160

XLDnaute Barbatruc
Bonjour Patrick

Sans prétention aucune lol
j'ai pensé a cette adaptation
j'ai mis le Min du SpinButton des mois à 0 et le Max à 13
on peut ainsi Faire défiler les mois en avant et en arriéré avec passage a l’année suivante ou précédente, à voir !
VB:
'événement combo et spinbutton(month/year)
Private Sub SpB_Mois_Change()
  Select Case SpB_Mois
         Case SpB_Mois.Min ' 0
SpB_Annees = SpB_Annees - 1 'On enlève une année
SpB_Mois.Value = 12  'On mets le Mois a 12 Décembre
Cbmonth.ListIndex = SpB_Mois - 1 'On ajuste le mois
         Case SpB_Mois.Max '13 après décembre
SpB_Mois.Value = 1 'On mets le Mois a 1 Janvier
Cbmonth.ListIndex = SpB_Mois - 1 'On ajuste le mois
SpB_Annees = SpB_Annees + 1
         Case Else
Cbmonth.ListIndex = SpB_Mois - 1 'On ajuste le mois
  End Select
End Sub
Private Sub SpB_Annees_Change()
    Cbyear.Value = SpB_Annees.Value 'On ajuste l'année
    Cbmonth.ListIndex = IIf(SpB_Annees.Value = Year(Date), Month(Date) - 1, 0) 'On affiche le Mois selon l'année
    SpB_Mois.Value = Cbmonth.ListIndex + 1 'On ajuste au mois
End Sub
As tu vu mon message concernant la Boucle sans module de Classe
jean marie
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Bonjour tout le monde,

Beau travail !

juste un oubli qui cause une erreur de variable non définie, il manque Dim T# ici '<<<<<<<

'appel avec coordonnée et region
Public Function ShowTopLeft(Optional Side As Long = 2, Optional top As Long = 0, Optional optionRegionale As Long = 1000)
Dim Forme, T# '<<<<<<<<<<

par contre je vais étudier l'histoire du mappage des boutons jours dans Clavier() avec WithEvents

bonne journée.
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
bonjour,

effectivement j'ai vu ça et ça raccourci pas mal les codes !
mais tout en étant efficace, c'est tout de même assez perturbant quand on ne maîtrise pas ce type de déroulement !?
par exemple à chaque instruction il faut mettre Calandar. ... et avec les variables c'est pas simple car certaines ne sont plus reconnu !?
tu vas me répondre qu'il n'y en a plus besoin, mais franchement ce n'est pas évident du tout.

par curiosité j'ai modifié sur le mien et ça fonctionnait, mais de la manière que je l'utilise ça ne me convient pas du tout,
car il faut savoir que j'ai apporté beaucoup de modifications suite à des demandes du forum, des constantes modifiables
ce qui a allongé passablement le code au fil du temps, mais c'est aussi ce qui fait sa souplesse
exemple:
Const AffMoisPrecedentSuivant = True ' False)aff.mois sélectionné True)avec précédent+suivant
Const NoDuPremJourSem% = 1 ' 1)Lundi à 7)Dimanche
Const SensDuCalendrier$ = ">" ' >)Gauche>Droite(classique) <)Gauche<Droite
Const PlacementCalendrier% = 2 ' 1)à droite 2)en dessous de l'objet
Const FormatDateUserSurCell = False ' True)format ci-dessous appliqué sur cellule False)Non
Const FormatDateUser$ = "dd/mm/yyyy" ' "dd/mm/yyyy" ou "yyyy/mm/dd"
Const PaysJourFeries$ = "France" ' choix du pays pour les jours fériés
'Const PaysJourFeries$ = "Belgique" '
'Const PaysJourFeries$ = "Quebec" '
'Const PaysJourFeries$ = "Genève" '
'Const PaysJourFeries$ = "Canada" '

et aussi avec dates min/maxi à saisir, le calendrier limite le choix selon ces deux dates !
et tout ça serait perdu !
en tout cas chapeau, pour saisir une date sans plus de complication ça peut suffire !
 

patricktoulon

XLDnaute Barbatruc
re
Bonjour Roland
c'est normal qu'il soit non reconnu

je répète ce que je t'ai déjà dit il me semble

quand tu est dans l’événement click du bouton ou fonction showx ou fonction appelé par celle ci tu est dans une instance du module classe calendar EXACTEMENT de la même manière qu'avec un module classe

ailleurs tu est dans l'userform calendar

c'est la nuance qu'il faut saisir
c'est juste une histoire d'instance de module a saisir ;)


je rappelle que le projet était de faire un calendrier complètement autonome et (transportable, importable,exportable)sans module ou classe attaché

dans les modules classe tu utilise une variable pour ton userform la j'utilise le nom mais je pourrais aussi utiliser une variable j'ai pensé laissé comme ca pour une compréhension plus facile

après pour date min/max je sais pas de quoi tu parle tu mélange ton projet et le mien je crois ;)
mon projet était de remplacer le control calendrier tel que ceux natif pour les versions excel 32 bits
je pense avoir atteint mon but ;)

pour ce qui est des choix
le placement bon ca je vais pas en parler tu a participé a la discussion il suffit d'injecter l'object ou il doit être placé ( cellule ou control)
pour le format j'ai fait plus simple et c'est fonctionel c'est l'argument optionregional 0 ou 1 ou 2 qui sont les index de application.xldateorder (US,FR,CA)QUE GERE PARFAITEMENT EXCEL

pour les jours fériés il sont justement choisis en fonction de l'argument option_regionale 0 ou 1 ou 2

il sera facile a quiconque qui comprendra bien mon module userform d'ajouter un pay pour les jour fériés

je te laisse encore un peu le décortiquer tu n'a pas tout saisi visiblement ;)
 
Dernière édition:

arthour973

XLDnaute Barbatruc
Supporter XLD
Bonjour Patrick, Bonjour Roland, Bonjour le Forum,

Actuellement, j'utilise pour mes fichiers de prospection le calendrier de Roland_M (encore un grand merci à toi pour ça;)).
Ce calendrier fonctionne parfaitement.
Mais, pour moi toujours novice en vba, il est compliqué. D'ailleurs Roland doit se souvenir (et pour longtemps LOL), de toute la difficulté
que j'ai eu à le faire fonctionner sur mes fichiers. Ce n'est que grâce à sa technicité, sa patience et sa gentillesse que j'ai pu m'en servir.
J'ai bcp de difficultés à le modifier quand le besoin s'en fait sentir.
Notamment quand je dois modifier le code pour qu'il soit opérationnel sur une nouvelle feuille ou d'une façon différente.
Toutefois, il est installé sur mes fichiers, il fonctionne et il va y rester LOL.

J'ai de nouveaux fichiers sur lesquels je dois installer un calendrier sur plusieurs feuilles.
Me souvenant (moi-aussi LOL) des difficultés rencontrées précédemment, je me suis mis en recherche d'un nouveau calendrier du niveau de celui de Roland mais plussssss à ma portée.

Et voilà que Patrick s'y met et nous fait lui aussi un super calendrier :)
Patrick, ton calendrier m'intéresse car plusss à ma portée ....
Toutefois, je me suis permis d'y apporter un ajout que j'ai importé du calendrier de Roland , Je lui ai demandé l'autorisation au préalable :)
Cela concerne la saisie des heures et je pense (en espérant que tu penseras comme moi), que c'est un complément intéressant pour ton calendrier.
Je joins le fichier test qui contient 3 feuilles :
- Cal_Patrick,
- Cal_lionel,
- Demandes de modifs,

Ce serait super si tu pouvais répondre à mes demandes :)
Merci Patrick :)
Encore merci Roland pour ton calendrier qui m'a permis de travailler depuis plusieurs années et que je garde dans mes fichiers actuels.
Bonne fin de journée à toutes et à tous,
Amicalement,
lionel,
 

Fichiers joints

Roland_M

XLDnaute Barbatruc
Bonjour,

Je ne comprend toujours pas ce qu'il y a de si compliqué pour saisir une date sur cellule !?

On passe au calendrier la Date déjà présente sur la cellule sinon c'est la date en cours. C'est simple, non !?
fmSTD_Calendrier.SelectDateCELL1 IIf(IsDate(Target), Target, Date)
 
Dernière édition:

Roland_M

XLDnaute Barbatruc
Bonsoir,

j'ai tout de même jeté un oeil, et ce que je comprend pas c'est que mon calendrier permet 90% de tes souhaits
et qu'il possible de régler les 10% restant !

et toi tu veux en changer car c'est trop compliqué pour toi !?
ce n'est pas compliqué c'est simplement qu'il y a des options qui permettent cette souplesse et toi tu n'y piges rien !


Alors . . .

Saisie heure du RdV:
? En remplacement du clic sur "OK", est-il possible clic sur la "X" pour sortir avec validation la saisie heure ?
> c'est fait, mais je ne trouve pas très logique de cliquer sur Annuler pour confirmer !? (c'est une histoire belge)

? Je n'ai pas réussi à faire en sorte, que comme ton calendrier, l'UF des heures s'affiche près de la cellule cliquée
> c'est fait

Calendrier:
? Retour direct sur "aujourd'hui" si déplacement loin dans le calendrier
> mon calendrier effectue déjà cela

? Sélection date à l'affichage du calendrier, à l'ouverture, le calendrier se positionne sur aujourd'hui
il permet de sélectionner une date dès le 1er jour du mois affiché
> mon calendrier effectue déjà cela, sauf quand il y a déjà une date dans la cellule c'est elle qui prime !

? J'aurais besoin d'avoir un blocage "par défaut", ne permettant pas de sélectionner une date avant aujourd'hui
> mon calendrier effectue cela, il suffit de se servir de Date Min/Max

? Dans notre boulot, nous avons une particularité qui nous oblige à sélectionner des dates "avant aujourd'hui
Selon plage de cellules j'aurais besoin de pouvoir sélectionner des dates "avant aujourd'hui"
> alors là il va falloir que tu dises quelles sont les endroits où il faut une date libre et où il faut une date min/max !?

? Dans mon cas, nous savons qu'un RdV au-delà de 2 mois ne fonctionne jamais. Ce n'est donc que du temps perdu de prendre un RdV au-delà.
J'aurais besoin de pouvoir paramétrer de la Date Mini à la Date Maxi "cliquable" : selon plage de cellules
> possible Date Min/Max +60 pour avoir les deux mois . . . voir la question précédente !?


Je finirai cela d'ici qq jours car en ce moment je suis malade !

pour l'instant il me faudra les réponses à ceci:
que tu dises quelles sont les endroits où il faut une date libre et où il faut une date min/max !?
noms des feuilles et les champs !? j'espère qu'il n'y en pas une quantité trop importantes !?
 

arthour973

XLDnaute Barbatruc
Supporter XLD
Ha ! Roland,
Tu es super !!! comme toujours.
C'est pas urgent.
J'espèce que ce n'est pas grave et je te souhaite un rapide rétablissement.
Je réponds à tes question dès que possible :)
lionel,
 

patricktoulon

XLDnaute Barbatruc
re
Bonjour
Oui Staple1600 il serait sympa de respecter ce point a l'avenir: n'est ce pas Arthour973 ;)
dans tout les cas je ne répondrais pas a une question qui ne concerne pas mon calendar
il serait souhaitable que Rolland face la même chose afin que l'on puisse différencier les deux applicatifs

dans le forum cloburk a ouvert une discussion car il avait des problèmes ce qui m'a permis de faire une petite mise a jour

Arthour pourquoi ne fait tu pas pareil ??
 

Roland_M

XLDnaute Barbatruc
Bonjour tout le monde,

Salut les gars ! vous avez parfaitement raison !

Le problème c'est que Lionel à l'époque avait choisi mon Calendar qui pouvait être, si je puis dire, personnalisable.
Puis il veut changer en prenant celui de Patrick plus léger et plus simple évidemment !
Le Calendar de Patrick c'est le comportement ni plus ni moins que le Calendar Excel !

Et il demande maintenant à Patrick de remettre ce qui était avec le mien !? c'est vrai que j'ai pas compris !?
Bien entendu c'est un peu plus lourd à cause de toutes les options qui ont été rajoutées au fil des demandes du forum
C'est le prix à payer pour avoir cette souplesse.

Et du coup je luis ai proposé de lui faire les adaptations c'est tout !
Pour maintenant on va rester là le temps que je lui fasse le travail !

Je vous demande un peu de compréhension et merci à vous.
Bonne journée.
 

patricktoulon

XLDnaute Barbatruc
Bonjour Rolland
Le Calendar de Patrick c'est le comportement ni plus ni moins que le Calendar Excel !
heu..c'est le but recherché fait pour palier au probleme 64 bits et les controls calendrier

Pour maintenant on va rester là le temps que je lui fasse le travail !
non non !! et non !!;)
on est pas dans le forum on est dans la discusion en relation avec la ressource
merci de ta compréhension Rolland
et fait moi une ressource avec ton projet et explication que je puisse voir ( si tu a le temps)
il me semble que tu l'a puisque tu répond a Arthour ;)

ce fils ne doit relater que les problèmes ou coquille éventuellement constatés dans mon calendar
( c'est ce qui m'a permis de l'amener a la version 4.1.1)
et les idées d'amélioration (je suis pas fermé) a condition que ça reste dans la ligne que j'ai fixée a savoir rendre le plus simple l'utilisation et la souplesse et que ca reste ce que c'est sensé être a savoir un simple control calendrier permettant de choisir une date toute autre considération n'a pas a rentrer dans son principe et est hors contexte
je n'ai nullement l'intention de faire de ce calendrier un applicatif bourré d'option CE N'EST PAS UN INTERFACE UTILISATEUR c'est une boite de dialog modal responsive (point barre) ,exactement le comportement d'un msgbox

il est sensé s'intégrer simplement en le copiant(export/import)( sans aucune modification du moindre caractère) dans le fichier de l'utilisateur (tu parlais de souplesse ;) )

j'ai développé un control calendrier pour tout utilisateurs pas une application pour UN!! utilisateur ;)

je suis impatient de te lire dans les ressources ;)
 
Dernière édition:

Créez un compte ou connectez vous pour répondre

Vous devez être membre afin de pouvoir répondre ici

Créer un compte

Créez un compte Excel Downloads. C'est simple!

Connexion

Vous avez déjà un compte? Connectez vous ici.

Haut Bas