Liste modifiable sous access
seblekiller_oupas Messages postés 397 Statut Membre -
j'aimerais savoir comment faire pour avoir un formulaire qui pourrait ressembler a ca:
https://www.cjoint.com/?ftohwftHMg
En sachant que l'on peut modifier chacun des textbox mais tout en faisant defiler la premiere ligne voila
merci d'avance
Configuration: Windows XP Internet Explorer 6.0
- Liste modifiable sous access
- Modifier liste déroulante excel - Guide
- Liste code ascii - Guide
- Liste déroulante en cascade - Guide
- Access appdata - Guide
- Liste des appareils connectés - Guide
22 réponses
- 1
- 2
Le besoin exprimé est de concevoir un formulaire similaire à un exemple accessible, comportant des textbox modifiables et un défilement de la première ligne, dans un contexte Windows XP et Internet Explorer 6.
Plusieurs échanges proposent d'ajuster le code existant, notamment autour d'une liste modifiable et de la préselection des éléments, afin d'afficher automatiquement la fiche client lorsque la bonne machine est choisie.
D'autres interventions contestent la clarté des objectifs et alternent entre remarques techniques et échanges informels, sans aboutir à une solution unique clairement identifiable dans le fil.
En cas de progression, l'approche pourrait nécessiter une adaptation au cadre applicatif et à la gestion des événements côté formulaire pour assurer une édition fluide même en défilement.
fais une copie d'cran de ce que tu souhaites...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre questionvoila on pourrait tout modifier mais choisir une preselection quand meme
les infos de ta societé se trouve dans une autre table?
si oui tu n'a qu'a mettre un sous formulaire qui se reference sur un formulaire avec les infos de la table société
et apres avec access tu peut faire un lien entre ton sous formulaire et le formulaire qui l'heberge
c'est facile avec l'assistant
j'ai un formulaire tout simple fait avec l'assistant avec 5 champs et voila
en bougeant la molette de la souris ou en choisissant avec les fleches, je fais defiler les differentes societe et leur statut (adresse, type de boite etc...) et au lieu d'utiliser la souris ou les fleches, j'aimerais avoir une liste de societe ou on choisi mais ou l'on pourrait quand meme modifier les parametres. Si ce n'est pas claire, je peux reexpliquer
voila ce que je ferais
je ferais une requete sql qui selectionnerais tous les champs de ma table pour lequelle nom societé egale liste
normalement si tu la lance toute seul ca ne va pas
mais c'est pas grave
apres je ferais un formulire avec une zone de liste qui referencerai le nom de tes société
et je ferais aussi un sous formulaire dans ce formulaire qui aurais tous les champ de la requete
et sur l'action clic de la liste je metterais le code pour rafraichir le formulaire
ce qui rafraichirais la requete et le tour est joué
SI ta pas tous compris procède par etape et tien moi au courant
Il faut juste paramétrer la source de la liste pour faire un select ... from la_table...
J'ai rajoute un id_client (ref_clontact) en numerotation auto, et je n'arriva pas a faire le lien entre mes 2 tables
Dans la table formation, j'ai essaye a la fois de metre soit NomContact soit Ref_Contact et je n'y arrive pas.
Questions: Est-ce que la cle primaire doit toujours etre reliee a une table?Est ce que le fait que ce soit num auto pose pb? et d'ou vient le pb a t on avis?
Si tu veut des precisions demande moi.
Lorsque ce champ est un numéroauto, il ne peut être mis en relation qu'avec un champ de type numérique 'entierlong' côté n de la relation.
Lorsque l'on décide d'appliquer le contenu d'une zone à plusieurs champs de diverses tables/objets, il faut donc établir des règles : à quel moment fait-on la mise à jour, quels sont les objets à mettre à jour ?
Pour ce qui est de répercuter une valeur dans des champs d'une table (ou de plusieurs), il faut lancer une requête qui va mettre à jour les champs de la (ou des) table(s) concernées, cette requête est une requête standard SQL de type UPDATE.
Il faut donc créer une requête en VBA pour ensuite la lancer, afin qu'elle mette à jour les données voulues.
Ex :
mettre à jour le champ 'toto' de la table 'tata' à partir d'une zone nommé 'saisie'
- créer un bouton qui déclenchera la mise à jour
- dans ce bouton, mettre le code suivant (sur clic) :
Dim Req as String Req = "UPDATE tata SET toto ='" & saisie.value & "';" docmd.runsql(req)Et c'est tout !
Avec une nuance, cependant, c'est que cette requête va remplacer TOUS les champs 'toto' de la table par le contenu de 'saisie', il faudra donc préciser dans la requête à quelle(s) ligne(s) cette modification s'applique, via la clause WHERE...
voila ouvre page d'acceuil et normalement il y a une msgbox qui me parrle d'un pb de SQL si jamais tu as une idee pour resoudre ca ce serait super mega bien
Lorsque tu ouvres ton form d'accueil, il va voir ce qu'il y a dans toutes les zones, et le contenu de modi3 est une requête positionnée par modi2 (sur changement) qui demande une restriction sur nomcontact dans la requête 'Requete_entier', mais comme 'Requete_entier' possède 2 champs nommés 'nomcontact', access ne sait pas lequel choisir, il faut donc lui préciser en préfixant 'nomcontact' avec le nom de la table : 'contacts' ou 'formation'...
CQFD !
Ensuite, ce que je voulais faire au depart, j'ai remplace dans la requete le fameux NomContact par Ref_Contact pour voir si ca marchait mais resultat, c'est comme au debut, c a d que j'ai une preselection des NomContacts mais pas des machines et meme si je prends le bon numero machine, ca ne m'affiche pas la fiche client
voila
Le problème vient d'un des noms de champs fils du sous-formulaire : il s'appelle contact et comme le sous-formulaire est basé sur 'requete_entier' qui comprend deux fois ce nom, il faut donc modifier el champ fils pour lui mettre le préfixe de la table auquel on fait référence.
En clair je choisis ma societe j'ai ma perselection des contacts et je n'ai pas ma preselection des machines; em revanche maintenant si je choisi la bonne machine dans la liste, la fiche client s'affiche voila
donc : on choisit une société, on choisir un contact (parmi ceux de la société précédente), et ensuite on choisit une machine parmi la liste de celles rattachées au contact sélectionné précédemment...
Je n'ai pas compris ton interrogation...
Voici mon code:
Private Sub Modi1_Change()
Dim StrSql As String
'MsgBox Modi1.Value
StrSql = StrSql + "SELECT * FROM Contacts WHERE NomSociete = '" & Modi1.Value & "';"
Modi2.RowSource = StrSql
Modi2.Requery
End Sub
Private Sub Modi2_Change()
Dim StrSql As String
'MsgBox Modi1.Value
StrSql = StrSql + "SELECT num_machine FROM Requete_entier WHERE NomSociete = '" & Modi1.Value & "' and "
StrSql = StrSql + " Ref_contact ='" & Modi2.Value & "';"
Modi3.RowSource = StrSql
Modi3.Requery
End Sub
Private Sub Modi3_Change()
Me.Form_Requete_entier.Visible = True
End Sub
Private Sub Form_Open(Cancel As Integer)
Me.Form_Requete_entier.Visible = False
End Sub
Donc je ne crois pas que ce soit ca!
bon week end
j'ai donc pour l'instant trois liste deroulantes pour faire afficher ma fiche client (ce que tu m'as aider a faire avant)
maintenant je voudrais faire sur la meme page, le meme principe, a savoir qu'avec trois liste, ca m'affiche une fiche intervention voila
est-ce possible de faire afficher les parametres de la societe dans la liste?
et est-ce possible d'avoir toujours la preselection des listes, en faisant afficher les parametres choisis dans le sous formulaire mais sans ouvrir, au final, la fiche d'intervention (en gros apres mes selections on obtiens la fiche d'intervention avec seulement lews parametres selectionnes?)
oui, il suffit de modifier la requête générée dans Chx_Inter et qu'on met en source de Chx_Soc.
et est-ce possible d'avoir toujours la preselection des listes, en faisant afficher les parametres choisis dans le sous formulaire mais sans ouvrir, au final, la fiche d'intervention (en gros apres mes selections on obtiens la fiche d'intervention avec seulement lews parametres selectionnes?)
Pas compris : c'est quoi la fiche d'intervention ? ce qui s'affiche dans le sous-form ?
J'ai fait un formulaire de ce type:
on a 2 series de liste deroulantesqui agissent l'une sur a fiche client et l'autre sur la fiche intervention
j'aimerais que quand on regarde la fiche intervention, la fiche client disparaisse et vis et versa donc est-ce que tu sais comment on peut faire??
je te l'accorde l'idee n'est pas forcement la meilleure mais c'est ce que veut mon chef!!
merci quand pour les listes elles marchent bien pour l'instant
- 1
- 2