Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Access > IHM
IHM Ce forum est dédié aux questions relatives à la création de formulaires et d'états, avec ou sans code VBA, et macros.
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 06/02/2012, 11h50   #1
Invité de passage
 
Inscription : juin 2009
Messages : 7
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 7
Points : 2
Points : 2
Par défaut Affichage automatique des prix sur formulaire

Bonjour à tous,
J'ai préparé une BD ACCESS 2007 pour pouvoir saisir et imprimer des factures.
J'ai créé une table client et une table pour les types de prestations fournies et les prix unitaires et une table détail facture.
Puis j'ai créé un formulaire de saisie facture avec les données client, date ainsi que les prestations, les quantités et les prix unitaires. J'ai mis les prestations facturées en zone de liste liée à table prestations. Je souhaite que quand on sélectionne une prestation donnée, le prix correspondant s'affiche dans le champ prix du formulaire.
Comment automatiser l'affichage du prix car actuellement sur mon formulaire, je sélectionne la prestation, puis saisi manuellement le prix alors cette donnée est déjà saisie dans la table prestations.
D'avance merci pour votre aide et à +
Madimed !
Madimed est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 13h10   #2
Membre émérite
 
Conseil + Formation
Inscription : février 2010
Messages : 598
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Conseil + Formation

Informations forums :
Inscription : février 2010
Messages : 598
Points : 902
Points : 902
Bonjour

Tu peux créer une liste déroulante d"articles à plusieurs colonnes dont le prix, tu masques celles qui ne servent pas et tu lies ton champ prix à la colonne adéquate. Syntaxe
=[NOMLISTE].[column](numero colonne)

Sinon il faut lier le champ à une requête déclenchée par le changement dans le champ où est choisi l'article.
78chris est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 17h46   #3
Invité de passage
 
Inscription : juin 2009
Messages : 7
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 7
Points : 2
Points : 2
Merci Chris,
Je souhaite pouvoir sélectionner jusqu'à 10 prestations sur le formulaire. J'ai essayé ton astuce, ca marche pour prestation 1 (champ prix affiche le prix correspondant à la prestation sélectionnée), mais prestation2, 3, ..etc je ne sais pas pourquoi mai ca ne marche pas !!
Il me semble la solution de la requête SQL est plus adaptée, est ce que tu peux me donner plus de précisions ou je poste dans le forum SQL?
D'avance merci et à +
Madimed est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 20h24   #4
Membre émérite
 
Conseil + Formation
Inscription : février 2010
Messages : 598
Détails du profil
Informations personnelles :
Localisation : France

Informations professionnelles :
Activité : Conseil + Formation

Informations forums :
Inscription : février 2010
Messages : 598
Points : 902
Points : 902
Bonjour

Tu travailles sur un formulaire factures avec un sous formulaire en mode liste ou tabulaire ?

Essaye ce type de code
Code :
1
2
3
4
Private Sub CODEPRODUITL_Change()
PRIX = [CODEPRODUITL].Column(1)
PRIX.Requery
End Sub

PRIX est le champ prix de la table des lignes factures
CODEPRODUITL est la liste déroulante du champ Code produit et donc le prix es la seconde colonne.
78chris est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/02/2012, 21h36   #5
Modérateur
 
Homme René MAROT
Inscription : octobre 2005
Messages : 5 479
Détails du profil
Informations personnelles :
Nom : Homme René MAROT
Localisation : Canada

Informations forums :
Inscription : octobre 2005
Messages : 5 479
Points : 7 568
Points : 7 568
L'astuce la plus simple est de remonter ton prix en plus de ta prestation dans la liste en cachant la colonne prix (une colonne de largeur 0 n'est pas affichée) puis dans l'événement Après MAJ de ta liste écrire :

Code :
me.NomTonChampPrix=me.NomTaListe.column(LeNumeroDeColonne)
Attention la numérotation des colonnes commence à 0, donc par exemple la 4ième colonne est accesible par me.NomTaListe.Column(3).

Me. représente l'objet en cours, ici le formulaire et permet de bénéficier de l'intelissens qui affiche les propriétés quand tu appuis sur le .

A+
__________________
Vous voulez une réponse rapide et efficace à vos questions téchniques ? Ne les posez pas en message privé mais dans le forum, vous bénéficiez ainsi de la compétence et de la disponibilité de tous les contributeurs.
marot_r est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 08/02/2012, 10h46   #6
Invité de passage
 
Inscription : juin 2009
Messages : 7
Détails du profil
Informations forums :
Inscription : juin 2009
Messages : 7
Points : 2
Points : 2
Merci beaucoup pour l'aide appréciable !
Madimed est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h29.


 
 
 
 
Partenaires

Hébergement Web