Autres [Résolu]Affichage userform sur cellule ou activX version simplifiée a tester

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

patricktoulon

XLDnaute Barbatruc
bonjour suite a deux discussions ressentes j'ai repris ma méthode et je l'ai simplifiée
normalement avec cette méthode on est dédouané du calcul et prise en charge du freezepane et des scrollbars H et V

aucune Api window ou gdi !!
aucun chiffre en dur dans le code !!!
aucun calcul des scroll ou du freezepane
et l'userform est contraint dans le périmètre de la fenêtre application si il le dépasse
vous voulez bien tester
cellule a jumeler
demo2.gif


activx a jumeler

demo3.gif
 

Pièces jointes

Dernière édition:
Mettre la propriété StartUpPosition de l'UserForm1 à 0 - Manual,
Virer les déclarations en tête et la Sub Activate,
Et, pour un positionnement comme je les ai toujours vu dans tes exemples, dans Feuil1 :
VB:
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
   Cancel = True
   With UserForm1
      .Posit Target, 1, 0.9
      .Show 0
    End With
End Sub
 
Bonjour à tous les deux,

sinon j'ai vos routines dans mon classeur d'essai (routines que j'utilise dans mon calendrier avec Application.ScreenUpdaiting =True)
j'ai arrangé à ma sauce sans modifier le fondamentale, adapté le nom des Vars pour m'y retrouver dans les deux routines
j'ai modifier EcX(Patrick), je l'ai supprimé dans le calcul et mis juste au positionnement !
j'ai aussi rajouté cet EcX à la macro Dranreb !

eh bien chez moi, Excel 2007 et Excel 2016 c'est pile poil avec les deux routines ! (c'est EcX à cet endroit qui fait la différence)
je les garde tel quel !
 

Pièces jointes

Dernière édition:
re bonjour a tout les deux
tu devrai pas le mettre a la fin
je t'avais fait cette ligne exprès pour de futures modifs pour éventuellement 365 ,insider etc.... mais tu fait comme tu veux

bon moi j'ai un autre soucis
j'ai un double show avec deux userforms alors que dans le model ou je n'est que le placement userform et obj =textbox je ne l'ai pas
et c'est la même façon de l'utiliser :a savoir ;en tant que boite de dialog et non userform executant
il faut cliquez deux fois sur ok pour fermer???????????????

la c'est le brouillard
 

Pièces jointes

re

pas tout bien compris ! mais ici ce serait pas plutôt Unload !?
Private Sub CommandButton1_Click()
Unload Me
'Me.Hide
End Sub

EDIT:
tu dis:
tu devrai pas le mettre a la fin (EcX)
je t'avais fait cette ligne exprès pour de futures modifs pour éventuellement 365 ,insider etc.... mais tu fait comme tu veux

mais as-tu seulement essayé le classeur que j'ai mis ?
 
oui un variable public ou dans le module appelant
bon ben c'est une enigme j'ai tout mis dans le model simple et pas de problème c'est le fichier lui même qui déconné

pour le fait que tu ne travaille pas comme ca
imagine que tu est besoins d'une date dynamique dans une macro de la meme maniere qu'avec les controls calendrier existants

imagine meme avec ta variable public :
public ladate as date
Code:
 sub test()

ladate = calendrierperso ' la deja ca marche pas mais bon continuons

msgbox datediff("d",ladate,date)'ici cette ligne est exécutée avant même que le userform soit entièrement affiché donc walouh!!

end sub

maintenant regarde mon model et teste la sub dans le module
c'est exactement le même principe que le msgbox qui attend une réponse
avec votre principe il vous serait impossible de le faire a moins de mettre un do/loop d'attente ce qui est proscrit chez moi sachant que le simple fait du mode modal fait tout

bon ben pour l'autre fichier c'a restera une énigme
 

Pièces jointes

re

bon, mais je saisie pas bien le principe dans ton explication !?

avec mon calendrier je saisie date sur cellule, une date depuis un module comme n'importe quel calendar
une simple date dans un userform, une date début avec date fin(avec test suivant deb/fin)
je vois pas ce que je pourrais rajouter de plus !?
 
Bonjour.
Moi je reste persuadé que le plus simple à utiliser c'est ma méthode Saisie qui s'occupe même de Show, ou même ma méthode Coupler qui s'occupe de tout, combinant un Posit et un Saisie en somme. Celà dit, au cas où, il a quand même aussi une propriété Value, et il ne se décharge jamais, sauf par injonction Window ou code extrene, pour qu'elle demeure accessible, mais je n'en ai jamais vraiment eu besoin. Je ne l'utilise que dans la démo puisqu'elle est là.
 
Dernière édition:
Bonjour Dranreb,

tu as très certainement raison !
j'ai bien entendu chargé ton calendrier
mais figures toi que je n'arrive pas l'utiliser pour mes applications,
certaine moi qui a des difficultés à suivre le déroulement !?
surtout que maintenant j'ai un gros problème de mémoire dur dur . . .
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD
Retour