IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

IHM Discussion :

[formulaire][vba] garder ouvert mais non visible


Sujet :

IHM

  1. #1
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut [formulaire][vba] garder ouvert mais non visible
    Bonjour à tous, je suis désolée de vous solliciter à nouveau mais ça concerne de la programmation et suis pas assez douée pour !

    J'ai un formulaire de saisie d'opération. Par un bouton sur ce form', j'en ouvre un autre qui me permet de créer un lot de plante. Sur ce dernier formulaire, un bouton me permet d'enregistrer les données, fermer le formulaire et retourner au formulaire "opération".

    Cependant, je ne peux pas valider l'opération car les infos saisies dans le formulaire "Lot" sont (façon de parler) perdues et pas enregistrées dans le formulaire "opération".

    Je pense donc que je dois garder ouvert mon formulaire "lot" pour y récupérer les données mais je ne veux pas que l'utilisateur voit le formulaire ouvert.

    Savez-vous comment régler mon problème ?? Ou auriez-vous au moins une piste ? please...

    Merci de vos contributions

    PS : Un message d'erreur "impossible d'atteindre l'enregistrement spécifié" s'affiche lorsque je veux valider le formulaire "opération" (qui doit permettre d'enregistrer l'opération). D'ou ma supposition de garder "lot" ouvert.

  2. #2
    Membre régulier
    Inscrit en
    Avril 2007
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 145
    Points : 75
    Points
    75
    Par défaut
    Tu peux éventuellement réduire le premier formulaire !

  3. #3
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut
    que veux tu dire par "réduire le formulaire" ?

  4. #4
    Invité
    Invité(e)
    Par défaut
    Bonjour

    Effectivement ton premier formulaire doit être chargé pour que tu puisses récupérere des données.

    Il y'a plusieurs solutions

    1 - Rendre ton formulaire invisible (mettre la propriété visible à false)
    2 - Ouvrir ton deuxième formulaire en passant des paramètres (voir la syntaxe de DoCmd.OpenForm - c'est le dernier argument), qui tu récupères dans le deuxième formulaire avec l'instruction OpenArgs.
    3 - Mettre tes données dans des variables publiques, tu fermes le premier formulaire, tu ouvres le deuxième et tu récupéres tes données.

    Je pense que cela devrait t'aider.

    Starec

  5. #5
    Membre régulier
    Inscrit en
    Avril 2007
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 145
    Points : 75
    Points
    75
    Par défaut
    Ce que propose Starec évidemment semble beaucoup mieux
    Moi pour simplifier et aussi parce que je ne suis pas très douée, je pensais à réduire le formulaire. Dès que tu ouvres le 2e formulaire, le 1er se réduit en bas à gauche de ta page. Bon par contre, il est facile de le réouvrir quand on veut!
    Essaie ce qu'à dit Starec !

  6. #6
    Membre confirmé Avatar de timoth
    Homme Profil pro
    Responsable Outils Digitaux
    Inscrit en
    Octobre 2005
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Responsable Outils Digitaux

    Informations forums :
    Inscription : Octobre 2005
    Messages : 479
    Points : 474
    Points
    474
    Par défaut
    Je comprends pas trop le souci avec tes données perdues, mais si tu souhaites cacher un formulaire operation, tu peux utiliser la commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms("operation").visible=False
    Attention, si ton formulaire operation est un sous formulaire de main, la commande est différente:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms("main").form("operation").visible=False
    Voila voila

  7. #7
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut
    Merci pour vos réponses à tous les 3 !

    Timoth, le problème c'est pas de cacher le formulaire "opération" mais le formulaire "lot".

    Je teste la solution de Starec et vous tiens au courant !

  8. #8
    Membre régulier
    Inscrit en
    Avril 2007
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 145
    Points : 75
    Points
    75
    Par défaut
    Citation Envoyé par mystikgirl30
    Timoth, le problème c'est pas de cacher le formulaire "opération" mais le formulaire "lot".
    Ca ne change rien, tu changes juste le nom du formulaires

  9. #9
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut
    Désolée encore une question !!

    Je déclare les variables publiques dans un nouveau module ?? Parce qu'en fait j'ai pas de module pour mes formulaires.

  10. #10
    Membre régulier
    Inscrit en
    Avril 2007
    Messages
    145
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 145
    Points : 75
    Points
    75
    Par défaut
    Je pense que tu peux rajouter le code avec celui du bouton qui ferme le formulaire

  11. #11
    Invité
    Invité(e)
    Par défaut
    Re

    Oui, il faut que tu crées un module pour que les variables soient publiques.

    As-tu essayé la première solution ?

    Starec

  12. #12
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut
    En fait la question c'est : est ce qu'une variable déclarée dans un formulaire est utilisable dans un autre formulaire ?

  13. #13
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut
    Oui mais ne résout pas le problème. Je vais m'attaquer aux variables publiques...

  14. #14
    Invité
    Invité(e)
    Par défaut
    Re

    Oui je n'arrive pas à le faire fonctionner, bizarre, il me semble que j'avais fait quelque chose de similaire (il faut que je regarde mes archives).

    Déclare tes variables dans un module.

    Starec

  15. #15
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut
    Vous allez finir par croire que je suis vraiment pas dégourdie mais comment je fais lorsque j'ai attribué une valeur à la variable publique ? Je m'en sers directement dans la programmation liée au formulaire ??

  16. #16
    Expert éminent
    Avatar de Lou Pitchoun
    Profil pro
    Inscrit en
    Février 2005
    Messages
    5 038
    Détails du profil
    Informations personnelles :
    Âge : 46
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations forums :
    Inscription : Février 2005
    Messages : 5 038
    Points : 8 268
    Points
    8 268
    Par défaut
    Salut,

    Oui.
    Elle est publique : donc tu peux t'en servir n'importe où.

  17. #17
    Membre confirmé Avatar de timoth
    Homme Profil pro
    Responsable Outils Digitaux
    Inscrit en
    Octobre 2005
    Messages
    479
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Responsable Outils Digitaux

    Informations forums :
    Inscription : Octobre 2005
    Messages : 479
    Points : 474
    Points
    474
    Par défaut
    Je crois que je suis d'accord avec Melhiril, tu peux changer le nom entre les guillemets.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms("lot").visible=False
    Mais la solution de Starec est plus intéressante, cacher le formulaire est un peu du bidouillage!

  18. #18
    Invité
    Invité(e)
    Par défaut
    Re

    Bon je viens de faire un test, cela m'agaçais :

    1 - Création de deux formulaires : formulaire1 et formulaire2
    2 - Sur formulaire1 tu mets une textbox : TexteBoxF1, puis tu mets un bouton cmdOuvrir
    3 - Sur formulaire2 tu mets une textbox : TexteBoxF2, dedans tu écris le code suivant dans la propriété SourceContrôle)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    =[Formulaires]![Formulaire1]![TextBoxF1]
    4 - Sur le bouton du formulaire1 tu mets le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DoCmd.OpenForm "Formulaire2"
    5 - Sur l'évènement Open du formulaire2 tu mets
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Forms!Formulaire1.Visible = False
    tu enregistres le tout

    1 - Tu ouvres formulaire1
    2 - Tu saisies du texte dans la textebox
    3 - Tu cliques sur le bouton
    4 - Formulaire2 va s'ouvrir avec le texte et formulaire1 se ferme

    Je savais bien que c'était possible

    Il ne faudra pas à la fin oublier de fermer formulaire1

    Starec

  19. #19
    Membre du Club
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    86
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 86
    Points : 54
    Points
    54
    Par défaut
    J'ai trafiqué des trucs un peu dans tous les sens et tout marche !!!

    J'ai quand même utilisé la méthode de Starec qui est efficace.

    Merci beaucoup, ça me rend un grand service !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 0
    Dernier message: 02/03/2015, 16h55
  2. Réponses: 7
    Dernier message: 11/12/2014, 11h07
  3. [WD14] Volet Ouvert mais pas visible
    Par amartik dans le forum WinDev
    Réponses: 0
    Dernier message: 08/06/2009, 15h55
  4. Messages reçus mais non visible !
    Par laurent35 dans le forum Outlook
    Réponses: 2
    Dernier message: 13/01/2009, 16h29
  5. Disque dur installé mais "non visible"
    Par btdl79 dans le forum Composants
    Réponses: 4
    Dernier message: 12/09/2005, 20h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo