Accueil | Aide en ligne | Annuaire | Sécurité | Articles | Astuces | Téléchargements | Association 


Mon compte SOS Ordi

Vous n'êtes pas identifié
[-> S'inscrire à SOS Ordi
[-> Mot de passe perdu ?
S'identifier


Rechercher sur SOS Ordi

Ok

Dans





 Catégories de l'aide en ligne

 Aide en ligne


 Saviez vous que ...

SOS Ordi existe depuis 1998


 Partenaires

  SOS Ordi > Aide en ligne > Logiciel > Développement > Langages > Visual Basic > enregistrer document word par VBA sous excel

enregistrer document word par VBA sous excel

6 réponse(s)
dont 1 ont aidé thomas171074 à résoudre son problème

  Problème résolu posté le 26/06/2005 à 17:14
Profil Configuration PC
thomas171074


tux-wolverine_silver4_tux
État : Absent
Bonjour à tous ! wavey.gif

Voilà mon problème :

Je cherche à faire une procédure VBA sous Excel permettant de créer, modifier puis enregistrer un document Word depuis Excel : J'ai fais ça pour comprendre le fonctionnement global :

Sub test1()
'definition
Dim FichierWord As Object
Set FichierWord = CreateObject("Word.Application")
' Création document
FichierWord.Documents.Add
' Ecriture dans document
FichierWord.Selection.TypeText "hello world !"
' Sauvegarde
ActiveDocument.SaveAs "C:\test.doc"
' Fermeture
FichierWord.ActiveDocument.Close
Set FichierWord = Nothing
End Sub


Mais l'execution de la procédure se bloque à la ligne:

ActiveDocument.SaveAs "C:\test.doc"

('erreur d'execution 404 : objet requis : http://img165.echo.cx/img165/1147/macro8ee.gif )


Comment faut-il modifier ma ligne de commande ?

Merci à tous... smileJap.gif

Edité par thomas171074 le 26/06/2005 à 17:59

   

Bas de page 


Information

Pour participer vous devez d'abord être membre ou identifié :
[-> M'identifier
[-> Je ne suis pas membre SOS Ordi, je souhaite m'inscrire
[-> J'ai perdu mon mot de passe


  Réponse postée le 26/06/2005 à 17:23
Profil du membre Configuration PC
avalo



État : Absent
Salut
pourquoi définir ton classeur en tant qu'objet autant mettre
ActiveWorkbook.SaveAs Filename:="C:\test.xls"

Et regarde dans enregistrer sous, tu verras qu'excel (sauf erreur de ma part mais en tout cas pas dans excel 2003) ne prend pas en charge le .doc de word. Au mieux le .txt.

Edité par avalo le 26/06/2005 à 17:23



Un programme c'est un sort que l'on jette à un ordinateur et qui se transforme en message d'erreur.
L'ordinateur obéit à vos ordres, pas à vos intentions.
N'oubliez pas de passer vos questions en résolu

  Réponse postée le 26/06/2005 à 17:29
Profil du membre Configuration PC
thomas171074



État : Absent
confused.gif

Avalo, merci de ta réponse mais j'ai du mal m'exprimer :

Le but est justement de créer un .doc, de le modifier depuis VBA sous excel (car j'ai des données excel à inserer dans ce document Word) et de l'enregistrer en tant que tel (càd. en tant que .doc). D'où la création de l'objet word :

Set FichierWord = CreateObject("Word.Application")

Edité par thomas171074 le 26/06/2005 à 17:36


  Réponse postée le 26/06/2005 à 17:50
Profil du membre Configuration PC
avalo



État : Absent
non c'est moi qui me suis mal exprimé en voulant aller trop vite, je sais qu'il existe sur le web un "add on" pour excel qui permet d'enregistrer certaines parties pour remplir un formulaire sous format .doc. mais la feuille word en fait ne fait que récupérer les infos de la feuille excel.
Tu peux importer un tableau word dans une feuille excel mais tu ne peux créer de fichier word en tant que tel à partir d'un tableur comme excel.
Tu peux essayer en créant plutot une feuille html mais je doute que cela marche et tu perdras certainement la mise en forme.

Ceci dit, je ne suis pas un grand pro d'excel, c'est peut être une fonction qui foire lamentablement sur le pc de mon boulot, voir si d'autres on des idées la dessus.

Un programme c'est un sort que l'on jette à un ordinateur et qui se transforme en message d'erreur.
L'ordinateur obéit à vos ordres, pas à vos intentions.
N'oubliez pas de passer vos questions en résolu

  Réponse postée le 26/06/2005 à 17:57
Profil du membre Configuration PC
thomas171074



État : Absent
Citation :
tu ne peux créer de fichier word en tant que tel à partir d'un tableur comme excel


Si, justement avec VBA : exemple : http://www.info-3000.com/vbvba/automation.php

Mais chez moi ça ne marche pas... crying1.gif

Edité par thomas171074 le 26/06/2005 à 18:00


  Réponse postée le 26/06/2005 à 18:07
Profil du membre Configuration PC
thomas171074



État : Absent
OUAIS !!!! bounce.gif bounce.gif bounce.gif

J'ai trouvé tout seul !!! J'avais oublié le début de l'instruction :

FichierWord .ActiveDocument.SaveAs "C:\test.doc"

Et une fois réparé ça marche !!!

Avalo, merci de t'être penché sur mon problème, ce qui mérite l'attribution de 15 nouveaux points pour toi, qui s'ajouteront à la satisfaction d'avoir appris qu'on peut créer un document Word depuis Excel... clinoeuil.gif

wavey.gif

Edité par thomas171074 le 26/06/2005 à 18:08


  Réponse postée le 26/06/2005 à 18:09
Profil du membre Configuration PC
avalo



État : Absent
Ben là, je viens d'apprendre un truc, comme quoi je peux jeter mon bouquin de visual basic...

Passe une bonne journée.

Un programme c'est un sort que l'on jette à un ordinateur et qui se transforme en message d'erreur.
L'ordinateur obéit à vos ordres, pas à vos intentions.
N'oubliez pas de passer vos questions en résolu



Haut de page 

 

Version 5.6 | Infos / Contacts | Partenariat | Publicité