• Initiateur de la discussion Initiateur de la discussion bracq
  • Date de début Date de début

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 !

B

bracq

Guest
voici mon pb:
avec un userform je lance un calcul sur une feuille, et une fois termine je dois appuyer sur un CommandButton "Quit" pour pouvoir faire apparaitre cette nvelle feuille de calcul.
1-Comment faire pour pouvoir garder a l ecran mon userform et afficher en meme temps la nvelle feuille?
2-Si 1 fonctionne mon userform sera - t - il encore actif?

merci
 
Salut Bracq et le Forum,

Si tu as XL2000 ou XP, tu peux lancer ton UserForm en Mode Non-Modal (Non Supporté par XL97)

Il suffit de d'ajouter un 0 ou un False à la commande d'ouverture

Private Sub CommandButton1_Click()
UserForm1.Show 0
End Sub

Ensuite tu pourras saisir dans la feuille, ou une autre, en insérer une nouvelle, ou même ouvrir un autre classeur...

Le UserForm, quand à lui sera toujours Visible en Premier plan, mais il ne sera pas actif si tu travaille sur autre chose, cependant les données qu'il aurait calculé en variable sont, quant à elles, tout à fait accessibles.

Bon Appétit
@+Thierry
 
Re Salut

Oui STéphane a raison on peut du Non-Modal apparemment sous 97 sous réserve que cette API fonctionne, je viens de trouver ceci de Stephen Bullen.

C'est une API à mettre en tête du Private Module en question... Je viens d'essayer sous 2000 çà tourne !

A voir sous XL 97...


Option Explicit ' (USERFORM NON-MONDAL sous XL97 De Stephen Bullen)

Private Declare Function FindWindowA Lib "User32" _
(ByVal lpClassName As String, ByVal lpWindowName As String) As Long

Private Declare Function EnableWindow Lib "User32" _
(ByVal hWnd As Long, ByVal bEnable As Long) As Long

Private Declare Function GetWindowLongA Lib "User32" _
(ByVal hWnd As Long, ByVal nIndex As Long) As Long

Private Declare Function SetWindowLongA Lib "User32" _
(ByVal hWnd As Long, ByVal nIndex As Long, _
ByVal dwNewLong As Long) As Long

Private Sub UserForm_Activate()
EnableWindow FindWindowA("XLMAIN", Application.Caption), 1
End Sub

Private Sub UserForm_Initialize()
Dim hWnd As Long
hWnd = FindWindowA(vbNullString, Me.Caption)
SetWindowLongA hWnd, -16, GetWindowLongA(hWnd, -16) Or &H20000
End Sub


Dis nous si celà marche !!!!

Bon Aprèm
@+Thierry
 
>>> DATABASE XLD <<< FIL RECENCEMENT FIL >> 28743 "UserForm Non-Mondal XL97"

Bonjour Bracq, STéphane, et le Forum.


Merci de ta confirmation, cela sera, sans nul doute, d'une très grande utilité pour les Excellien encore sous la Version 97 (Excel/Office 8.0)

Et donc je recommande de recenser ce Fil dans :

==> Lien supprimé

==> Lien supprimé (47k)

==>DATABASE XLD (Utilitaire de MAJ) (15k)

STéphane m'a proposé des améliorations pour cette Database... Bientôt, une new update, je pense....

Bonne Journée
@+Thierry


PS : je suis mort de rire au fait avec l'utilitaire de de Mise A Jour... Il est muni d'un bouton d'Auto-Expédition dans ma BAL... J'en ai recu une bonne Vingtaine en provenance de "Toto", "Test" ou encore de blanck.... Et évidemment non remplis !... (mis à part l'adresse email de l'expéditeur/trice)

Je vous rappelle que ce n'est pas un jouet... Cà s'auto envoi rééllement... Alors SVP évitez de faire des tests inutiles, çà marche !!! (surtout la personne qui me l'a envoyé au moins 5 fois, qui se reconnaitra si elle passe par là...)
Enfin c'est pas grave !
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
38
Affichages
1 K
Réponses
3
Affichages
936
Retour