Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur d’exécution ‘2424’

6 réponses
Avatar
Marie-Claire
Bonjour,
J’ai encore besoin de vous, voilà :

Un formulaire [F_Residant]
Un sous formulaire [SF_Preferences]
Avec les champs [Lundi_matin] ; [Lundi_apres] ; [Mardi_matin]………
[Vendredi_apres]

Dans chacun des champs il peut trouver les valeurs suivantes : "Douche" ;
"Soins" ; "Salon" ; "Animation" ; "Sortie Repas" ; "Sortie Diner"

A l’ouverture du formulaire [F_Residant], le sous formulaire
[SF_Preferences] indique pour chaque résidant il est indiqué si lundi matin
il y a : "Douche" ou "Soins" etc.. ou rien.
Pour faciliter la lecture les champs se colorent selon la valeur du champ.
Pour cela j’ai mis sur activation du formulaire [F_Residant] ceci :

Private Sub Form_Current()

DoCmd.Maximize

Me.Refresh

If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
etc……..

If Forms![F_Residant]![SF_Preferences].Form![Lundi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![ Lundi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form! Lundi_matin.BackColor = 16761024
End If

Mais à l’ouverture du formulaire [F_Residant] Access m’indique
Erreur d’exécution ‘2424’
L’expression entrée comporte un nom de champ, de contrôle ou de propriété
introuvable
Je suis sur Access 2003, Windows 7 Familiale Premium.
Je ne comprends pas il me semble que mon code est juste.
Merci pour vos conseils.
Marie-Claire.

--
Marie-Claire

6 réponses

Avatar
jero
Salut,
Dans :
If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
...
il manque la propriété ForeColor !
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin].ForeColor =
16777088


A+
jpg
"Marie-Claire" a écrit dans le
message de news:
Bonjour,
J'ai encore besoin de vous, voilà :

Un formulaire [F_Residant]
Un sous formulaire [SF_Preferences]
Avec les champs [Lundi_matin] ; [Lundi_apres] ; [Mardi_matin]...
[Vendredi_apres]

Dans chacun des champs il peut trouver les valeurs suivantes : "Douche" ;
"Soins" ; "Salon" ; "Animation" ; "Sortie Repas" ; "Sortie Diner"

A l'ouverture du formulaire [F_Residant], le sous formulaire
[SF_Preferences] indique pour chaque résidant il est indiqué si lundi
matin
il y a : "Douche" ou "Soins" etc.. ou rien.
Pour faciliter la lecture les champs se colorent selon la valeur du champ.
Pour cela j'ai mis sur activation du formulaire [F_Residant] ceci :

Private Sub Form_Current()

DoCmd.Maximize

Me.Refresh

If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche"
Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor =
16761024
End If
If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor =
16761024
End If
etc....

If Forms![F_Residant]![SF_Preferences].Form![Lundi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![ Lundi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form! Lundi_matin.BackColor = 16761024
End If

Mais à l'ouverture du formulaire [F_Residant] Access m'indique
Erreur d'exécution '2424'
L'expression entrée comporte un nom de champ, de contrôle ou de propriété
introuvable
Je suis sur Access 2003, Windows 7 Familiale Premium.
Je ne comprends pas il me semble que mon code est juste.
Merci pour vos conseils.
Marie-Claire.

--
Marie-Claire


Avatar
Marie-Claire
Bonjour,
Le problème n’est pas résolu.
Je te remercie infiniment, je suis désolée j’avais oublié de recopier «
BackColor » dans mon message.
Dans mon code j’ai remplacé, par acquit de conscience, « BackColor » par «
ForeColor » mais cela ne change rien.
Il y a toujours :

Erreur d’exécution ‘2424’
« L’expression entrée comporte un nom de champ, de contrôle ou de propriété
introuvable »
et
« L’objet est incorrect ou n’est plus défini ».
S’il a d’autres idées, je prends.
Marie-Claire

--
Marie-Claire


"jero" a écrit :

Salut,
Dans :
If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
....
il manque la propriété ForeColor !
>Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin].ForeColor =
>16777088
A+
jpg
"Marie-Claire" a écrit dans le
message de news:
> Bonjour,
> J'ai encore besoin de vous, voilà :
>
> Un formulaire [F_Residant]
> Un sous formulaire [SF_Preferences]
> Avec les champs [Lundi_matin] ; [Lundi_apres] ; [Mardi_matin]...
> [Vendredi_apres]
>
> Dans chacun des champs il peut trouver les valeurs suivantes : "Douche" ;
> "Soins" ; "Salon" ; "Animation" ; "Sortie Repas" ; "Sortie Diner"
>
> A l'ouverture du formulaire [F_Residant], le sous formulaire
> [SF_Preferences] indique pour chaque résidant il est indiqué si lundi
> matin
> il y a : "Douche" ou "Soins" etc.. ou rien.
> Pour faciliter la lecture les champs se colorent selon la valeur du champ.
> Pour cela j'ai mis sur activation du formulaire [F_Residant] ceci :
>
> Private Sub Form_Current()
>
> DoCmd.Maximize
>
> Me.Refresh
>
> If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche"
> Then
> Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
> Else
> Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor =
> 16761024
> End If
> If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
> Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
> Else
> Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor =
> 16761024
> End If
> etc....
>
> If Forms![F_Residant]![SF_Preferences].Form![Lundi_matin] = "Douche" Then
> Forms![F_Residant]![SF_Preferences].Form![ Lundi_matin] = 16777088
> Else
> Forms![F_Residant]![SF_Preferences].Form! Lundi_matin.BackColor = 16761024
> End If
>
> Mais à l'ouverture du formulaire [F_Residant] Access m'indique
> Erreur d'exécution '2424'
> L'expression entrée comporte un nom de champ, de contrôle ou de propriété
> introuvable
> Je suis sur Access 2003, Windows 7 Familiale Premium.
> Je ne comprends pas il me semble que mon code est juste.
> Merci pour vos conseils.
> Marie-Claire.
>
> --
> Marie-Claire


.



Avatar
Marie-Claire
Bonjour,
Le problème n’est pas résolu.
Je te remercie infiniment, je suis désolée j’avais oublié de recopier «
BackColor » dans mon message.
Dans mon code j’ai remplacé, par acquit de conscience, « BackColor » par «
ForeColor » mais cela ne change rien.
Il y a toujours :

Erreur d’exécution ‘2424’
« L’expression entrée comporte un nom de champ, de contrôle ou de propriété
introuvable »
et
« L’objet est incorrect ou n’est plus défini ».
S’il a d’autres idées, je prends.
Marie-Claire

--
Marie-Claire


"jero" a écrit :

Salut,
Dans :
If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
....
il manque la propriété ForeColor !
>Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin].ForeColor =
>16777088
A+
jpg
"Marie-Claire" a écrit dans le
message de news:
> Bonjour,
> J'ai encore besoin de vous, voilà :
>
> Un formulaire [F_Residant]
> Un sous formulaire [SF_Preferences]
> Avec les champs [Lundi_matin] ; [Lundi_apres] ; [Mardi_matin]...
> [Vendredi_apres]
>
> Dans chacun des champs il peut trouver les valeurs suivantes : "Douche" ;
> "Soins" ; "Salon" ; "Animation" ; "Sortie Repas" ; "Sortie Diner"
>
> A l'ouverture du formulaire [F_Residant], le sous formulaire
> [SF_Preferences] indique pour chaque résidant il est indiqué si lundi
> matin
> il y a : "Douche" ou "Soins" etc.. ou rien.
> Pour faciliter la lecture les champs se colorent selon la valeur du champ.
> Pour cela j'ai mis sur activation du formulaire [F_Residant] ceci :
>
> Private Sub Form_Current()
>
> DoCmd.Maximize
>
> Me.Refresh
>
> If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche"
> Then
> Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
> Else
> Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor =
> 16761024
> End If
> If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
> Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
> Else
> Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor =
> 16761024
> End If
> etc....
>
> If Forms![F_Residant]![SF_Preferences].Form![Lundi_matin] = "Douche" Then
> Forms![F_Residant]![SF_Preferences].Form![ Lundi_matin] = 16777088
> Else
> Forms![F_Residant]![SF_Preferences].Form! Lundi_matin.BackColor = 16761024
> End If
>
> Mais à l'ouverture du formulaire [F_Residant] Access m'indique
> Erreur d'exécution '2424'
> L'expression entrée comporte un nom de champ, de contrôle ou de propriété
> introuvable
> Je suis sur Access 2003, Windows 7 Familiale Premium.
> Je ne comprends pas il me semble que mon code est juste.
> Merci pour vos conseils.
> Marie-Claire.
>
> --
> Marie-Claire


.



Avatar
Michel__D
Bonjour

Marie-Claire a écrit :
Bonjour,
J’ai encore besoin de vous, voilà :

Un formulaire [F_Residant]
Un sous formulaire [SF_Preferences]
Avec les champs [Lundi_matin] ; [Lundi_apres] ; [Mardi_matin]………
[Vendredi_apres]

Dans chacun des champs il peut trouver les valeurs suivantes : "Douche" ;
"Soins" ; "Salon" ; "Animation" ; "Sortie Repas" ; "Sortie Diner"

A l’ouverture du formulaire [F_Residant], le sous formulaire
[SF_Preferences] indique pour chaque résidant il est indiqué si lundi matin
il y a : "Douche" ou "Soins" etc.. ou rien.
Pour faciliter la lecture les champs se colorent selon la valeur du champ.
Pour cela j’ai mis sur activation du formulaire [F_Residant] ceci :

Private Sub Form_Current()

DoCmd.Maximize

Me.Refresh

If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
etc……..

If Forms![F_Residant]![SF_Preferences].Form![Lundi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![ Lundi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form! Lundi_matin.BackColor = 16761024
End If

Mais à l’ouverture du formulaire [F_Residant] Access m’indique
Erreur d’exécution ‘2424’
L’expression entrée comporte un nom de champ, de contrôle ou de propriété
introuvable
Je suis sur Access 2003, Windows 7 Familiale Premium.
Je ne comprends pas il me semble que mon code est juste.
Merci pour vos conseils.
Marie-Claire.



Pour trouver ou cela coince, commente les lignes :

If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
' Else
' Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
' If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
' Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
' Else
' Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
' End If
etc……..

Et au fur et mesure tu décommente, comme cela tu devrais trouver ou se situe l'erreur.
Avatar
atma-weapon
Marie-Claire a écrit le 17/12/2009 à 09h43 :
Bonjour,
J’ai encore besoin de vous, voilà :

Un formulaire [F_Residant]
Un sous formulaire [SF_Preferences]
Avec les champs [Lundi_matin] ; [Lundi_apres] ;
[Mardi_matin]………
[Vendredi_apres]

Dans chacun des champs il peut trouver les valeurs suivantes :
"Douche" ;
"Soins" ; "Salon" ; "Animation" ; "Sortie
Repas" ; "Sortie Diner"

A l’ouverture du formulaire [F_Residant], le sous formulaire
[SF_Preferences] indique pour chaque résidant il est indiqué si
lundi matin
il y a : "Douche" ou "Soins" etc.. ou rien.
Pour faciliter la lecture les champs se colorent selon la valeur du champ.
Pour cela j’ai mis sur activation du formulaire [F_Residant] ceci :

Private Sub Form_Current()

DoCmd.Maximize

Me.Refresh

If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] =
"Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins"
Then
Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
etc……..

If Forms![F_Residant]![SF_Preferences].Form![Lundi_matin] = "Douche"
Then
Forms![F_Residant]![SF_Preferences].Form![ Lundi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form! Lundi_matin.BackColor = 16761024
End If

Mais à l’ouverture du formulaire [F_Residant] Access
m’indique
Erreur d’exécution ‘2424’
L’expression entrée comporte un nom de champ, de contrôle ou
de propriété
introuvable
Je suis sur Access 2003, Windows 7 Familiale Premium.
Je ne comprends pas il me semble que mon code est juste.
Merci pour vos conseils.
Marie-Claire.

--
Marie-Claire


Bonjour!

Tu spécifies trop en détail tes objets. la spécification formulaire et sous-formulaire est trop spécifique

If Forms![F_Residant]![SF_Preferences]

pourrait être if forms![SF_Preferences]

De plus, tu spécifies le champ vendredi_matin, et non un formulaire. Assure-toi que la zone de texte soit bien nommée. Ton if premier serait donc :

forms![SF_Preferences].Vendredi_matin.Value = "douche" Then

Reconstruis tes lignes ainsi. le .Value est la méthode par défaut d'une zone de texte mais je te recommande malgré tout de le spécifier pour meilleur lisibilité.

Essaie ainsi mon hypothèse, en gardant en commentaires ton code de base. Si cela fonctionne, dis-le moi.

Bonne chance!
Avatar
Marie-Claire
Bonjour,
Non ceci n'a rien changé.
Seulement lorsque tout était commenté que je n'avais pas d'erreur.
Par contre sur les conseils d'un ami j'ai rajouté:

Private Sub Form_Current()

DoCmd.Maximize

Me.Refresh
Me.SF_Preferences.Visible = True

If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
Else
Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
etc……..

Je suis n'y crois pas plus d'erreur!!!!!
Ca Marche!!!!
Merci à tous et puisque l'on s'approche à grands pas "Bonnes fêtes" à tous
et tout particulièrement aux habituels, les dinosaures (Pierre 3stone,
Raymond, Eric, etc) qui depuis des années nous suivent nous les biberons
d’Access et qui sans eux je n’en serais pas là.

Marie-Claire

--
Marie-Claire


"Michel__D" a écrit :

Bonjour

Marie-Claire a écrit :
> Bonjour,
> J’ai encore besoin de vous, voilà :
>
> Un formulaire [F_Residant]
> Un sous formulaire [SF_Preferences]
> Avec les champs [Lundi_matin] ; [Lundi_apres] ; [Mardi_matin]………
> [Vendredi_apres]
>
> Dans chacun des champs il peut trouver les valeurs suivantes : "Douche" ;
> "Soins" ; "Salon" ; "Animation" ; "Sortie Repas" ; "Sortie Diner"
>
> A l’ouverture du formulaire [F_Residant], le sous formulaire
> [SF_Preferences] indique pour chaque résidant il est indiqué si lundi matin
> il y a : "Douche" ou "Soins" etc.. ou rien.
> Pour faciliter la lecture les champs se colorent selon la valeur du champ.
> Pour cela j’ai mis sur activation du formulaire [F_Residant] ceci :
>
> Private Sub Form_Current()
>
> DoCmd.Maximize
>
> Me.Refresh
>
> If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
> Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
> Else
> Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
> End If
> If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
> Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
> Else
> Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
> End If
> etc……..
>
> If Forms![F_Residant]![SF_Preferences].Form![Lundi_matin] = "Douche" Then
> Forms![F_Residant]![SF_Preferences].Form![ Lundi_matin] = 16777088
> Else
> Forms![F_Residant]![SF_Preferences].Form! Lundi_matin.BackColor = 16761024
> End If
>
> Mais à l’ouverture du formulaire [F_Residant] Access m’indique
> Erreur d’exécution ‘2424’
> L’expression entrée comporte un nom de champ, de contrôle ou de propriété
> introuvable
> Je suis sur Access 2003, Windows 7 Familiale Premium.
> Je ne comprends pas il me semble que mon code est juste.
> Merci pour vos conseils.
> Marie-Claire.

Pour trouver ou cela coince, commente les lignes :

If Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = "Douche" Then
Forms![F_Residant]![SF_Preferences].Form![Vendredi_matin] = 16777088
' Else
' Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
End If
' If Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin = "Soins" Then
' Forms![F_Residant]![SF_Preferences]!Vendredi_matin.BackColor = 65408
' Else
' Forms![F_Residant]![SF_Preferences].Form!Vendredi_matin.BackColor = 16761024
' End If
etc……..

Et au fur et mesure tu décommente, comme cela tu devrais trouver ou se situe l'erreur.
.