OVH Cloud OVH Cloud

Propriété ou méthode non gérée par cet objet

10 réponses
Avatar
Dan
Bonjour à tous,

J'ai dupliqué une BD pour l'enrichir de nouvelles fonctionnalités, mais
l'utilisation d'une fonction personnalisée me renvoie l'erreur "Propriété ou
méthode non gérée par cet objet"...

J'ai vérifié les paramètres de la fonction, les déclarations de variables,
les références, et je n'ai rien vu d'anormal...

L'aide est elliptique à ce sujet...

Avez-vous une idée ?

Merci d'avance
Amicalement, Dan

10 réponses

Avatar
Gafish
Dan wrote:
Bonjour à tous,


Bonjour

J'ai dupliqué une BD pour l'enrichir de nouvelles fonctionnalités,
mais l'utilisation d'une fonction personnalisée me renvoie l'erreur
"Propriété ou méthode non gérée par cet objet"...


Tu n'as pas de référence marquée manquante ?
Ca plante sur quelle ligne de ton code ?

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Dan
Voici la ligne de code qui plante :
Me.IA_Montant = Tarif(Quotient_Mini, Quotient_Maxi, Tarif_Mini, Tarif_Maxi,
Tarif_Montant, Travail_Famille, Parm_Travail, Convention_Ville,
Parm_Convention, QFam, Enfants_Famille, Pondération_Tarif,
Scolarisés_Famille, Parm_Scolarisation, Tarif_Extérieurs, MaVille)

Pas de référence marquée manquante...

Merci, à+ Dan
Avatar
Gafish
Dan wrote:
Voici la ligne de code qui plante :
Me.IA_Montant = Tarif(Quotient_Mini, Quotient_Maxi, Tarif_Mini,
Tarif_Maxi, Tarif_Montant, Travail_Famille, Parm_Travail,
Convention_Ville, Parm_Convention, QFam, Enfants_Famille,
Pondération_Tarif, Scolarisés_Famille, Parm_Scolarisation,
Tarif_Extérieurs, MaVille)


Vérifie que ta fonction Tarif a bien suivi avec ta base.
Est-ce qu'il n'y a pas de faute de frappe sur le nom de ta zone IA_Montant ?

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Dan
J'ai bien une fonction qui s'appelle Tarif, et qui fonctionne dans certains
cas, d'ailleurs, selon les paramètres passés...
Je fais un tour du côté de mon contrôle... RAS...
Je ne sais plus où chercher...

Merci,
A+ Dan
Avatar
Gafish
Dan wrote:
J'ai bien une fonction qui s'appelle Tarif, et qui fonctionne dans
certains cas, d'ailleurs, selon les paramètres passés...
Je fais un tour du côté de mon contrôle... RAS...
Je ne sais plus où chercher...


Peut etre un de tes paramètres. Quand il plante, il te surligne ta ligen en
jaune ?
En ce cas positionne ton curseur quelque temps sur chaque élément, et il va
te donner la valeur au moment du plantage, tu repereras celui qui pose
problème déja.

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Dan
Je pense avoir tout vérifié en mode debug :

Quotient mini : 210
Quotient maxi : 880
Tarif mini : 0.95
Tarif maxi : 4
Tarif montant : 0
Travail famille : 0
Parm travail : -1
Convention ville : 0
Parm convention : -1
QFam : 406.3587
Enfants famille : 1
Pondération tarif : 0
Scolarisés famille : Vrai
Parm scolarisation : -1
Tarif extérieurs : 5.9
Ville : 8

Ce que je ne parviens pas à savoir, c'est le rapport entre l'erreur signalée
et les vérifications à faire...
Il semblerait malgré tout que le problème vienne d'un des paramètres, ce qui
signifie que l'erreur n'est pas celle qui est signalée mais un hic
antérieur...
Je repointe les variables (contenus et déclarations)...

Merci encore, Gafish
A+ Dan
Avatar
Gafish
Dan wrote:
Je pense avoir tout vérifié en mode debug :
Ce que je ne parviens pas à savoir, c'est le rapport entre l'erreur
signalée et les vérifications à faire...
Il semblerait malgré tout que le problème vienne d'un des paramètres,
ce qui signifie que l'erreur n'est pas celle qui est signalée mais un
hic antérieur...
Je repointe les variables (contenus et déclarations)...


Par rapport à l'erreur, j'aurai tendance à dire que ca vient de
Me.IA_Montant. Mais tu m'as dit l'avoir vérifié.
Essaie de faire un
msgbox Tarif(...........)
voir ce qu'il te donne
(ou msgbox Cstr(Tarif(.....)) si tarif renvoit un numérique)

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Dan
Bonjour !

msgbox Cstr(Tarif(.....) me renvoie le même message...

J'ai réintroduit le calcul dans la procédure événementielle (sans utiliser
de fonction personnalisée), et ça passe...
Mais ça ne m'arrange pas, évidemment, car j'ai ce calcul à faire ailleurs,
d'où cette fonction assez précieuse.

J'ai détecté que, contrairement à ce que j'ai dit hier, la fonction n'était
pas utilisée avec d'autres paramètres dans cette procédure.
Le contrôle Me.IA_Montant ne semble pas être en cause, puisque je peux lui
passer une valeur fixe (0 par exemple).

J'ai essayé la fonction en lui passant des paramètres en dur :
Me.IA_Montant = (210, 880, 0.95, 4, 0, True, True, False, True, 9999, 1, 0,
True, True, 5.9, 1)

même erreur !

Je ne sais guère quoi vérifier maintenant...

Dan
Avatar
Gafish
Dan wrote:
J'ai essayé la fonction en lui passant des paramètres en dur :
Me.IA_Montant = (210, 880, 0.95, 4, 0, True, True, False, True, 9999,
1, 0, True, True, 5.9, 1)
même erreur !


C'est quoi le code de ta fonction ?

Arnaud
--
Charte du forum : http://www.mpfa.info/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
Dan
C'est une fonction qui calcule, d'après un nombre important de paramètres,
un tarif d'aide ou de facturation (application de gestion de l'enfance dans
une mairie)...

Voici le code :

Public Function Tarif(Quotient_Mini, Quotient_Maxi, Tarif_Mini, Tarif_Maxi,



















































































Tarif_Montant, Travail_Famille, Parm_Travail, Convention_Ville,
Parm_Convention, QFam, Enfants_Famille, Pondération_Tarif,
Scolarisés_Famille, Parm_Scolarisation, Tarif_Extérieurs, Ville)
Tarif = 0
If Ville = DLookup("Ville", "Paramètres") Then GoTo Calcul_Formule
If Parm_Convention = True And Convention_Ville = True Then GoTo
Calcul_Formule
If Parm_Travail = False Or Parm_Scolarisation = False Then
If Parm_Travail = True And Travail_Famille = True Then Tarif =
Tarif_Maxi
If Parm_Travail = True And Travail_Famille = False Then Tarif =
Tarif_Extérieurs
Exit Function
Else
'la ligne suivante a été rajoutée pour les extérieurs scolarisés qui se
retrouvaient hors droit
'pour les restaurants scolaires
If Travail_Famille = True Or Scolarisés_Famille = True Then Tarif =
Tarif_Extérieurs
If Travail_Famille = True And Scolarisés_Famille = True Then Tarif =
Tarif_Maxi
Exit Function
End If

Calcul_Formule:
Tarif = Tarif_Mini + ((Tarif_Maxi - Tarif_Mini) / (Quotient_Maxi -
Quotient_Mini)) * (QFam - Quotient_Mini)
If QFam < Quotient_Maxi And QFam > Quotient_Mini Then
Tarif = Tarif * (1 + Pondération_Tarif)
End If
If QFam = 0 Then Tarif = Tarif_Maxi
If Tarif > Tarif_Maxi Then Tarif = Tarif_Maxi
If Tarif < Tarif_Mini Then Tarif = Tarif_Mini

'éliminitation des décimales après la 2ème
Tarif = Int(Tarif * 100) / 100

End Function