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

Fonction Replace non trouvée

6 réponses
Avatar
warrio
Bonjour,

J'essaye d'extraire des données depuis une base de données en utilisant
Excel.
Une fois la connection établie à la bdd, je lance une lance une requete qui
utilise la fonction Replace(...).
Le problème est que j'obtiens l'erreur suivante : "Undefined function
'replace' in expression". (désolé, je ne connais pas la traduction exacte en
français)

Il faut noter aussi que cette fonction fonctionne sous 'vba' (en tant que
code et non pas dans une requete sql)
Je pense je dois manqué d'une référénce à une des librairies, seulement je
ne sais pas laquelle.

Les références suivantes sont cochées:
- Visual Basic for Applications
- Microsoft Excel 11.0 Object Library
- Microsoft ActiveX Data Objects 2.8 Library
- OLE Automation
- Microsoft Office 11 Objects Library
- Microsoft Scruotubg Runtime
- Microsoft DAO 3.6 Objects Library

AUCUNE référence n'est marquée comme manquante dans la liste!

Merci d'avance pour toute suggestion ou idée pertinante

6 réponses

Avatar
Caetera
"warrio" a écrit dans le message de news:
4aca5c36$0$4038$

J'essaye d'extraire des données depuis une base de données en utilisant Excel.
Une fois la connection établie à la bdd, je lance une lance une requete qui
utilise la fonction Replace(...).
Le problème est que j'obtiens l'erreur suivante : "Undefined function
'replace' in expression". (désolé, je ne connais pas la traduction exacte en
français)



*************

Utilise Substitute au lieu de Replace

Etc
Avatar
michdenis
Bonjour Warrio,

Dans Excel, il est impossible d'utiliser une fonction
personnalisée et plusieurs fonctions d'Excel qui ne font pas
partie du pilote utilisé par ADO. (Et oui, c'est très différent
dans Access)

Par exemple, tu peux utiliser une requête de ce type :

Requete = "Select Right(MonChamp,2) From MaTable ...."
Il y d'autres fonctions comme Left(), Sum(), Format() et quelques
autres fonctions....

Cependant, ce que tu peux faire, c'est d'appliquer ta fonction
sur le recordset généré en utilisant une boucle

Do while Rst.Eof = false
'ton Code en utilisant ta fonction
Rst.movenext
loop




"warrio" a écrit dans le message de groupe de discussion :
4aca5c36$0$4038$
Bonjour,

J'essaye d'extraire des données depuis une base de données en utilisant
Excel.
Une fois la connection établie à la bdd, je lance une lance une requete qui
utilise la fonction Replace(...).
Le problème est que j'obtiens l'erreur suivante : "Undefined function
'replace' in expression". (désolé, je ne connais pas la traduction exacte en
français)

Il faut noter aussi que cette fonction fonctionne sous 'vba' (en tant que
code et non pas dans une requete sql)
Je pense je dois manqué d'une référénce à une des librairies, seulement je
ne sais pas laquelle.

Les références suivantes sont cochées:
- Visual Basic for Applications
- Microsoft Excel 11.0 Object Library
- Microsoft ActiveX Data Objects 2.8 Library
- OLE Automation
- Microsoft Office 11 Objects Library
- Microsoft Scruotubg Runtime
- Microsoft DAO 3.6 Objects Library

AUCUNE référence n'est marquée comme manquante dans la liste!

Merci d'avance pour toute suggestion ou idée pertinante
Avatar
warrio
Hello Caetera,

Tu as déjà essayé Substitute?
Ni la requete sql ni le code vba ne trouvent cette fonction... alors que
Replace est trouvée par vba..

Tu aurais une explication pour cela?
Merci encore

"Caetera" <EtiennePloufCahé@wanadoo.fr> a écrit dans le message de news:

"warrio" a écrit dans le message de news:
4aca5c36$0$4038$

J'essaye d'extraire des données depuis une base de données en utilisant
Excel.
Une fois la connection établie à la bdd, je lance une lance une requete
qui utilise la fonction Replace(...).
Le problème est que j'obtiens l'erreur suivante : "Undefined function
'replace' in expression". (désolé, je ne connais pas la traduction exacte
en français)



*************

Utilise Substitute au lieu de Replace

Etc



Avatar
Caetera
"warrio" a écrit dans le message de news:
4acb27fd$0$4041$

Tu as déjà essayé Substitute?
Ni la requete sql ni le code vba ne trouvent cette fonction... alors que
Replace est trouvée par vba..



Application.Substitute(....)

Etc
Avatar
warrio
Merci infiniment pour la précision Michdenis!

J'ai une confirmation à présent.
Je peux aussi essayer de lancer la requette dans Access même en créant un
objet QueryDef et de lancer, car une boucle sur plus de 10'000 records, ca
risque de faire plus lent.

Merci encore pour cette explication.

Très bonne journée.

"michdenis" a écrit dans le message de news:

Bonjour Warrio,

Dans Excel, il est impossible d'utiliser une fonction
personnalisée et plusieurs fonctions d'Excel qui ne font pas
partie du pilote utilisé par ADO. (Et oui, c'est très différent
dans Access)

Par exemple, tu peux utiliser une requête de ce type :

Requete = "Select Right(MonChamp,2) From MaTable ...."
Il y d'autres fonctions comme Left(), Sum(), Format() et quelques
autres fonctions....

Cependant, ce que tu peux faire, c'est d'appliquer ta fonction
sur le recordset généré en utilisant une boucle

Do while Rst.Eof = false
'ton Code en utilisant ta fonction
Rst.movenext
loop




"warrio" a écrit dans le message de groupe de
discussion :
4aca5c36$0$4038$
Bonjour,

J'essaye d'extraire des données depuis une base de données en utilisant
Excel.
Une fois la connection établie à la bdd, je lance une lance une requete
qui
utilise la fonction Replace(...).
Le problème est que j'obtiens l'erreur suivante : "Undefined function
'replace' in expression". (désolé, je ne connais pas la traduction exacte
en
français)

Il faut noter aussi que cette fonction fonctionne sous 'vba' (en tant que
code et non pas dans une requete sql)
Je pense je dois manqué d'une référénce à une des librairies, seulement je
ne sais pas laquelle.

Les références suivantes sont cochées:
- Visual Basic for Applications
- Microsoft Excel 11.0 Object Library
- Microsoft ActiveX Data Objects 2.8 Library
- OLE Automation
- Microsoft Office 11 Objects Library
- Microsoft Scruotubg Runtime
- Microsoft DAO 3.6 Objects Library

AUCUNE référence n'est marquée comme manquante dans la liste!

Merci d'avance pour toute suggestion ou idée pertinante



Avatar
warrio
Hello Caetera,

Je ne suis pas sur que tu es compris la question de départ...
Michdenis a répondu judicieusement à ma recherche.

Bonne journée

"Caetera" <EtiennePloufCahé@wanadoo.fr> a écrit dans le message de news:

"warrio" a écrit dans le message de news:
4acb27fd$0$4041$

Tu as déjà essayé Substitute?
Ni la requete sql ni le code vba ne trouvent cette fonction... alors que
Replace est trouvée par vba..



Application.Substitute(....)

Etc