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

2003 : Problème #Nom? lors de l'appel d'une fonction

4 réponses
Avatar
troismille
Bonjour,

J'ai 2 PCs :
A : Win XP français, Access 2000 français
B : Win Xp français, Access --> 2003 <-- français

Sur le PC A, je cree une base de données Bd1.mdb dans laquelle
j'installe:

- un module P_Test, dans lequel j'ai :
Function Test()
Test = "Ca marche"
End Function

- un formulaire Formulaire1 dans lequel je place une zone de texte Ab
dans laquelle j'écris :
=Test()

Je lance le formulaire en mode saisie de donnees, et comme prevu, il
affiche dans la zone :
Ca marche

Je copie simplement Bd1.mdb sur mon PC B

J'ouvre Bd1.MDB avec Access 2003, et j'ouvre le formulaire
Formulaire1. Surprise, il m'affiche :
#Nom? a la place de Ca marche.

Qui peut m'aider ?

- J'ai deja compacte la base de données
- J'ai essayé de la convertir ou de la valider
- J'ai telecharge tous les services packs de Office 2003
- J'ai demande la réparation d'Office par le biais d'"ajout
installation de programmes"
- J'ai essaye d'ajouter le mot clé Public devant ma fonction
- Dans outils/references, je n'ai rien de particulier

Merci d'avance, vraiment !

Michel

4 réponses

Avatar
machin
Bonjour,

Info 3000 wrote:

| - Dans outils/references, je n'ai rien de particulier

tu peux être plus précis sur les références cochées dans ton office 2003 ?
Parfois, trop de références crée des conflits.

Essaye de renommer Function Test en Test2
puis l'appel en = Test2()

Qui sait, Test est peut-être désormais une fonction réservée ;-))

Ensuite, évite de retourner des Variant et lorsque ta fonction retourne du texte écris :

Function blabla() as String
End function

ps : tu n'as pas parlé de compiler ton code : il compile bien au moins ?
(menu débogage > compiler)

à+
Avatar
Raymond [mvp]
Bonjour.

test n'est pas réservé en 2003.
si tout est rentré comme indiqué ça doit fonctionner sauf s'il y a une
erreur de références. Il est impératif de cocher dao3.6 et de la placer
avant toute ligne ado (activex data object)

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"machin" <incognito ;-)> a écrit dans le message de
news:%
Bonjour,

Info 3000 wrote:

| - Dans outils/references, je n'ai rien de particulier

tu peux être plus précis sur les références cochées dans ton office 2003 ?
Parfois, trop de références crée des conflits.

Essaye de renommer Function Test en Test2
puis l'appel en = Test2()

Qui sait, Test est peut-être désormais une fonction réservée ;-))

Ensuite, évite de retourner des Variant et lorsque ta fonction retourne
du texte écris :


Function blabla() as String
End function

ps : tu n'as pas parlé de compiler ton code : il compile bien au moins ?
(menu débogage > compiler)

à+




Avatar
machin
Bonjour Raymond

Raymond [mvp] wrote:
| Bonjour.
|
| test n'est pas réservé en 2003.
| si tout est rentré comme indiqué ça doit fonctionner sauf s'il y a une
| erreur de références. Il est impératif de cocher dao3.6 et de la
| placer avant toute ligne ado (activex data object)
|


Besoin de DAO pour ça ??

function test() as string
test = "blabla"
end function

présentement, ça me surprend

a+
Avatar
Raymond [mvp]
non pas vraiment, mais bien souvent il y a besoin de dao dans certaines
fonctions, alors ça ne mange pas de pain.

--
@+
Raymond Access MVP
http://access.seneque.free.fr/
http://access2003.free.fr/
http://users.skynet.be/mpfa/ pour débuter sur le forum


"machin" <incognito ;-)> a écrit dans le message de
news:
Bonjour Raymond

Raymond [mvp] wrote:
| Bonjour.
|
| test n'est pas réservé en 2003.
| si tout est rentré comme indiqué ça doit fonctionner sauf s'il y a une
| erreur de références. Il est impératif de cocher dao3.6 et de la
| placer avant toute ligne ado (activex data object)
|


Besoin de DAO pour ça ??

function test() as string
test = "blabla"
end function

présentement, ça me surprend

a+