Suite à la réinstallation complet du PC de mon boulot et donc de la
réinstallation de mon programme , une erreur d'automation ce produit apres
la création de l'objet EXCEL.
Je ne voir pas quelle DLL, librerie manque ou quelle astuce exite pour
résoudre mon probleme.
Il s'agit d'une banale collecte d'information, j'envoie un document Word aux adhérents d'une association, avec un formulaire dedans, et quand les fichiers sont revenus remplis et que je les ai tous mis dans le même répertoire, j'ai une macro pour centraliser les infos des documents Word, afin de faciliter ensuite le traitement (décomptes, statistiques ...)
Sur la machine de développement ça marchait impec, mais évidemment si Word n'est pas reconnu en Automation ...
J'ai fait ça avec une macro Access, mais ça doit pouvoir facilement être adapté dans Excel, si tu préfères je peux m'occuper de ça.
Si il fallait le refaire je n'utiliserais plus FSO, car j'ai appris tout-à-l'heure pourquoi il valait mieux éviter. J'ai une macro pour sortir le répertoire parent d'un fichier d'après le chemin, en s'arrêtant à la dernière barre inverse, forcément c'est un peu lourdingue.
Alors quand on arrive à AppWrd.Visible = True, on me répond que cette propriété n'est pas gérée par cet objet, et il semblerait qu'en réalité l'objet AppWrd ne soit pas vraiment créé. En tout cas il n'y a pas de trace de Word dans le gestionnaire des tâches.
_________________________________________________________ Public Function Import() Dim fso As FileSystemObject Dim AppWrd As Object Dim monDoc As Object Dim rep As Object Dim NomFichier As String Dim Rs As Recordset
Set fso = New FileSystemObject Set rep = fso.GetFile(CurrentDb().Name).ParentFolder Debug.Print rep.Path Set AppWrd = CreateObject("Word.Document") AppWrd.Visible = True NomFichier = Dir(rep.Path + "*.doc") ChDrive rep.Path ChDir rep.Path Set Rs = CurrentDb().OpenRecordset("tabImport") While NomFichier <> "" Debug.Print NomFichier Set monDoc = AppWrd.Documents.Open(rep.Path + "" + NomFichier) Rs.AddNew Rs!Nom = monDoc.FormFields("Nom").Result Rs!Prenom = monDoc.FormFields("Prenom").Result Rs.UPDATE AppWrd.Documents.Close NomFichier = Dir Wend Rs.Close AppWrd.Quit Set AppWrd = Nothing Set fso = Nothing Set Rs = Nothing End Function
_____________________________________ tous69 a écrit, le 19/10/2004 19:56 :
Bonjour
Ho....... faite ta macro elle sert à quoi ? il est possible que je format un pc d'ici 15 jours Si tu veux je veux bien l'a teste ( si sensé que je puisse ) ta macro et si tu n'est pas presser!
tous30@ libre .fr remplace libre par free
Salut,
Il s'agit d'une banale collecte d'information, j'envoie un document Word
aux adhérents d'une association, avec un formulaire dedans, et quand les
fichiers sont revenus remplis et que je les ai tous mis dans le même
répertoire, j'ai une macro pour centraliser les infos des documents
Word, afin de faciliter ensuite le traitement (décomptes, statistiques ...)
Sur la machine de développement ça marchait impec, mais évidemment si
Word n'est pas reconnu en Automation ...
J'ai fait ça avec une macro Access, mais ça doit pouvoir facilement être
adapté dans Excel, si tu préfères je peux m'occuper de ça.
Si il fallait le refaire je n'utiliserais plus FSO, car j'ai appris
tout-à-l'heure pourquoi il valait mieux éviter. J'ai une macro pour
sortir le répertoire parent d'un fichier d'après le chemin, en
s'arrêtant à la dernière barre inverse, forcément c'est un peu lourdingue.
Alors quand on arrive à AppWrd.Visible = True, on me répond que cette
propriété n'est pas gérée par cet objet, et il semblerait qu'en réalité
l'objet AppWrd ne soit pas vraiment créé. En tout cas il n'y a pas de
trace de Word dans le gestionnaire des tâches.
_________________________________________________________
Public Function Import()
Dim fso As FileSystemObject
Dim AppWrd As Object
Dim monDoc As Object
Dim rep As Object
Dim NomFichier As String
Dim Rs As Recordset
Set fso = New FileSystemObject
Set rep = fso.GetFile(CurrentDb().Name).ParentFolder
Debug.Print rep.Path
Set AppWrd = CreateObject("Word.Document")
AppWrd.Visible = True
NomFichier = Dir(rep.Path + "*.doc")
ChDrive rep.Path
ChDir rep.Path
Set Rs = CurrentDb().OpenRecordset("tabImport")
While NomFichier <> ""
Debug.Print NomFichier
Set monDoc = AppWrd.Documents.Open(rep.Path + "" + NomFichier)
Rs.AddNew
Rs!Nom = monDoc.FormFields("Nom").Result
Rs!Prenom = monDoc.FormFields("Prenom").Result
Rs.UPDATE
AppWrd.Documents.Close
NomFichier = Dir
Wend
Rs.Close
AppWrd.Quit
Set AppWrd = Nothing
Set fso = Nothing
Set Rs = Nothing
End Function
_____________________________________
tous69 a écrit, le 19/10/2004 19:56 :
Bonjour
Ho....... faite ta macro elle sert à quoi ?
il est possible que je format un pc d'ici 15 jours
Si tu veux je veux bien l'a teste ( si sensé que je puisse ) ta macro et si
tu n'est pas presser!
Il s'agit d'une banale collecte d'information, j'envoie un document Word aux adhérents d'une association, avec un formulaire dedans, et quand les fichiers sont revenus remplis et que je les ai tous mis dans le même répertoire, j'ai une macro pour centraliser les infos des documents Word, afin de faciliter ensuite le traitement (décomptes, statistiques ...)
Sur la machine de développement ça marchait impec, mais évidemment si Word n'est pas reconnu en Automation ...
J'ai fait ça avec une macro Access, mais ça doit pouvoir facilement être adapté dans Excel, si tu préfères je peux m'occuper de ça.
Si il fallait le refaire je n'utiliserais plus FSO, car j'ai appris tout-à-l'heure pourquoi il valait mieux éviter. J'ai une macro pour sortir le répertoire parent d'un fichier d'après le chemin, en s'arrêtant à la dernière barre inverse, forcément c'est un peu lourdingue.
Alors quand on arrive à AppWrd.Visible = True, on me répond que cette propriété n'est pas gérée par cet objet, et il semblerait qu'en réalité l'objet AppWrd ne soit pas vraiment créé. En tout cas il n'y a pas de trace de Word dans le gestionnaire des tâches.
_________________________________________________________ Public Function Import() Dim fso As FileSystemObject Dim AppWrd As Object Dim monDoc As Object Dim rep As Object Dim NomFichier As String Dim Rs As Recordset
Set fso = New FileSystemObject Set rep = fso.GetFile(CurrentDb().Name).ParentFolder Debug.Print rep.Path Set AppWrd = CreateObject("Word.Document") AppWrd.Visible = True NomFichier = Dir(rep.Path + "*.doc") ChDrive rep.Path ChDir rep.Path Set Rs = CurrentDb().OpenRecordset("tabImport") While NomFichier <> "" Debug.Print NomFichier Set monDoc = AppWrd.Documents.Open(rep.Path + "" + NomFichier) Rs.AddNew Rs!Nom = monDoc.FormFields("Nom").Result Rs!Prenom = monDoc.FormFields("Prenom").Result Rs.UPDATE AppWrd.Documents.Close NomFichier = Dir Wend Rs.Close AppWrd.Quit Set AppWrd = Nothing Set fso = Nothing Set Rs = Nothing End Function
_____________________________________ tous69 a écrit, le 19/10/2004 19:56 :
Bonjour
Ho....... faite ta macro elle sert à quoi ? il est possible que je format un pc d'ici 15 jours Si tu veux je veux bien l'a teste ( si sensé que je puisse ) ta macro et si tu n'est pas presser!
tous30@ libre .fr remplace libre par free
tous69
bonjour
Alors tu as eu le mems problem que moi! une erreur d'automation.
Moi j'ai fait comme ma indiquer Patrick Philippot voir post suivant et tout est rentré dans l'ordre . ( This error is caused by an incompatible version of a DLL that was installed on the system, such as Oleaut32.dll, Olepro32.dll, Asycfilt.dll, Stdole2.tlb. For example, version 3.50 of Oleaut32.dll is installed and used only by Windows XP and so causes this error if it is installed on a machine running any other operating system.)
enfin si ca peut d'aide en tous cas je bloque sur la memes instruction hors mis que moi c'etait sur excel mais les dll etant les memes
Ho faite c'est quoi FSO ?
tous30@ libre .fr Remplace libre par free
Gloops a écrit dans le message : 41768070$0$28558$
Salut,
Il s'agit d'une banale collecte d'information, j'envoie un document Word aux adhérents d'une association, avec un formulaire dedans, et quand les fichiers sont revenus remplis et que je les ai tous mis dans le même répertoire, j'ai une macro pour centraliser les infos des documents Word, afin de faciliter ensuite le traitement (décomptes, statistiques
...)
Sur la machine de développement ça marchait impec, mais évidemment si Word n'est pas reconnu en Automation ...
J'ai fait ça avec une macro Access, mais ça doit pouvoir facilement être adapté dans Excel, si tu préfères je peux m'occuper de ça.
Si il fallait le refaire je n'utiliserais plus FSO, car j'ai appris tout-à-l'heure pourquoi il valait mieux éviter. J'ai une macro pour sortir le répertoire parent d'un fichier d'après le chemin, en s'arrêtant à la dernière barre inverse, forcément c'est un peu lourdingue.
Alors quand on arrive à AppWrd.Visible = True, on me répond que cette propriété n'est pas gérée par cet objet, et il semblerait qu'en réalité l'objet AppWrd ne soit pas vraiment créé. En tout cas il n'y a pas de trace de Word dans le gestionnaire des tâches.
_________________________________________________________ Public Function Import() Dim fso As FileSystemObject Dim AppWrd As Object Dim monDoc As Object Dim rep As Object Dim NomFichier As String Dim Rs As Recordset
Set fso = New FileSystemObject Set rep = fso.GetFile(CurrentDb().Name).ParentFolder Debug.Print rep.Path Set AppWrd = CreateObject("Word.Document") AppWrd.Visible = True NomFichier = Dir(rep.Path + "*.doc") ChDrive rep.Path ChDir rep.Path Set Rs = CurrentDb().OpenRecordset("tabImport") While NomFichier <> "" Debug.Print NomFichier Set monDoc = AppWrd.Documents.Open(rep.Path + "" + NomFichier) Rs.AddNew Rs!Nom = monDoc.FormFields("Nom").Result Rs!Prenom = monDoc.FormFields("Prenom").Result Rs.UPDATE AppWrd.Documents.Close NomFichier = Dir Wend Rs.Close AppWrd.Quit Set AppWrd = Nothing Set fso = Nothing Set Rs = Nothing End Function
_____________________________________ tous69 a écrit, le 19/10/2004 19:56 :
> Bonjour > > Ho....... faite ta macro elle sert à quoi ? > il est possible que je format un pc d'ici 15 jours > Si tu veux je veux bien l'a teste ( si sensé que je puisse ) ta macro et
si
> tu n'est pas presser! > > tous30@ libre .fr > remplace libre par free > >
bonjour
Alors tu as eu le mems problem que moi! une erreur d'automation.
Moi j'ai fait comme ma indiquer Patrick Philippot voir post suivant
et tout est rentré dans l'ordre .
( This error is caused by an incompatible version of a DLL that was
installed on the system, such as Oleaut32.dll, Olepro32.dll, Asycfilt.dll,
Stdole2.tlb. For example, version 3.50 of Oleaut32.dll is installed and used
only by Windows XP and so causes this error if it is installed on a machine
running any other operating system.)
enfin si ca peut d'aide en tous cas je bloque sur la memes instruction hors
mis que moi c'etait sur excel
mais les dll etant les memes
Ho faite c'est quoi FSO ?
tous30@ libre .fr
Remplace libre par free
Gloops <gloops@niark.fr> a écrit dans le message :
41768070$0$28558$8fcfb975@news.wanadoo.fr...
Salut,
Il s'agit d'une banale collecte d'information, j'envoie un document Word
aux adhérents d'une association, avec un formulaire dedans, et quand les
fichiers sont revenus remplis et que je les ai tous mis dans le même
répertoire, j'ai une macro pour centraliser les infos des documents
Word, afin de faciliter ensuite le traitement (décomptes, statistiques
...)
Sur la machine de développement ça marchait impec, mais évidemment si
Word n'est pas reconnu en Automation ...
J'ai fait ça avec une macro Access, mais ça doit pouvoir facilement être
adapté dans Excel, si tu préfères je peux m'occuper de ça.
Si il fallait le refaire je n'utiliserais plus FSO, car j'ai appris
tout-à-l'heure pourquoi il valait mieux éviter. J'ai une macro pour
sortir le répertoire parent d'un fichier d'après le chemin, en
s'arrêtant à la dernière barre inverse, forcément c'est un peu lourdingue.
Alors quand on arrive à AppWrd.Visible = True, on me répond que cette
propriété n'est pas gérée par cet objet, et il semblerait qu'en réalité
l'objet AppWrd ne soit pas vraiment créé. En tout cas il n'y a pas de
trace de Word dans le gestionnaire des tâches.
_________________________________________________________
Public Function Import()
Dim fso As FileSystemObject
Dim AppWrd As Object
Dim monDoc As Object
Dim rep As Object
Dim NomFichier As String
Dim Rs As Recordset
Set fso = New FileSystemObject
Set rep = fso.GetFile(CurrentDb().Name).ParentFolder
Debug.Print rep.Path
Set AppWrd = CreateObject("Word.Document")
AppWrd.Visible = True
NomFichier = Dir(rep.Path + "*.doc")
ChDrive rep.Path
ChDir rep.Path
Set Rs = CurrentDb().OpenRecordset("tabImport")
While NomFichier <> ""
Debug.Print NomFichier
Set monDoc = AppWrd.Documents.Open(rep.Path + "" + NomFichier)
Rs.AddNew
Rs!Nom = monDoc.FormFields("Nom").Result
Rs!Prenom = monDoc.FormFields("Prenom").Result
Rs.UPDATE
AppWrd.Documents.Close
NomFichier = Dir
Wend
Rs.Close
AppWrd.Quit
Set AppWrd = Nothing
Set fso = Nothing
Set Rs = Nothing
End Function
_____________________________________
tous69 a écrit, le 19/10/2004 19:56 :
> Bonjour
>
> Ho....... faite ta macro elle sert à quoi ?
> il est possible que je format un pc d'ici 15 jours
> Si tu veux je veux bien l'a teste ( si sensé que je puisse ) ta macro et
si
> tu n'est pas presser!
>
> tous30@ libre .fr
> remplace libre par free
>
>
Alors tu as eu le mems problem que moi! une erreur d'automation.
Moi j'ai fait comme ma indiquer Patrick Philippot voir post suivant et tout est rentré dans l'ordre . ( This error is caused by an incompatible version of a DLL that was installed on the system, such as Oleaut32.dll, Olepro32.dll, Asycfilt.dll, Stdole2.tlb. For example, version 3.50 of Oleaut32.dll is installed and used only by Windows XP and so causes this error if it is installed on a machine running any other operating system.)
enfin si ca peut d'aide en tous cas je bloque sur la memes instruction hors mis que moi c'etait sur excel mais les dll etant les memes
Ho faite c'est quoi FSO ?
tous30@ libre .fr Remplace libre par free
Gloops a écrit dans le message : 41768070$0$28558$
Salut,
Il s'agit d'une banale collecte d'information, j'envoie un document Word aux adhérents d'une association, avec un formulaire dedans, et quand les fichiers sont revenus remplis et que je les ai tous mis dans le même répertoire, j'ai une macro pour centraliser les infos des documents Word, afin de faciliter ensuite le traitement (décomptes, statistiques
...)
Sur la machine de développement ça marchait impec, mais évidemment si Word n'est pas reconnu en Automation ...
J'ai fait ça avec une macro Access, mais ça doit pouvoir facilement être adapté dans Excel, si tu préfères je peux m'occuper de ça.
Si il fallait le refaire je n'utiliserais plus FSO, car j'ai appris tout-à-l'heure pourquoi il valait mieux éviter. J'ai une macro pour sortir le répertoire parent d'un fichier d'après le chemin, en s'arrêtant à la dernière barre inverse, forcément c'est un peu lourdingue.
Alors quand on arrive à AppWrd.Visible = True, on me répond que cette propriété n'est pas gérée par cet objet, et il semblerait qu'en réalité l'objet AppWrd ne soit pas vraiment créé. En tout cas il n'y a pas de trace de Word dans le gestionnaire des tâches.
_________________________________________________________ Public Function Import() Dim fso As FileSystemObject Dim AppWrd As Object Dim monDoc As Object Dim rep As Object Dim NomFichier As String Dim Rs As Recordset
Set fso = New FileSystemObject Set rep = fso.GetFile(CurrentDb().Name).ParentFolder Debug.Print rep.Path Set AppWrd = CreateObject("Word.Document") AppWrd.Visible = True NomFichier = Dir(rep.Path + "*.doc") ChDrive rep.Path ChDir rep.Path Set Rs = CurrentDb().OpenRecordset("tabImport") While NomFichier <> "" Debug.Print NomFichier Set monDoc = AppWrd.Documents.Open(rep.Path + "" + NomFichier) Rs.AddNew Rs!Nom = monDoc.FormFields("Nom").Result Rs!Prenom = monDoc.FormFields("Prenom").Result Rs.UPDATE AppWrd.Documents.Close NomFichier = Dir Wend Rs.Close AppWrd.Quit Set AppWrd = Nothing Set fso = Nothing Set Rs = Nothing End Function
_____________________________________ tous69 a écrit, le 19/10/2004 19:56 :
> Bonjour > > Ho....... faite ta macro elle sert à quoi ? > il est possible que je format un pc d'ici 15 jours > Si tu veux je veux bien l'a teste ( si sensé que je puisse ) ta macro et
si
> tu n'est pas presser! > > tous30@ libre .fr > remplace libre par free > >
Gloops
tous69 a écrit, le 20/10/2004 21:39 :
bonjour
Alors tu as eu le mems problem que moi! une erreur d'automation.
C'est un peu ce qu'il m'avait semblé ...
Moi j'ai fait comme ma indiquer Patrick Philippot voir post suivant et tout est rentré dans l'ordre .
Ah ben ça c'est une bonne nouvelle alors. Pour ma part j'ai déjà essayé comme indiqué, alors je crois qu'il faudra que j'ouvre un autre fil. Si ça marche sur ta machine, peut-être pourrais-tu me dire si à présent ma macro fonctionne ? Veux-tu que je t'envoie un exemple de document Word pour t'éviter le mal de le préparer ?
Ho faite c'est quoi FSO ?
Regarde la première ligne de ma fonction : Dim fso As FileSystemObject
FileSystemObject est un composant qui permet de gérer le système de fichiers, de la machine locale ou d'une machine distante. C'est assez puissant, on peut connaître les propriétés d'un disque, d'un répertoire, d'un fichier.
Jusqu'à il n'y a pas longtemps je m'en servais assez régulièrement dans VB, et puis j'ai appris qu'il vaut mieux éviter car ça utilise beaucoup de ressources pour des choses que d'autres instructions savent faire de manière plus sobre, même si elles semblent moins élégantes.
Un de ces quatre je vais retoucher ma fonction pour me passer de FSO, mais enfin pour le moment si l'installation est si délicate il n'y a pas encore le feu.
tous69 a écrit, le 20/10/2004 21:39 :
bonjour
Alors tu as eu le mems problem que moi! une erreur d'automation.
C'est un peu ce qu'il m'avait semblé ...
Moi j'ai fait comme ma indiquer Patrick Philippot voir post suivant
et tout est rentré dans l'ordre .
Ah ben ça c'est une bonne nouvelle alors.
Pour ma part j'ai déjà essayé comme indiqué, alors je crois qu'il faudra
que j'ouvre un autre fil.
Si ça marche sur ta machine, peut-être pourrais-tu me dire si à présent
ma macro fonctionne ? Veux-tu que je t'envoie un exemple de document
Word pour t'éviter le mal de le préparer ?
Ho faite c'est quoi FSO ?
Regarde la première ligne de ma fonction :
Dim fso As FileSystemObject
FileSystemObject est un composant qui permet de gérer le système de
fichiers, de la machine locale ou d'une machine distante. C'est assez
puissant, on peut connaître les propriétés d'un disque, d'un répertoire,
d'un fichier.
Jusqu'à il n'y a pas longtemps je m'en servais assez régulièrement dans
VB, et puis j'ai appris qu'il vaut mieux éviter car ça utilise beaucoup
de ressources pour des choses que d'autres instructions savent faire de
manière plus sobre, même si elles semblent moins élégantes.
Un de ces quatre je vais retoucher ma fonction pour me passer de FSO,
mais enfin pour le moment si l'installation est si délicate il n'y a pas
encore le feu.
Alors tu as eu le mems problem que moi! une erreur d'automation.
C'est un peu ce qu'il m'avait semblé ...
Moi j'ai fait comme ma indiquer Patrick Philippot voir post suivant et tout est rentré dans l'ordre .
Ah ben ça c'est une bonne nouvelle alors. Pour ma part j'ai déjà essayé comme indiqué, alors je crois qu'il faudra que j'ouvre un autre fil. Si ça marche sur ta machine, peut-être pourrais-tu me dire si à présent ma macro fonctionne ? Veux-tu que je t'envoie un exemple de document Word pour t'éviter le mal de le préparer ?
Ho faite c'est quoi FSO ?
Regarde la première ligne de ma fonction : Dim fso As FileSystemObject
FileSystemObject est un composant qui permet de gérer le système de fichiers, de la machine locale ou d'une machine distante. C'est assez puissant, on peut connaître les propriétés d'un disque, d'un répertoire, d'un fichier.
Jusqu'à il n'y a pas longtemps je m'en servais assez régulièrement dans VB, et puis j'ai appris qu'il vaut mieux éviter car ça utilise beaucoup de ressources pour des choses que d'autres instructions savent faire de manière plus sobre, même si elles semblent moins élégantes.
Un de ces quatre je vais retoucher ma fonction pour me passer de FSO, mais enfin pour le moment si l'installation est si délicate il n'y a pas encore le feu.