Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Editing Microsoft Word Documents Programmatically

Tags:

c#

.net

ms-word

I want to know if this could be done.

I am building a data dictionary for our software system (school project), and I'm thinking of an automated way to do this. Basically I don't use much of Microsoft Word (2007), I only use it in documenting schools stuff, etc. I want to know if its possible to create/edit a Word document programmatically from a template.

The idea is, I will create a page on Word that contains an empty form that will be repeated on every page. For every data that I will input to my program, it will update the corresponding field in the form and skips to the next form.

The purpose of this, is to eliminate copy-paste methods (my habit) and to speed things up when doing the documentation.

like image 262
Ruel Avatar asked Feb 10 '11 09:02

Ruel


People also ask

Can you automate Word documents?

Using a template with your Word Automation client has two significant advantages over building a document from nothing: You can have greater control over the formatting and placement of objects throughout your documents. You can build your documents with less code.

Can Python edit Word documents?

Python can create and modify Word documents, which have the . docx file extension, with the python-docx module. You can install the module by running pip install python-docx .


1 Answers

Word automation, as suggested by others, will lead you to a world of hurt for two major reasons:

  1. Office is not intended to be run unattended, so it can pop up message boxes at any time, and
  2. It is (probably) not licensed to enable office functionality for computers which don't have it. If you generate a Word document on a web site using automation, you have to make sure that this functionality cannot be reached by computers which don't have office installed (unless they changed this rule in the last years).

I have used Aspose.Words, it costs a little, but it works well and is intended for this.

like image 98
erikkallen Avatar answered Oct 24 '22 02:10

erikkallen