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

Problème avec le FileSystemObject ou import de fichier txt impossible ?

5 réponses
Avatar
Dom
Bonsoir,

Dans une application sous Access 97, j'utilise la fonction suivante pour
renommer en .txt un fichier portant une extension exotique...pour ensuite
l'importer dans une table et lui appliquer ensuite certains traitements.

Sur plusieurs centaines de micros sous XP Pro SP1 ou SP2, voire sous
Win98SE, cela fonctionne sans aucun problème.

En revanche, sur d'autres micros dès que l'on clique sur le bouton de
commande de la fonction, j'ai un beau message d'erreur : "l'expression sur
clic entree comme paramêtre de la propriété de type evénement est à
l'origine d'une erreur fichier introuvable".

Le fichier existe bel et bien pourtant et se trouve dans le bon dossier.

J'imagine qu'il y a un problème avec une dll ou avec un module d'Office,
mais j'ai un peu de mal à cibler le problème. Certes, en désinstallant
Office, puis en le réinstallant en option personnalisée et en cochant toutes
les options (avec entre les deux suppression des fichiers résiduels et
nettoyage de la BDR), j'arrive à mes fins et l'erreur ne se reproduit plus.
Mais bon, c'est assez fastidieux...

Est-ce que quelqu'un de ce forum aurait été confronté à ce problème et si
oui pourrait-il m'indiquer comment il (ou elle) s'en est sorti(e) ?
Qu'est-ce qui peut bien manquer sur ces PC ?

Merci d'avance pour vos éclaircissements.

Dominique.


----------
Function Collec()

Dim fs, Fn, FLength, Fext, FDot, FOrig
Set fs = CreateObject("Scripting.FileSystemObject")
Set Fn = fs.Getfile("C:\Toto\Titi\Editions\impecran.001")
FOrig = Fn.Name
FLength = Len(Fn.Name)
Fext = Right(Fn.Name, 4)
FDot = Left(Fext, 1)
If FDot = "." Then
If Fext <> ".txt" Then
Fn.Name = Left(Fn.Name, (FLength - 3))
Fn.Name = Fn.Name & ".txt"
End If
Else
Fn.Name = Fn.Name & ".txt"
End If
DoCmd.DeleteObject acTable, "FICOLLEC"
DoCmd.TransferText acImportFixed, "FICOLLEC Spécification d'importation",
"FICOLLEC", "C:\Toto\Titi\Editions\impecran.txt", False, ""
Fn.Name = FOrig
DoCmd.OpenQuery "RFicollec1", acNormal, acEdit
DoCmd.OpenQuery "RFicollec2", acNormal, acEdit
DoCmd.Maximize

MsgBox "Import du fichier FICOLLEC réalisé avec succès !", vbInformation
End Function
---------------

5 réponses

Avatar
Raymond [mvp]
Bonjour.

as-tu vérifié que tu n'avais pas une erreur de référence, et que la
librairie cripting runtime était bien présente et référencée dans ton
application? si la librairie est absente, ce type de message peut
s'afficher.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix ‘07 – Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"Dom" a écrit dans le message de news:
46546773$0$22044$
| Bonsoir,
|
| Dans une application sous Access 97, j'utilise la fonction suivante pour
| renommer en .txt un fichier portant une extension exotique...pour ensuite
| l'importer dans une table et lui appliquer ensuite certains traitements.
|
| Sur plusieurs centaines de micros sous XP Pro SP1 ou SP2, voire sous
| Win98SE, cela fonctionne sans aucun problème.
|
| En revanche, sur d'autres micros dès que l'on clique sur le bouton de
| commande de la fonction, j'ai un beau message d'erreur : "l'expression sur
| clic entree comme paramêtre de la propriété de type evénement est à
| l'origine d'une erreur fichier introuvable".
|
| Le fichier existe bel et bien pourtant et se trouve dans le bon dossier.
|
| J'imagine qu'il y a un problème avec une dll ou avec un module d'Office,
| mais j'ai un peu de mal à cibler le problème. Certes, en désinstallant
| Office, puis en le réinstallant en option personnalisée et en cochant
toutes
| les options (avec entre les deux suppression des fichiers résiduels et
| nettoyage de la BDR), j'arrive à mes fins et l'erreur ne se reproduit
plus.
| Mais bon, c'est assez fastidieux...
|
| Est-ce que quelqu'un de ce forum aurait été confronté à ce problème et si
| oui pourrait-il m'indiquer comment il (ou elle) s'en est sorti(e) ?
| Qu'est-ce qui peut bien manquer sur ces PC ?
|
| Merci d'avance pour vos éclaircissements.
|
| Dominique.
|
|
| ----------
| Function Collec()
|
| Dim fs, Fn, FLength, Fext, FDot, FOrig
| Set fs = CreateObject("Scripting.FileSystemObject")
| Set Fn = fs.Getfile("C:TotoTitiEditionsimpecran.001")
| FOrig = Fn.Name
| FLength = Len(Fn.Name)
| Fext = Right(Fn.Name, 4)
| FDot = Left(Fext, 1)
| If FDot = "." Then
| If Fext <> ".txt" Then
| Fn.Name = Left(Fn.Name, (FLength - 3))
| Fn.Name = Fn.Name & ".txt"
| End If
| Else
| Fn.Name = Fn.Name & ".txt"
| End If
| DoCmd.DeleteObject acTable, "FICOLLEC"
| DoCmd.TransferText acImportFixed, "FICOLLEC Spécification d'importation",
| "FICOLLEC", "C:TotoTitiEditionsimpecran.txt", False, ""
| Fn.Name = FOrig
| DoCmd.OpenQuery "RFicollec1", acNormal, acEdit
| DoCmd.OpenQuery "RFicollec2", acNormal, acEdit
| DoCmd.Maximize
|
| MsgBox "Import du fichier FICOLLEC réalisé avec succès !", vbInformation
| End Function
| ---------------
|
|
Avatar
Dom
Hello Raymond,

Et merci de ta réponse.

J'avais aussi pensé à cela, mais tests effectués sur mon PC (sous XP SP2),
je n'avais pas la référence effectivement et cela fonctionnait quand même.
Je l'ai mis pour voir..., et cela fonctionnait toujours, puis je l'ai
enlevée, et cela fonctionnait encore ! Entre le "mettage" et "l'enlevage"
(pardon d'avance pour ce barbarisme), j'ai testé en redémarrage simple puis
après arrêt complet. Tout baigne.

Mais je suis de ton avis, le problème est sans doute là, et pour le
résoudre, va falloir que je prenne le contrôle à distance des pc en cause
via VNC Netmeeting ou autres..., pffff.

Peut-être en (ré)installant le WMS ? Vais voir cela.

Dominique.



"Raymond [mvp]" a écrit dans le message
de news:
Bonjour.

as-tu vérifié que tu n'avais pas une erreur de référence, et que la
librairie cripting runtime était bien présente et référencée dans ton
application? si la librairie est absente, ce type de message peut
s'afficher.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"Dom" a écrit dans le message de news:
46546773$0$22044$
| Bonsoir,
|
| Dans une application sous Access 97, j'utilise la fonction suivante pour
| renommer en .txt un fichier portant une extension exotique...pour
ensuite
| l'importer dans une table et lui appliquer ensuite certains traitements.
|
| Sur plusieurs centaines de micros sous XP Pro SP1 ou SP2, voire sous
| Win98SE, cela fonctionne sans aucun problème.
|
| En revanche, sur d'autres micros dès que l'on clique sur le bouton de
| commande de la fonction, j'ai un beau message d'erreur : "l'expression
sur
| clic entree comme paramêtre de la propriété de type evénement est à
| l'origine d'une erreur fichier introuvable".
|
| Le fichier existe bel et bien pourtant et se trouve dans le bon dossier.
|
| J'imagine qu'il y a un problème avec une dll ou avec un module d'Office,
| mais j'ai un peu de mal à cibler le problème. Certes, en désinstallant
| Office, puis en le réinstallant en option personnalisée et en cochant
toutes
| les options (avec entre les deux suppression des fichiers résiduels et
| nettoyage de la BDR), j'arrive à mes fins et l'erreur ne se reproduit
plus.
| Mais bon, c'est assez fastidieux...
|
| Est-ce que quelqu'un de ce forum aurait été confronté à ce problème et
si
| oui pourrait-il m'indiquer comment il (ou elle) s'en est sorti(e) ?
| Qu'est-ce qui peut bien manquer sur ces PC ?
|
| Merci d'avance pour vos éclaircissements.
|
| Dominique.
|
|
| ----------
| Function Collec()
|
| Dim fs, Fn, FLength, Fext, FDot, FOrig
| Set fs = CreateObject("Scripting.FileSystemObject")
| Set Fn = fs.Getfile("C:TotoTitiEditionsimpecran.001")
| FOrig = Fn.Name
| FLength = Len(Fn.Name)
| Fext = Right(Fn.Name, 4)
| FDot = Left(Fext, 1)
| If FDot = "." Then
| If Fext <> ".txt" Then
| Fn.Name = Left(Fn.Name, (FLength - 3))
| Fn.Name = Fn.Name & ".txt"
| End If
| Else
| Fn.Name = Fn.Name & ".txt"
| End If
| DoCmd.DeleteObject acTable, "FICOLLEC"
| DoCmd.TransferText acImportFixed, "FICOLLEC Spécification
d'importation",
| "FICOLLEC", "C:TotoTitiEditionsimpecran.txt", False, ""
| Fn.Name = FOrig
| DoCmd.OpenQuery "RFicollec1", acNormal, acEdit
| DoCmd.OpenQuery "RFicollec2", acNormal, acEdit
| DoCmd.Maximize
|
| MsgBox "Import du fichier FICOLLEC réalisé avec succès !", vbInformation
| End Function
| ---------------
|
|




Avatar
jerome crevecoeur
Pourquoi ne pas utiliser la fonction name d'access?


Chez les amateurs de VB6 , FSO est déconseillé.
(Voir cette fiche:
http://faq.vb.free.fr/index.php?question6
)
Cordialement

Hello Raymond,

Et merci de ta réponse.

J'avais aussi pensé à cela, mais tests effectués sur mon PC (sous XP SP2),
je n'avais pas la référence effectivement et cela fonctionnait quan d même.
Je l'ai mis pour voir..., et cela fonctionnait toujours, puis je l'ai
enlevée, et cela fonctionnait encore ! Entre le "mettage" et "l'enlev age"
(pardon d'avance pour ce barbarisme), j'ai testé en redémarrage sim ple puis
après arrêt complet. Tout baigne.

Mais je suis de ton avis, le problème est sans doute là, et pour le
résoudre, va falloir que je prenne le contrôle à distance des pc en cause
via VNC Netmeeting ou autres..., pffff.

Peut-être en (ré)installant le WMS ? Vais voir cela.

Dominique.



"Raymond [mvp]" a écrit dans le m essage
de news:
Bonjour.

as-tu vérifié que tu n'avais pas une erreur de référence, et q ue la
librairie cripting runtime était bien présente et référencée dans ton
application? si la librairie est absente, ce type de message peut
s'afficher.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativi té !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-4 5c7-9d2f-c3326db58273


"Dom" a écrit dans le message de news:
46546773$0$22044$
| Bonsoir,
|
| Dans une application sous Access 97, j'utilise la fonction suivante pour
| renommer en .txt un fichier portant une extension exotique...pour
ensuite
| l'importer dans une table et lui appliquer ensuite certains traiteme nts.
|
| Sur plusieurs centaines de micros sous XP Pro SP1 ou SP2, voire sous
| Win98SE, cela fonctionne sans aucun problème.
|
| En revanche, sur d'autres micros dès que l'on clique sur le bouton de
| commande de la fonction, j'ai un beau message d'erreur : "l'expressi on
sur
| clic entree comme paramêtre de la propriété de type evénemen t est à
| l'origine d'une erreur fichier introuvable".
|
| Le fichier existe bel et bien pourtant et se trouve dans le bon doss ier.
|
| J'imagine qu'il y a un problème avec une dll ou avec un module d'O ffice,
| mais j'ai un peu de mal à cibler le problème. Certes, en désin stallant
| Office, puis en le réinstallant en option personnalisée et en co chant
toutes
| les options (avec entre les deux suppression des fichiers résiduel s et
| nettoyage de la BDR), j'arrive à mes fins et l'erreur ne se reprod uit
plus.
| Mais bon, c'est assez fastidieux...
|
| Est-ce que quelqu'un de ce forum aurait été confronté à ce p roblème et
si
| oui pourrait-il m'indiquer comment il (ou elle) s'en est sorti(e) ?
| Qu'est-ce qui peut bien manquer sur ces PC ?
|
| Merci d'avance pour vos éclaircissements.
|
| Dominique.
|
|
| ----------
| Function Collec()
|
| Dim fs, Fn, FLength, Fext, FDot, FOrig
| Set fs = CreateObject("Scripting.FileSystemObject")
| Set Fn = fs.Getfile("C:TotoTitiEditionsimpecran.001")
| FOrig = Fn.Name
| FLength = Len(Fn.Name)
| Fext = Right(Fn.Name, 4)
| FDot = Left(Fext, 1)
| If FDot = "." Then
| If Fext <> ".txt" Then
| Fn.Name = Left(Fn.Name, (FLength - 3))
| Fn.Name = Fn.Name & ".txt"
| End If
| Else
| Fn.Name = Fn.Name & ".txt"
| End If
| DoCmd.DeleteObject acTable, "FICOLLEC"
| DoCmd.TransferText acImportFixed, "FICOLLEC Spécification
d'importation",
| "FICOLLEC", "C:TotoTitiEditionsimpecran.txt", False, ""
| Fn.Name = FOrig
| DoCmd.OpenQuery "RFicollec1", acNormal, acEdit
| DoCmd.OpenQuery "RFicollec2", acNormal, acEdit
| DoCmd.Maximize
|
| MsgBox "Import du fichier FICOLLEC réalisé avec succès !", vbI nformation
| End Function
| ---------------
|
|








Avatar
Dom
Bonsoir jerome,

Euh..., VB6 existait à l'époque d'Office 97 ?

Et puis, la fonction Name, je l'utilise déjà dans mon code (mais sans doute
mal ?)

Je précise que je ne suis pas "un véritable développeur" que ce soit sous
Access 97 ou autre, mais plus prosaïquement un T.A.U.I, avec une foultitude
de problèmes très divers... Je touche à tout sans être spécialiste... Et
parfois, quand mon employeur me demande un prog, je m'y colle, mais pffff
c'est galère parfois...

Merci de ta réponse.

Dominique.


"jerome crevecoeur"
a écrit dans le message de news:
Pourquoi ne pas utiliser la fonction name d'access?


Chez les amateurs de VB6 , FSO est déconseillé.
(Voir cette fiche:
http://faq.vb.free.fr/index.php?question6
)
Cordialement

Hello Raymond,

Et merci de ta réponse.

J'avais aussi pensé à cela, mais tests effectués sur mon PC (sous XP SP2),
je n'avais pas la référence effectivement et cela fonctionnait quand même.
Je l'ai mis pour voir..., et cela fonctionnait toujours, puis je l'ai
enlevée, et cela fonctionnait encore ! Entre le "mettage" et "l'enlevage"
(pardon d'avance pour ce barbarisme), j'ai testé en redémarrage simple
puis après arrêt complet. Tout baigne.

Mais je suis de ton avis, le problème est sans doute là, et pour le
résoudre, va falloir que je prenne le contrôle à distance des pc en cause
via VNC Netmeeting ou autres..., pffff.

Peut-être en (ré)installant le WMS ? Vais voir cela.

Dominique.



"Raymond [mvp]" a écrit dans le
message de news:
Bonjour.

as-tu vérifié que tu n'avais pas une erreur de référence, et que la
librairie cripting runtime était bien présente et référencée dans ton
application? si la librairie est absente, ce type de message peut
s'afficher.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix '07 - Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"Dom" a écrit dans le message de news:
46546773$0$22044$
| Bonsoir,
|
| Dans une application sous Access 97, j'utilise la fonction suivante
pour
| renommer en .txt un fichier portant une extension exotique...pour
ensuite
| l'importer dans une table et lui appliquer ensuite certains
traitements.
|
| Sur plusieurs centaines de micros sous XP Pro SP1 ou SP2, voire sous
| Win98SE, cela fonctionne sans aucun problème.
|
| En revanche, sur d'autres micros dès que l'on clique sur le bouton de
| commande de la fonction, j'ai un beau message d'erreur : "l'expression
sur
| clic entree comme paramêtre de la propriété de type evénement est à
| l'origine d'une erreur fichier introuvable".
|
| Le fichier existe bel et bien pourtant et se trouve dans le bon
dossier.
|
| J'imagine qu'il y a un problème avec une dll ou avec un module
d'Office,
| mais j'ai un peu de mal à cibler le problème. Certes, en désinstallant
| Office, puis en le réinstallant en option personnalisée et en cochant
toutes
| les options (avec entre les deux suppression des fichiers résiduels et
| nettoyage de la BDR), j'arrive à mes fins et l'erreur ne se reproduit
plus.
| Mais bon, c'est assez fastidieux...
|
| Est-ce que quelqu'un de ce forum aurait été confronté à ce problème et
si
| oui pourrait-il m'indiquer comment il (ou elle) s'en est sorti(e) ?
| Qu'est-ce qui peut bien manquer sur ces PC ?
|
| Merci d'avance pour vos éclaircissements.
|
| Dominique.
|
|
| ----------
| Function Collec()
|
| Dim fs, Fn, FLength, Fext, FDot, FOrig
| Set fs = CreateObject("Scripting.FileSystemObject")
| Set Fn = fs.Getfile("C:TotoTitiEditionsimpecran.001")
| FOrig = Fn.Name
| FLength = Len(Fn.Name)
| Fext = Right(Fn.Name, 4)
| FDot = Left(Fext, 1)
| If FDot = "." Then
| If Fext <> ".txt" Then
| Fn.Name = Left(Fn.Name, (FLength - 3))
| Fn.Name = Fn.Name & ".txt"
| End If
| Else
| Fn.Name = Fn.Name & ".txt"
| End If
| DoCmd.DeleteObject acTable, "FICOLLEC"
| DoCmd.TransferText acImportFixed, "FICOLLEC Spécification
d'importation",
| "FICOLLEC", "C:TotoTitiEditionsimpecran.txt", False, ""
| Fn.Name = FOrig
| DoCmd.OpenQuery "RFicollec1", acNormal, acEdit
| DoCmd.OpenQuery "RFicollec2", acNormal, acEdit
| DoCmd.Maximize
|
| MsgBox "Import du fichier FICOLLEC réalisé avec succès !",
vbInformation
| End Function
| ---------------
|
|








Avatar
Raymond [mvp]
Bonsoir.

VB d'origine date de 1987 environ. en 2001, vb6 était la référence vb. en
97, si ce n'était vb6 c'était au moins vb5.

--
@+
Raymond Access MVP http://OfficeSystem.Access.free.fr/
Pour débuter sur le forum: http://www.mpfa.info/
Non Stop Mix ‘07 – Paris. La nouvelle scène web fête la créativité !
http://www.comscamp.com/Tracker/Redirect.ashx?linkid°64304e-439a-45c7-9d2f-c3326db58273


"Dom" a écrit dans le message de news:
46571801$0$26550$
| Bonsoir jerome,
|
| Euh..., VB6 existait à l'époque d'Office 97 ?
|