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 10/10/2011, 10h06   #1
Membre du Club
 
Kev034
Inscription : juin 2010
Messages : 249
Détails du profil
Informations personnelles :
Nom : Kev034
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juin 2010
Messages : 249
Points : 58
Points : 58
Par défaut erreur d'éxecution 2489: l'objet n'est pas ouvert

bonjour à tous,

J'ai un petit soucis lors de l'utilisation de :
Code :
DoCmd.GoToRecord acDataForm, "CoupeColoration_SousForm", acGoTo, I
en fait j'ai un formulaire nommé "CoupeColoration" dans lequel se trouve un sous formulaire "CoupeColoration_sousFormulaire" qui contient une liste d'information !
Le problème quand je lance DoCmd.GoToRecord c'est que le compilateur me retourne cette erreur : erreur d'éxecution 2489 : L'objet "CoupeColoration_sousForm" n'est pas ouvert.

donc j'ai essayé de mettre le focus sur le sous formulaire avant de l'éxecuter mais rien a changé

Si quelqu'un a déjà travaillé sur le problème cela m'aiderai beaucoup

merci d'avance
kek's est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/10/2011, 19h25   #2
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Tu ne peux désigner le sous-formulaire par son nom car DoCmd.GoToRecord ne fonctionne que pour des formulaires ouverts en tant que formulaires principaux.
Après avoir donné le focus au sous-formulaire, essaie
Code :
DoCmd.GoToRecord acActiveDataObject, , acGoTo, I
A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2011, 08h51   #3
Membre du Club
 
Kev034
Inscription : juin 2010
Messages : 249
Détails du profil
Informations personnelles :
Nom : Kev034
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juin 2010
Messages : 249
Points : 58
Points : 58
Salut LedZeppII,

J'ai essayé ta méthode est j'ai une autre erreur qui apparait toujours au même endroit :
erreur d'execution 2505 : Une expression de l'argument 4 comporte une valeur non valide de cet argument.

tu vois d'où peut venir l'erreur ?

Merci pour ton aide
kek's est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 11/10/2011, 18h18   #4
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

Le 4e argument c'est le I.
Je suppose que ce doit être une variable.
Il faut qu'elle contienne un numéro d'enregistrement (1, 2, 3 ...)

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/10/2011, 09h22   #5
Membre du Club
 
Kev034
Inscription : juin 2010
Messages : 249
Détails du profil
Informations personnelles :
Nom : Kev034
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juin 2010
Messages : 249
Points : 58
Points : 58
Salut LedZeppII,

Merci pour ton aide en fait le problème se situé un peu avant cette ligne avec un -1 sur une valeur ce qui rendait le code complètement incohérent

Merci encore pour ton aide

A+
kek's est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2011, 09h01   #6
Membre du Club
 
Kev034
Inscription : juin 2010
Messages : 249
Détails du profil
Informations personnelles :
Nom : Kev034
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juin 2010
Messages : 249
Points : 58
Points : 58
j'ai encore une petite question sur cette partie de code :
Code :
DoCmd.GoToRecord acActiveDataObject, , acGoTo, I
Que signifie le acGoTo exactement ?

car à la base je croyais qu'il nous permettez d'aller à l'enregistrement qui a pour index la valeur I .

Or j'ai un soucis lorsque je l'utilise dans ce code :
Code :
DoCmd.GoToRecord acActiveDataObject, , acGoTo, I
le acGoTo = 4 et I = 6 donc je comprends pas tout

Si quelqu'un peut éclairer mes lanternes ?

Merci d'avance
kek's est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/11/2011, 18h29   #7
Rédacteur
 
Avatar de LedZeppII
 
Homme
Maintenance données produits
Inscription : décembre 2005
Messages : 3 939
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France, Yvelines (Île de France)

Informations professionnelles :
Activité : Maintenance données produits
Secteur : Distribution

Informations forums :
Inscription : décembre 2005
Messages : 3 939
Points : 6 278
Points : 6 278
Bonjour,

avec le paramètre acGoto, la commande
Code :
DoCmd.GoToRecord acActiveDataObject, , acGoTo, I
active l'enregistrement dont le numéro est fourni par I.
Le numéro d'enregistrement correspond au numéro que l'on voit en bas à gauche dans le formulaire,
si on a laissé la propriété "Boutons de déplacement" sur "Oui".
Il ne correspond pas à la valeur d'un champ.
C'est juste le numéro d'enregistrement (ou numéro de ligne).
Si dans mon formulaire en mode continu j'ai quatre enregistrements affichés dans cet ordre :
Code x :
1
2
3
4
5
6
Nom
-----
Toto
Tata
Titi
Tutu

le numéro d'enregistrement sera :

Code x :
1
2
3
4
5
6
Nom    N° Enrgt
-----  ---------
Toto    1
Tata    2
Titi    3
Tutu    4

A+
LedZeppII est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 10/11/2011, 10h05   #8
Membre du Club
 
Kev034
Inscription : juin 2010
Messages : 249
Détails du profil
Informations personnelles :
Nom : Kev034
Localisation : France, Hérault (Languedoc Roussillon)

Informations forums :
Inscription : juin 2010
Messages : 249
Points : 58
Points : 58
merci de ta réponse LedZeppII !

J'ai effectivement compris au final comment ce la fonctionné à force de me casser les dents dessus

Encore Merci

A+
kek's 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 19h54.


 
 
 
 
Partenaires

Hébergement Web