Bonjour,
Est-il possible en .Net de piloter Microsoft Word "facilement". Dans le sens création de document, fusion avec source données, contrôle de fermeture de document ?
Merci
Julien
Bonjour,
Est-il possible en .Net de piloter Microsoft Word "facilement". Dans le sens création de document, fusion avec source données, contrôle de fermeture de document ?
Merci
Julien
Le langage le plus facile d'utilisation pour ça, c'est les macros Word.
En .NET tu pourras aussi faire ce genre d'opération, mais ce sera un peu plus du genre saut à l'élastique sans pont et sans élastique : le code sera vite imbittable, et il n'y a pour ainsi dire pas de documentation, donc tu es condamné à y aller à tâtons, et pleurer 3 jours avant de trouver chaque nouvelle fonctionnalité (si tu les trouve !)
On ne jouit bien que de ce qu’on partage.
Aie ... je ne veux pas mettre en place des macros car les documents sont extremement nombreux et nous avons plein de serveur différent donc il faudrait a chaque fois modifier les macros
Tu peux faire une macro "addin", qui est installée sur le poste de l'utilisateur et non dans les documents.
Exemple : la macro "Euro" livrée avec Excel depuis le passage à l'Euro.
On ne jouit bien que de ce qu’on partage.
Il est possible de piloter Office en .Net. Voir cet article : Piloter Office.
Par contre, effectivement il y a peu de documentation en ligne. Ceci dit, tu peux te débrouiller facilement en traduisant des macros VBA (voir l'astuce dans cet article : adapter des macros).
Il faut aussi que Office soit installé sur le serveur.
Et ce n'est pas très performant pour des traitements volumineux (nombre de fichiers, types de traitements,...).
Ce sera d'autant plus compliqué si tu as de multiples serveurs... A moins de faire un service (web, par exemple) pour centraliser la fonctionnalité.
Sinon, il y a des outils payants qui font ça sans Office. Voir Google.
Il y a aussi le format OpenDocument (docx) qui est un format xml. Voir cet article : Créer un fichier Word OpenXML avec .Net.
Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...
Une réponse vous a aidé ? utiliser le bouton
"L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel
Merci pour vos réponses.
Je veux éviter à tout prix l'automatisation coté serveur.
En gros, cela ne me dérange pas de descendre un programme en .Net sur le poste client depuis le serveur WEB pour que cela ouvre le document word, prépare les champs de fusion et gère la fermeture du document pour l'upload sur mon serveur web.
Coté macro vba ... je le sens pas trop
Quoi qu'il en soit, ce que je veux faire est possible en .Net ?
Julien
En effet une belle galère le developpement .Net sous Visual Studio ... on trouve rien sur le web en plus.
Je prefère au loin le Java mais bon Java et Word sont pas copain
C'est ton avis
Moi, je n'ai pas encore trouvé d'IDE qui me plaise plus que VS
Euh... MSDN, un petit site de ressources sur le dev en .Net sans prétentions...
Ca, j'avoue
Regarde quand même du côté des VSTO, peut-être que ça peut répondre à ton besoin.
Pour ce qui est de l'automation de Word, c'est vrai que c'est un peu l'arlésienne : beaucoup en parlent, peu l'ont vu, ceux qui ont pratiqué se taisent
On lit parfois des trucs bizarres ici, mais là on est assez proche de la palme
Comme quoi, les coups et les douleurs : moi je ne suis pas copain du tout avec Java et ai été très content de l'abandonner (définitivement). Je refuse de piloter un projet dans cet environnement technique.Je prefère au loin le Java mais bon Java et Word sont pas copain
Je ne réponds pas aux questions techniques par MP ! Le forum est là pour ça...
Une réponse vous a aidé ? utiliser le bouton
"L’ennui dans ce monde, c’est que les idiots sont sûrs d’eux et les gens sensés pleins de doutes". B. Russel
Je comprends mais je bosse en Java depuis plus de 10 ans ... une fois sous VS2010 ... je suis perdu.
Même si je rajoute un composant word j'suis incapable de créer un doc word en C# donc bref ... un peu perdu là
J'accepte vos remarques, mais là j'avoue que ça ne m'aide pas
Ok.
Nous développons un logiciel SAS en mode WEB en J2EE. Nous avons une problématique qu'est l'éditique de courrier word.
Ce que nous voulons faire ?
Offrir à l'utilisateur la possibilité de créer ses courriers avec ses champs de fusions.
Comment ? L'utilisateur clique sur un lien sur le site WEB, cela lui ouvre un document WORD vide avec les champs de fusions disponible dans le publipostage. Une fois qu'il a terminé et qu'il ferme son document, ce dernier doit être uploader sur notre serveur WEB, ce qui servira pour fusionner ses courriers avec ses informations plus tard.
La problématique est donc la suivante : comment ouvrir word avec les champs de fusion disponible dans son document et gerer la fermeture de ce dernier pour l'envoyer sur notre serveur.
Idée : application .Net lancé en local via un lien clickone qui va gérer ça.
Comment ? Je ne sais pas ... nous avons VS 2010 avec la licence, il ne reste "plus qu'à développer ça, ça ne semble pas compliquer en soit mais impossible de trouver ça facilement sur le web.
Est-ce plus clair ?
on peut trouver quelque exemple du coté du support de microsoft
http://support.microsoft.com/search/...og=LCID%3D1036
je croit qu'il faut avoir la même version de word installé sur les machines cible que sur la machine de développement pour que ça fonctionne
salut
A mon avis, pour cette action il faut que tu fasses télécharger à ton utilisateur un fichier Word vide. Sinon je ne vois pas comment tu peux ouvrir Word depuis un site Web.
A part des combines, il n'est pas censé pouvoir envoyer un fichier à un serveur Web sans action de l'utilisateur pour des raisons de sécu.
Effectivement je n'avais pas pensé à passer par une application.
Une application peut gérer un fichier Word et en faire quasiment ce que tu veux. Pour cela je te conseille de te tourner vers les Dlls Interop Word.
Bon courage.
Oui, c'est plus clair.
Encore une fois, Microsoft ne recommande pas l'automation côté serveur :
(source)À l'heure actuelle, Microsoft ne recommande pas et ne prend pas en charge l'automatisation des applications Microsoft Office à partir d'une application ou d'un composant client non interactif et sans assistance (y compris ASP, DCOM et les services NT), car Office peut présenter un comportement instable ou entraîner un blocage lorsqu'il est exécuté dans ce type d'environnement.
Par contre, depuis VS2008, il me semble que les compléments développés avec VSTO dont déployables via ClickOnce.
Je pense donc en effet que la solution se situe de ce côté si vous voulez réellement que le user puisse ouvrir un document Word sur son poste, le manipuler, l'enregistrer et l'uploader.
mais je ne comprends pas trop le VSTO, ce n'est pas une application .Net, c'est un composant qui se rajoute ça non ?
Regarde de ce côté
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager