CTRLer l'affichage d'une UsF à l'initialisation

Le
PAN GOT
Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
isabelle
Le #20110371
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :
Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick





michdenis
Le #20110821
Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :
Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick





isabelle
Le #20110901
bonjour Denis,

ça ne fonctionne pas sur xl2002, j'ai également tester exit sub sans
succes,

isabelle

michdenis a écrit :
Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :

Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick








papou
Le #20110881
Bonjour Isabelle ;-)
Il est peut-être utile de signaler que l'instruction "End" arrêtera toute
l'exécution du code ?
Donc si notre utilisateur veut afficher, un message d'alerte par exemple, il
faudra qu'il le positionne avant l'instruction End.
Private Sub UserForm_Initialize()
If MonControle = True Then
Msgbox "J'arrête de bosser !"
End
End If
End Sub

Cordialement
Pascal

"isabelle" a écrit dans le message de news:
%
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :
Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je
n'affiche rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick






michdenis
Le #20110871
Qu'est-ce qui ne fonctionne pas ?




"isabelle" a écrit dans le message de groupe de discussion :

bonjour Denis,

ça ne fonctionne pas sur xl2002, j'ai également tester exit sub sans
succes,

isabelle

michdenis a écrit :
Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :

Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick








isabelle
Le #20110851
il y a un erreur d'exécution 400:
feuille déjà affichée; affichage modal impossible

isabelle

michdenis a écrit :
Qu'est-ce qui ne fonctionne pas ?




"isabelle" a écrit dans le message de groupe de discussion :

bonjour Denis,

ça ne fonctionne pas sur xl2002, j'ai également tester exit sub sans
succes,

isabelle

michdenis a écrit :

Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :


Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick











michdenis
Le #20110961
Il doit y avoir une commande qui lance le formulaire et
si tu utilises ceci, pourquoi il y aurait une erreur 400 ?

'------------------------------
sub Test()
If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if
End Sub
'------------------------------


"isabelle" a écrit dans le message de groupe de discussion :

il y a un erreur d'exécution 400:
feuille déjà affichée; affichage modal impossible

isabelle

michdenis a écrit :
Qu'est-ce qui ne fonctionne pas ?




"isabelle" a écrit dans le message de groupe de discussion :

bonjour Denis,

ça ne fonctionne pas sur xl2002, j'ai également tester exit sub sans
succes,

isabelle

michdenis a écrit :

Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :


Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick











isabelle
Le #20110941
de cette facon, oui, mais ce n'est pas à l'initialisation mais avant
celle ci,
le demandeur saura nous dire pourquoi il a insisté sur ce, dans sa demande,

isabelle

michdenis a écrit :
Il doit y avoir une commande qui lance le formulaire et
si tu utilises ceci, pourquoi il y aurait une erreur 400 ?

'------------------------------
sub Test()
If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if
End Sub
'------------------------------


"isabelle" a écrit dans le message de groupe de discussion :

il y a un erreur d'exécution 400:
feuille déjà affichée; affichage modal impossible

isabelle

michdenis a écrit :

Qu'est-ce qui ne fonctionne pas ?




"isabelle" a écrit dans le message de groupe de discussion :

bonjour Denis,

ça ne fonctionne pas sur xl2002, j'ai également tester exit sub sans
succes,

isabelle

michdenis a écrit :


Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :



Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick














michdenis
Le #20111061
Si on met à commande à l'initialisation du formulaire,
comme ce dernier n'existe pas encore, il est difficile de
l'interpeler pour lui dire de se fermer !



"isabelle" a écrit dans le message de groupe de discussion :

de cette facon, oui, mais ce n'est pas à l'initialisation mais avant
celle ci,
le demandeur saura nous dire pourquoi il a insisté sur ce, dans sa demande,

isabelle

michdenis a écrit :
Il doit y avoir une commande qui lance le formulaire et
si tu utilises ceci, pourquoi il y aurait une erreur 400 ?

'------------------------------
sub Test()
If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if
End Sub
'------------------------------


"isabelle" a écrit dans le message de groupe de discussion :

il y a un erreur d'exécution 400:
feuille déjà affichée; affichage modal impossible

isabelle

michdenis a écrit :

Qu'est-ce qui ne fonctionne pas ?




"isabelle" a écrit dans le message de groupe de discussion :

bonjour Denis,

ça ne fonctionne pas sur xl2002, j'ai également tester exit sub sans
succes,

isabelle

michdenis a écrit :


Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :



Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick














PAN GOT
Le #20112891
Bonjour,
pour etre precis, j'ai un bouton de commande sur ma feuille qui me permet de
lancer ce formulaire.
C'est donc à l'initialisation de la feuille que je fait une boucle de ctrl
et c'est seulement apres cette boucle que je recupere des info que je place
dans une lisbox pour le choix de l'utilisateur. si il 'y a pas de choix
possible parce qu'il n'y en a 1, je voulais lancer le traitement directement
sans le formulaire.
J'ai essayé 'exit sub' mais ça ne marche pas. Le formulaire s'affiche quand
même. J'ai bypasser le probleme en utilisant une multipage ce qui me permet
de mettre un message "Traitement terminé" avec un bouton OK ou ma listbox.
Mais je ne trouve pas çà terrible.
Je vais essayer les deux solutions.
Merci et bonne soirée


"michdenis"
Si on met à commande à l'initialisation du formulaire,
comme ce dernier n'existe pas encore, il est difficile de
l'interpeler pour lui dire de se fermer !



"isabelle" a écrit dans le message de groupe de discussion :

de cette facon, oui, mais ce n'est pas à l'initialisation mais avant
celle ci,
le demandeur saura nous dire pourquoi il a insisté sur ce, dans sa
demande,

isabelle

michdenis a écrit :
Il doit y avoir une commande qui lance le formulaire et
si tu utilises ceci, pourquoi il y aurait une erreur 400 ?

'------------------------------
sub Test()
If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if
End Sub
'------------------------------


"isabelle" a écrit dans le message de groupe de discussion :

il y a un erreur d'exécution 400:
feuille déjà affichée; affichage modal impossible

isabelle

michdenis a écrit :

Qu'est-ce qui ne fonctionne pas ?




"isabelle" a écrit dans le message de groupe de discussion :

bonjour Denis,

ça ne fonctionne pas sur xl2002, j'ai également tester exit sub sans
succes,

isabelle

michdenis a écrit :


Bonjour Isabelle,

La commande "End" réinitialise toutes les variables.
C'est un peu extrême pour empêcher un formulaire de
s'afficher.
Pourquoi ne pas mettre la condition avant l'affichage du formulaire :

If Sheets("Feuil1").Range("A1") <> 1 then
Userform1.Show 0
end if




"isabelle" a écrit dans le message de groupe de discussion :
#
bonjour Pan,

par exemple :

Private Sub UserForm_Initialize()
If Sheets("Feuil1").Range("A1") = 1 Then End
End Sub

isabelle

PAN GOT a écrit :



Bonjour,
Ma question peut paraître bizarre mais je voudrait afficher ou non une
UserForm en fonction d'un contrôle que j'effectue lors de son
initialisation. Si une condition n'est pas remplis, je sors et je
n'affiche
rien.
Quelqu'un aurait une idée sur ça?
Merci d'avance.
Patrick
















Publicité
Poster une réponse
Anonyme