{Access} Macro qui ne fonctionne pas
Clicou
Messages postés
8
Date d'inscription
Statut
Membre
Dernière intervention
-
Jean_Jacques Messages postés 1040 Date d'inscription Statut Membre Dernière intervention -
Jean_Jacques Messages postés 1040 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
Je cherche à créer un évènement sur clic qui me permette d'ouvrir un formulaire sur l'enregistrement dont le numéro correspond à celui sur lequel je clique, dans un autre formulaire. J'ai trouvé la méthode dans le guide de Microsoft application. Ça ressemble beaucoup à ce que je faisais avec Access 2003, sauf que ça ne marche pas. L'action échoue à tous les coups et j'ai le message suivant "vous avez essayé de verrouiller la table...pendant son ouverture mais elle ne peut pas être verrouillée car elle est en cours d'utilisation. Je ne vois pas à quoi ce message peut correspondre.
Si quelqu'un connait ce problème, et en plus si il a la solution...merci d'avance.
Je cherche à créer un évènement sur clic qui me permette d'ouvrir un formulaire sur l'enregistrement dont le numéro correspond à celui sur lequel je clique, dans un autre formulaire. J'ai trouvé la méthode dans le guide de Microsoft application. Ça ressemble beaucoup à ce que je faisais avec Access 2003, sauf que ça ne marche pas. L'action échoue à tous les coups et j'ai le message suivant "vous avez essayé de verrouiller la table...pendant son ouverture mais elle ne peut pas être verrouillée car elle est en cours d'utilisation. Je ne vois pas à quoi ce message peut correspondre.
Si quelqu'un connait ce problème, et en plus si il a la solution...merci d'avance.
A voir également:
- {Access} Macro qui ne fonctionne pas
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Jitbit macro recorder - Télécharger - Confidentialité
- Télécharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Acer quick access - Forum logiciel systeme
- Désinstaller ACER QUICK ACCESS - Forum Logiciels
6 réponses
Bonjour Clicou,
La cération d'un bouton en mode assistance permet d'obtenir ce que vous recherchez.
- Passer le formulaire en mode création
- Appeler la boite à outils
- Activer le bouton de création approprié
- Choisir [Ouvrir un formulaire] dans la liste proposée
- Désigner le formulaire à ouvrir
- Cocher [Ouvrir pour trouver des informations spécifiques]
La suite est bien commentée en Pas à Pas...
Cordialement
La cération d'un bouton en mode assistance permet d'obtenir ce que vous recherchez.
- Passer le formulaire en mode création
- Appeler la boite à outils
- Activer le bouton de création approprié
- Choisir [Ouvrir un formulaire] dans la liste proposée
- Désigner le formulaire à ouvrir
- Cocher [Ouvrir pour trouver des informations spécifiques]
La suite est bien commentée en Pas à Pas...
Cordialement
Bonjour Jean_Jacques et merci de votre réponse mais je pense que j'ai mal expliqué mon problème car je ne parviens pas à créer de bouton en mode formulaire et si je fais des essais dans un autre mode, j'ai quand même un message me disant que la table est déjà ouverte.
Voilà donc plus précisément mon problème :
J'ai une table de film et une table de réalisateur.
J'ai un formulaire qui me permet de choisir un réalisateur et qui comprend un sous-formulaire où apparaissent les films de ce réalisateur. Ce sous-formulaire est en mode feuille de données. Je voudrais, en double cliquant sur le code du film que la fiche détaillée du film s'ouvre.
J'ai déjà ce système pour les livres que j'ai lu. J'ai la liste en feuille de données et, quand je clique sur le code du livre, ça m'ouvre la fiche détaillée du livre.
J'avais écrit ceci :
Option Compare Database
Private Sub N°AUTO_DblClick(Cancel As Integer)
Dim DocName As String
Dim LinkCriteria As String
DocName = "VOIR UNE FICHE"
LinkCriteria = "[N°AUTO]=Forms![MA LISTE]![N°AUTO]"
DoCmd.OpenForm DocName, , , LinkCriteria
End Sub
Ca marche mais c'était une autre version d'access (97, je crois, que j'avais fait suivre en 2002 et qui tourne en ce moment en 2007)
Voilà donc plus précisément mon problème :
J'ai une table de film et une table de réalisateur.
J'ai un formulaire qui me permet de choisir un réalisateur et qui comprend un sous-formulaire où apparaissent les films de ce réalisateur. Ce sous-formulaire est en mode feuille de données. Je voudrais, en double cliquant sur le code du film que la fiche détaillée du film s'ouvre.
J'ai déjà ce système pour les livres que j'ai lu. J'ai la liste en feuille de données et, quand je clique sur le code du livre, ça m'ouvre la fiche détaillée du livre.
J'avais écrit ceci :
Option Compare Database
Private Sub N°AUTO_DblClick(Cancel As Integer)
Dim DocName As String
Dim LinkCriteria As String
DocName = "VOIR UNE FICHE"
LinkCriteria = "[N°AUTO]=Forms![MA LISTE]![N°AUTO]"
DoCmd.OpenForm DocName, , , LinkCriteria
End Sub
Ca marche mais c'était une autre version d'access (97, je crois, que j'avais fait suivre en 2002 et qui tourne en ce moment en 2007)
Bonjour Clicou,
Vous vous êtes bien expliqué. C'est moi qui ai mal lu.
Je n'ai pas testé, mais la bonne syntaxe est probablement la suivante :
Dim DocName As String
Dim LinkCriteria As String
DocName = "VOIR UNE FICHE"
Rem Création du lien entre le formulaire actif et le formulaire à ouvrir
LinkCriteriA = "[N°AUTO]=" & Me![N°AUTO]
Rem Ouverture du formulaire "VOIR UNE FICHE" en utilisant la relation créée à l'étape précédente
DoCmd.OpenForm DocName, , , LinkCriteria
Cordialement
Vous vous êtes bien expliqué. C'est moi qui ai mal lu.
Je n'ai pas testé, mais la bonne syntaxe est probablement la suivante :
Dim DocName As String
Dim LinkCriteria As String
DocName = "VOIR UNE FICHE"
Rem Création du lien entre le formulaire actif et le formulaire à ouvrir
LinkCriteriA = "[N°AUTO]=" & Me![N°AUTO]
Rem Ouverture du formulaire "VOIR UNE FICHE" en utilisant la relation créée à l'étape précédente
DoCmd.OpenForm DocName, , , LinkCriteria
Cordialement
C'est bien sympathique de suivre mon problème mais je ne suis pas très à l'aise dans le vocabulaire de programmation!
Que signifie "Rem"?
D'autre part, voilà la syntaxe qui s'est créée quand j'ai tenté de créer mon évènement sur double cliic :
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "FVOIRUNEFICHE"
stLinkCriteria = "[CodeFilm]=" & Me![CodeFilm]
DoCmd.OpenForm stDocName, , , stLinkCriteria
Par rapport à ce que vous m'indiquez, je n'ai pas les 2 lignes qui commencent par Rem, et j'ai "st" devant LinkCriteria.
Question suivante : peut-on ouvrir un formulaire en mode feuille de données à l'aide d'un bouton?
merci beaucoup.
Cordialement
Que signifie "Rem"?
D'autre part, voilà la syntaxe qui s'est créée quand j'ai tenté de créer mon évènement sur double cliic :
Dim stDocName As String
Dim stLinkCriteria As String
stDocName = "FVOIRUNEFICHE"
stLinkCriteria = "[CodeFilm]=" & Me![CodeFilm]
DoCmd.OpenForm stDocName, , , stLinkCriteria
Par rapport à ce que vous m'indiquez, je n'ai pas les 2 lignes qui commencent par Rem, et j'ai "st" devant LinkCriteria.
Question suivante : peut-on ouvrir un formulaire en mode feuille de données à l'aide d'un bouton?
merci beaucoup.
Cordialement
Clicou,
Dans un programme [Rem] précède une information texte destinée au programmeur. C'est un aide mémoire
- REM est la forme abrégée de l'anglais [Remember].
"Linkcriteria" est une variable mémoire qui prend une valeur prévue par le programmeur.
Par exemple = "[CodeFilm]=" & Me![CodeFilm
Mais linkcriteria est une convention. Vous pouvez très bien écrire :
Choucroute = "[CodeFilm]=" & Me![CodeFilm
NB : La variable mémoire doit toujours la même orthographe. Que ce soit avec "st" devant ou pas.
Pour ouvrir un formulaire en mode Feuille de données. Pour davantage d'information, activer la touche F1 de
l'aide en ligne et saisir : Mode Feuille de données ; dans le champ aide intuitive de la boîte de dialogue.
Cordialement
La science ne fait que trouver ce qui existe depuis toujours.
REEVES Hubert.
Dans un programme [Rem] précède une information texte destinée au programmeur. C'est un aide mémoire
- REM est la forme abrégée de l'anglais [Remember].
"Linkcriteria" est une variable mémoire qui prend une valeur prévue par le programmeur.
Par exemple = "[CodeFilm]=" & Me![CodeFilm
Mais linkcriteria est une convention. Vous pouvez très bien écrire :
Choucroute = "[CodeFilm]=" & Me![CodeFilm
NB : La variable mémoire doit toujours la même orthographe. Que ce soit avec "st" devant ou pas.
Pour ouvrir un formulaire en mode Feuille de données. Pour davantage d'information, activer la touche F1 de
l'aide en ligne et saisir : Mode Feuille de données ; dans le champ aide intuitive de la boîte de dialogue.
Cordialement
La science ne fait que trouver ce qui existe depuis toujours.
REEVES Hubert.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour, j'ai fait beaucoup de tentatives et vous me confirmez que ma syntaxe est correcte. Cependant, j'ai toujours ce message : "vous avez essayé de verrouiller la table...pendant son ouverture mais elle ne peut pas être verrouillée car elle est en cours d'utilisation." et ça ne fonctionne pas.
Je ne sais plus bien de quel côté chercher. Si vous avez des idées...
Merci.
Je ne sais plus bien de quel côté chercher. Si vous avez des idées...
Merci.
Bonjour Clicou,
Par acquis de conscience, un petit compactage ne saurait nuire..
- Menu Outils
- Utilitaire etc....
- Compacter Base de données
Ensuite :
Adaptez votre code et ouvrez un formulaire différent de celui qui bloque.
Si l'incident persiste, compressez votre Base ACCESS et déposez là sur ci-joint.com et créez une nouvelle
fiche sur CCM, sans omettre de fournir le lien de téléchargement du dossier compressé.
J'en suis resté à ACCESS 2000 et ne suis donc malheureusement pas en mesure de manipuler votre base
ACCESS 2007. Ce qui permettrait à d'autres intervenants de visualiser votre incident.
Cordialement
Par acquis de conscience, un petit compactage ne saurait nuire..
- Menu Outils
- Utilitaire etc....
- Compacter Base de données
Ensuite :
Adaptez votre code et ouvrez un formulaire différent de celui qui bloque.
Si l'incident persiste, compressez votre Base ACCESS et déposez là sur ci-joint.com et créez une nouvelle
fiche sur CCM, sans omettre de fournir le lien de téléchargement du dossier compressé.
J'en suis resté à ACCESS 2000 et ne suis donc malheureusement pas en mesure de manipuler votre base
ACCESS 2007. Ce qui permettrait à d'autres intervenants de visualiser votre incident.
Cordialement