#1
|
|||
|
|||
Excel VBA: How to add a reference to Microsoft Word Object Library?
I mean by writing codes on Macro in Excel, not by going to Tool -> Reference -> ... Coz I don't want my users to do it themselves... |
#2
|
||||
|
||||
This can be done by code, but why would they need to do it themselves in the first place?
|
#3
|
|||
|
|||
Because everytime the users start the application, the MS Word Object Library needs to be re-ticked again. (in my case)
|
#4
|
||||
|
||||
Hi tinfanide,
Once you've set the reference for the macros in a particular file, it should stay set for that file.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#5
|
||||
|
||||
If your users have an earlier version of MS Word than the person that last saved the application, then the MS Word reference will become broken. If this is the scenario then you should develop your application using early binding, but then convert it to late binding and remove the MS Word reference entirely before it is deployed. That way the reference will not be an issue. You must, of course, ensure that the code which automates MS Word is compatible for all versions in use by the end users.
|
#6
|
||||
|
||||
To that end, it's generally best to develop code on the earliest version for which support is required and to test it on the latest version for which support is required.
__________________
Cheers, Paul Edstein [Fmr MS MVP - Word] |
#7
|
|||
|
|||
Thanks for the binding reminder.
It seems to work without the reference. In Excel VBA: Code:
Sub lateBinding() ' no need to set reference to MS Word Object Library Dim wrdApp As Object Set wrdApp = CreateObject("Word.Application") Dim wrdDoc As Object Set wrdDoc = wrdApp.Documents.Add wrdApp.Visible = True wrdDoc.Sections(1).Range.Delete With wrdDoc .Paragraphs.Add .Paragraphs(1).Range.Text = "Late Binding: no need to set reference to MS Word Object Library" End With Set wrdDoc = Nothing Set wrdApp = Nothing End Sub |
#8
|
||||
|
||||
Quote:
There are several disadvantages to using late binding: slightly slower performance and loss of intellisense. The loss of intellisense is quite an impediment during the development phase, which is why I recommend that you develop the project using early binding and then convert to late binding just before final testing and deployment. |
Thread Tools | |
Display Modes | |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
option Paste special...as 'Microsoft Excel Chart Object' NOT available | Intruder | PowerPoint | 0 | 12-24-2010 06:28 AM |
Problem: object library invalid or contains references to object definitions | aligahk06 | Office | 0 | 08-19-2010 12:29 PM |
Problem with my microsoft word com object in c# web application | Naresh_1210 | Word VBA | 0 | 03-11-2010 12:26 AM |
Inserting citations using the reference function in Microsoft Word 2007? | aeyara | Word | 0 | 09-28-2009 05:33 PM |
Access Object library 10 | Gyto | Office | 0 | 10-09-2008 09:04 AM |