Access Ouvrir enreg d1 formulaire via control
klrblz
Messages postés
227
Date d'inscription
Statut
Membre
Dernière intervention
-
CaPiT Messages postés 609 Date d'inscription Statut Membre Dernière intervention -
CaPiT Messages postés 609 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Désolée de poser cette question à laquelle vous avez déjà répondu plusieurs fois mais ne maîtrisant pas à fond Access et encore moins le code, je n'arrive pas à m'y retrouver dans toutes les explications que j'ai pu trouver.
Je crée une base de données répertoriant l'offre régionale en matière de tourisme d'affaires (hotels, restos, salles de réunion, établissements de nuit) structurée de la manière suivante:
-Une table établissements avec les coordonnées et renseignements généraux
- 4 tables "offre": offre hôtelière, restauration, réunion et nuit.
Ces tables sont liées entre elles par la valeur commune numéro de SIRET.
Un établissement pouvant proposer différents types d'offres (ex: hotel-resto avec salles de reunion), j'aimerais pouvoir naviguer entre mes formulaires à l'aide de boutons contrôles
J'ai essayé de passer par l'assistant contrôle: opération formulaire/ ouvrir/ouvrir et trouver des infos spécifiques avec SIRET comme donnée commune mais cela ne trie rien du tout et me renvoie sur l'intégralité de mes enregistrements.
Cette fonction "contrôle: opération formulaire/ ouvrir/ouvrir et trouver des infos spécifiques" est-elle sensée trier quelque chose? Ou dois-je necessairement passer par du code?
D'avance merci
Désolée de poser cette question à laquelle vous avez déjà répondu plusieurs fois mais ne maîtrisant pas à fond Access et encore moins le code, je n'arrive pas à m'y retrouver dans toutes les explications que j'ai pu trouver.
Je crée une base de données répertoriant l'offre régionale en matière de tourisme d'affaires (hotels, restos, salles de réunion, établissements de nuit) structurée de la manière suivante:
-Une table établissements avec les coordonnées et renseignements généraux
- 4 tables "offre": offre hôtelière, restauration, réunion et nuit.
Ces tables sont liées entre elles par la valeur commune numéro de SIRET.
Un établissement pouvant proposer différents types d'offres (ex: hotel-resto avec salles de reunion), j'aimerais pouvoir naviguer entre mes formulaires à l'aide de boutons contrôles
J'ai essayé de passer par l'assistant contrôle: opération formulaire/ ouvrir/ouvrir et trouver des infos spécifiques avec SIRET comme donnée commune mais cela ne trie rien du tout et me renvoie sur l'intégralité de mes enregistrements.
Cette fonction "contrôle: opération formulaire/ ouvrir/ouvrir et trouver des infos spécifiques" est-elle sensée trier quelque chose? Ou dois-je necessairement passer par du code?
D'avance merci
A voir également:
- Access Ouvrir enreg d1 formulaire via control
- Whatsapp formulaire opposition - Guide
- Comment ouvrir un fichier epub ? - Guide
- Fan control - Télécharger - Optimisation
- Ouvrir fichier .bin - Guide
- Formulaire de réclamation facebook - Guide
11 réponses
Bonjour,
bizarre qu'il ne te trie pas les enregistrements.
Si le bouton ne te trie pas tout effectivement tu dois passer par le code. Sur l'evenement "Sur Clic" du bouton, tu mets un truc du style:
Ou si ça ne fonctionne pas, tu peux passer par une requête :
Tu n'as juste qu'à adapter ce qui est en gras.
bizarre qu'il ne te trie pas les enregistrements.
Si le bouton ne te trie pas tout effectivement tu dois passer par le code. Sur l'evenement "Sur Clic" du bouton, tu mets un truc du style:
Private Sub bt_Click() Dim stDocName As String Dim stLinkCriteria As String stDocName = "FormulaireAOuvrir" stLinkCriteria = "&[SIRET]=" & [SIRET] DoCmd.OpenForm stDocName, , , stLinkCriteria End Sub
Ou si ça ne fonctionne pas, tu peux passer par une requête :
Private Sub bt_Click() Dim stDocName As String Dim stLinkCriteria As String stDocName = "FormulaireAOuvrir" Set db = CurrentDb() Set res = db.OpenRecordset("SELECT [SIRET] FROM [Table] WHERE (([Table].[Champ2])='" & Critère1 & "') AND (([Table].[Champ3])='" & Critère2 & "') ;") stLinkCriteria = "[SIRET]=" & res![SIRET] DoCmd.OpenForm stDocName, , , stLinkCriteria End Sub
Tu n'as juste qu'à adapter ce qui est en gras.
Merci de votre réponse,
La première méthode ne fonctionne pas, il m'ouvre bien le formulaire, avec un tri, mais pas celui que je demande, je ne comprend même pas à quoi il correspond.
Pour la deuxième méthode, pourriez-vous m'indiquer ce que vous entendez par champ 2 et champ3, critère1 et critère2.
En continuant mes recherches je suis tombée sur un forum qui me semble plus ou moins correspondre à mon problème:
https://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/probleme-ouverture-formulaire-sujet_114530_1.htm
Peut être sauriez-vous me dire, sur cet exemple, comment lancer la recherche à partir d'un champ et non d'une liste.
Encore merci
La première méthode ne fonctionne pas, il m'ouvre bien le formulaire, avec un tri, mais pas celui que je demande, je ne comprend même pas à quoi il correspond.
Pour la deuxième méthode, pourriez-vous m'indiquer ce que vous entendez par champ 2 et champ3, critère1 et critère2.
En continuant mes recherches je suis tombée sur un forum qui me semble plus ou moins correspondre à mon problème:
https://forum.hardware.fr/hfr/Programmation/VB-VBA-VBS/probleme-ouverture-formulaire-sujet_114530_1.htm
Peut être sauriez-vous me dire, sur cet exemple, comment lancer la recherche à partir d'un champ et non d'une liste.
Encore merci
Tout d'abord merci de votre sollicitude.
Ma bdd comporte 1 table établissements et 4 tables offres (hotellerie, restauration, reunion et nuit)
Par exemple un hôtel-restaurant se retrouve donc dans la table établissements, la table hotellerie et la table restauration.
Je voudrais mettre un bouton sur chacun de mes formulaires offres qui me permettrait d'acceder au formulaire établissement mais sur un enregistrement spécifique. (Par exemple passer du formulaire offre hôtelière de l'hôtel Bellevue au formulaire établissements de l'hôtel bellevue), pour cela je dispose d'une donnée commune à chaque table: le champs SIREN.
Klr
Ma bdd comporte 1 table établissements et 4 tables offres (hotellerie, restauration, reunion et nuit)
Par exemple un hôtel-restaurant se retrouve donc dans la table établissements, la table hotellerie et la table restauration.
Je voudrais mettre un bouton sur chacun de mes formulaires offres qui me permettrait d'acceder au formulaire établissement mais sur un enregistrement spécifique. (Par exemple passer du formulaire offre hôtelière de l'hôtel Bellevue au formulaire établissements de l'hôtel bellevue), pour cela je dispose d'une donnée commune à chaque table: le champs SIREN.
Klr
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Ok, je viens de tester un truc chez moi. On va reprendre depuis le début Essaie ça sur le bouton:
Private Sub bt_Click()
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "FormulaireAOuvrir"
stLinkCriteria = "[SIREN] = " & [SIREN] & " "
DoCmd.OpenForm stDocName, , , stLinkCriteria
End Sub
Le 1er SIREN correspond au nom du champs SIREN présent dans le formulaire à ouvrir.
Le 2emer SIREN correspond au nom du champs SIREN présent dans le formulaire déjà ouvert.
Dis moi ce qui s'affiche, pourquoi ça va pas si ça va pas.
Private Sub bt_Click()
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "FormulaireAOuvrir"
stLinkCriteria = "[SIREN] = " & [SIREN] & " "
DoCmd.OpenForm stDocName, , , stLinkCriteria
End Sub
Le 1er SIREN correspond au nom du champs SIREN présent dans le formulaire à ouvrir.
Le 2emer SIREN correspond au nom du champs SIREN présent dans le formulaire déjà ouvert.
Dis moi ce qui s'affiche, pourquoi ça va pas si ça va pas.
Ca ne fonctionne toujours pas. Ca m'ouvre bien le formulaire établissements, ca m'indique que le résultat est trié (entonoir en bas) avec 39 résultats, qui correspondent aux 39 entrées de ma table établissements.
Peut être cela ne fonctionne pas car mes champs SIREN portent strictement le même nom dans les 5 tables?
Peut être cela ne fonctionne pas car mes champs SIREN portent strictement le même nom dans les 5 tables?
Non car ce sont les noms des zones de texte des formulaires et non les noms des champs de la table.
Donc aucun rapport avec les tables.
Si tu mets ta bdd sur http://www.cijoint.fr/ je pourrais t'arranger ça ce soir.
Donc aucun rapport avec les tables.
Si tu mets ta bdd sur http://www.cijoint.fr/ je pourrais t'arranger ça ce soir.
Je t'es envoyé un message privé. Mais vu la taille c'est chaud.
c bon voici le lien https://spaces.hightail.com/resolve/download/Q01GVWRzQ1A4aU5jR0E9PQ
Par contre faites attention, j'ai du supprimer les relations, il n'y en a plus qu'une entre établissements et offre réunion par salle, c'est sur ce dernier formulaire que se trouve le bouton.
Encore merci pour votre aide
Par contre faites attention, j'ai du supprimer les relations, il n'y en a plus qu'une entre établissements et offre réunion par salle, c'est sur ce dernier formulaire que se trouve le bouton.
Encore merci pour votre aide