Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > Requêtes et SQL.
Requêtes et SQL. Tout ce qui concerne vos questions sur les requêtes et le SQL sous Access se trouve ici.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 08/09/2011, 11h01   #1
Invité de passage
 
Inscription : septembre 2011
Messages : 12
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 12
Points : 2
Points : 2
Par défaut Formulaire - Liste déroulante

Salut,

Je souhaiterais savoir si il existe une possibilité de :


Via un bouton, on me redirige vers un formulaire de saisie et que dans le menu déroulant du formulaire de saisie, il y a une valeur spécifique qui s'affiche, lié au bouton que j'ai cliqué.

Exemple : je clique sur le bouton 119 - dans mon menu déroulant du formulaire, il y aura déja le numéro 119 affiché.

Je vous remercie d'avance pour votre réponse.

salutations.

bluegone.
bluegone est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 11h15   #2
Membre éclairé
 
Homme Pierre-Jean
Développeur informatique
Inscription : février 2010
Messages : 306
Détails du profil
Informations personnelles :
Nom : Homme Pierre-Jean
Âge : 31
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : février 2010
Messages : 306
Points : 330
Points : 330
Envoyer un message via MSN à paidge
Bonjour,
ça dépend un peu de la conception de ton appli mais une solution consiste à placer ce type de code sur les boutons avec lesquels tu souhaites transmettre une valeur à ton formulaire de saisie :
Code :
1
2
3
Private Sub btn_119_Click()
DoCmd.OpenForm "NomDuFormulaire", acNormal, , , acFormEdit, acWindowNormal, 119
End Sub
Puis à l'ouverture du formulaire tu récupère l'argument :
Code :
1
2
3
Private Sub Form_Load()
Me.MaListeDeroulante = Me.OpenArgs
End Sub
paidge est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 14h39   #3
Invité de passage
 
Inscription : septembre 2011
Messages : 12
Détails du profil
Informations forums :
Inscription : septembre 2011
Messages : 12
Points : 2
Points : 2
Je te remercie beaucoup pour ta réponse.
j'ai essayé ta formule et différente variantes inspiré de ta formulaire mais rien y fait.

Je te donne plus d'expliacation comment est ma base de donnée.

J'ai un formulaire ou l'on peut voir la liste des bureau disponible dans un bâtiment.

Quand je clique sur l'icone 119 une formulaire s'affiche avec divers données comme par ex : le nom de la personne qui occupe le bureau, le nom numéro du pc qui il y a dans le bureau etc....

Sur cette meme page. Je désir mettre un bouton qui me revoie a mon formulaire : attribuer le bureau (si il est vide).

Le formulaire est composé comme suite :

Un menu déroulant ou l'ont peu choisir le numéro du bureau.
Un menu déroulant avec les nom des collaborateur.
et la date d'entrée dans le bureau et la de sortie du bureau.

et je souhaite, quand je clique sur attribuer bureau, quand j'arrive sur mon formulaire et que la liste déroulante (ListeBureau) soit déja rempli avec le bureau du bouton que j'aurai cliqué en l'occurence là (119).

Je ne sais pas si c'est faisable.

Merci encore pour ton aide.
bluegone est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/09/2011, 14h51   #4
Membre éclairé
 
Homme Pierre-Jean
Développeur informatique
Inscription : février 2010
Messages : 306
Détails du profil
Informations personnelles :
Nom : Homme Pierre-Jean
Âge : 31
Localisation : France

Informations professionnelles :
Activité : Développeur informatique
Secteur : Industrie

Informations forums :
Inscription : février 2010
Messages : 306
Points : 330
Points : 330
Envoyer un message via MSN à paidge
Citation:
Envoyé par bluegone
J'ai un formulaire ou l'on peut voir la liste des bureau disponible dans un bâtiment.

Quand je clique sur l'icone 119 une formulaire s'affiche avec divers données comme par ex : le nom de la personne qui occupe le bureau, le nom numéro du pc qui il y a dans le bureau etc....
OK. Donc tu arrives sur un formulaire (je vais l'appeler F_detailsBureau) qui t'affiche les données liées au bureau choisi dans le formulaire précédent (que j'appellerai F_ListeBureaux). Donc F_detailsBureau est basé sur une source de données (table ou une requête) qui doit contenir un champ du type IDbureau de manière à identifier le bureau. Pour notre exemple, IDbureau = 119.

Donc tu rajoutes un bouton (btn_attribuer par exemple) sur F_detailsBureau pour ouvrir un formulaire qu'on appellera F_attribution. Donc sur l'évènement Click de ce bouton, tu mets un code du type :

Code :
1
2
3
4
5
6
Private Sub btn_attribuer_Click()
 
DoCmd.OpenForm "F_attribution", acNormal, , , acFormAdd, acWindowNormal
Forms("F_attribution").MaListeDeroulante = Me.IDbureau
 
End Sub
EDIT : NB: Je viens de changer le paramètre acFormEdit par acFormAdd car tu disais "Si il est vide". Ce qui veut dire que tu vas créer un nouvel enregistrement (dans une table où tu enregistres tes affectations je suppose). Dans ce cas, je ferais en sorte de masquer ce bouton si le bureau est déjà affecté à qqun. Mais le mieux, à mon avis est de se servir de ce bouton pour éditer les affectations. Dans ce cas, j'utiliserais un code dans ce genre-là:
Code :
1
2
3
4
5
6
7
8
9
10
11
Private Sub btn_attribuer_Click()
 
' Si il n'y a pas d'attributions pour ce bureau(ds la table T_attributions), on ajoute et on place la liste deroulante sur le num de bureau choisi
If DCount("*", "T_attributions", "IDbureau=" & Me.IDbureau) Then
    DoCmd.OpenForm "F_attribution", acNormal, , , acFormAdd, acWindowNormal
    Forms("F_attribution").MaListeDeroulante = Me.IDbureau
' Sinon on ouvre le formulaire sur l'attribution du bureau
Else
    DoCmd.OpenForm "F_attribution", acNormal, , "IDbureau =" & Me.IDbureau, acFormEdit, acWindowNormal
End If
End Sub
__________________
L'informatique fait gagner beaucoup de temps. A condition d'en avoir beaucoup devant soi !!!
paidge est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 22h35.


 
 
 
 
Partenaires

Hébergement Web