Autres toutes version excel tester le calendar en mode modal et non modal sur range ou control dans userform

patricktoulon

XLDnaute Barbatruc
Bonjour a tous
j'ai pris le temps ce matin de voir un peu ce que je pourrais faire pour mon calendar
en effet il m'est souvent venu des demandes quand au fait que quand l'object appelant et fils d'un userform non modal
et effectivement mon calendar qui est en mode responsif(MODAL)(se comporte comme un msgbox) n'est pas compatible forcement
le conflit d'affichage d'un usf modal par dessus un usf non modal est déclenché
j'ai donc ici recommencé tout a zero (c'est une ébauche)mais il est parfaitement fonctionnel
dites moi ce que vous en pensez
on verra après pour les couleurs et les fériés les langue et region et tout le tointoin
merci pour les retours et suggestion a venir
 

Pièces jointes

  • calendar light.xlsm
    34.4 KB · Affichages: 42
Dernière édition:

patricktoulon

XLDnaute Barbatruc
Bonjour a tous
bon allez on teste encore enfin si vous voulez
voila j'ai remis les rapprochement cellule et control sur feuille et sur userfrom
il est donc compatible a nouveau avec
  1. textbox sur feuille en mode modal uniquement et responsif
  2. label sur feuille en mode modal uniquement et responsif
  3. commandbutton sur feuille en mode modal uniquement et responsif
  4. shape sur feuille en mode modal uniquement et responsif
  5. sur range les deux modes et les deux mode multi(single/multi)
  6. textbox,label,commandbutton dans userform dans les deux modes
  7. le rapprochement de l'appelant est effectif dans tout les modes sauf le mode multi bien évidemment
il y a encore des soucis de récupération de la date existante dans l'appelant je cherche pourquoi
pour le moment il démarre au mois en cours

Merci pour les retours
 

Pièces jointes

  • calendar light.xlsm
    63.1 KB · Affichages: 7

ChTi160

XLDnaute Barbatruc
Re
je pense avoir trouvé quelque chose Lol
Dans cette partie de la procédure j'ai rajouté un :" v = ObjX.value" après "placementActivXsheets ObjX"
Code:
  If TypeName(ObjX.Parent) = "Worksheet" Then placementActivXsheets ObjX: v = ObjX.value Else placementUF ObjX: v = ObjX.value
car la variable v n'était pas initialisée et donc la procédure lui affecte la Valeur "Date"
à voir (car si Usine à gaz n'a pas de problème !)
Bonne Journée
Jean marie
 

patricktoulon

XLDnaute Barbatruc
re
oui ça y est j'avais trouvé
j'ai fait autrement
j'instruit V en premier puisque le case finalement ne sert qu'a appeler la fonction de placement et mémoriser V en toute circonstance
VB:
Private Sub UserForm_Activate()
    Dim I&, Dn, v
    Select Case TypeName(ObjX)
    Case "TextBox": If TypeName(ObjX.Parent) = "Worksheet" Then v = ObjX.value: placementActivXsheets ObjX Else placementUF ObjX
    Case "Label", "CommandButton": v = ObjX.Caption: If TypeName(ObjX.Parent) = "Worksheet" Then placementActivXsheets ObjX Else placementUF ObjX:
    Case "Shape": v = ObjX.TextFrame.Characters.Text: placementActivXsheets ObjX:
    Case "Range": v = ObjX.value: placementRange ObjX:
    End Select
 

Dudu2

XLDnaute Barbatruc
Bonjour @patricktoulon,
J'aimerais savoir si tu as le même léger décalage de positionnement que moi par rapport à la grille.
Tous mes anciens modules de positionnement qui étaient corrects affichent maintenant ce léger décalage sur mon nouveau PC windows 10 Home 64 et Excel 64.
1636625880246.png
 

patricktoulon

XLDnaute Barbatruc
Bonjour @Dudu2
mettez Ecx à zéro
les bordures de windows 7 aéro sont plus épaisses que aréro W10 qui ne se vois pas d'ailleurs
ou bloquez la ligne tout simplement
j'ai du faire une erreur dans la bascule avec op ecx avec application.version qui sont les 3 elements determinant le "4" en faisant une addition logique(and) et non mathématique(+)
mais ne le prenez pas pour fini
ne cherchez pas a corrigé des details comme celui là on le fera à la fin
je suis en train de remettre les regions et là c'est coton j'ai 5 modes a assurer maintenant et pas un seul
patience ;)
 

Statistiques des forums

Discussions
315 102
Messages
2 116 225
Membres
112 690
dernier inscrit
noureddinee