Hi there
I just found out how, just create an empty object and use that.
ie var empty;
var wr =WordApp.Selection.GoTo(-1,empty,0,'TestFred);
Thanks!!
MayBoy wrote:
> Hi Julian
>
> I tried your answer but still get an error, when you put any value in
> for Which it says "You entered multiple destinations for a
> page.line.footnoteendnote or comment"
>
> I tried the same in VB and it works with a nothing as the Which and
> Count parameters but I can't do that in javascript.
>
> Any ideas?
>
>
> Julian Turner wrote:
> > MayBoy wrote:
> >
> > > Hi There
> >
> > Hi
> >
> > > I am trying to use the Goto method of the Word ActiveX object. I am
> > > trying to open a document and go to a named bookmark. If I use this
> > > code in VB it works, so I'm sure the approach is possible, I just can't
> > > get JavaScript to work with it.
> > >
> > > Here is the code I am using, the error I get from IE is Object
> > > Expected:
> >
> > It would help if you could identify which line, and which part of that
> > line, in your code is triggering this error.
> >
> > > Hope someone can help! Any help would be much appreciated
> > >
> > > function PageLoad()
> > > {
> > > var WordApp = new ActiveXObject('Word.Application');
> > > WordApp.Visible = true;
> > > var documentlocation = crmForm.all.new_documentlocation.DataValue;
> > > var wd = WordApp.Documents.Open(documentlocation);
> >
> > I am assuming for the sake of argument that you get this far.
> >
> > > wd.Select();
> > > var Name = 'TestFred';
> >
> > Why have you defined this variable but not used it?
> >
> > > var wr = wd.Selection.GoTo(What : Word.WdGoToItem.wdGoToBookmark,Name :
> > > 'TestFred');
> >
> > This is the line which has a number of possible errors in it.
> >
> > Error 1
> > ============
> >
> > "wd" contains a reference to a Document object. The Selection object
> > is a member of the Application object, not a Document object. So this
> > should be "WordApp.Selection".
> >
> > Alternatively, you can call Document.GoTo().
> >
> > Document.GoTo() : "Returns a Range object that represents the start
> > position of the specified item, such as a page, bookmark, or field"
> > Application.Selection.GoTo(): "Moves the insertion point to the
> > character position immediately preceding the specified item, and
> > returns a Range object (except for the wdGoToGrammaticalError,
> > wdGoToProofreadingError, or wdGoToSpellingError constant)."
> >
> > Errors 2 & 3
> > ============
> >
> > Firstly, JavaScript does not support NAMED arguments.
> >
> > So this "GoTo(What : " is a syntax error.
> >
> > Secondly, you must as a result supply the arguments in the order that
> > Word expects.
> >
> > "expression.GoTo(What, Which, Count, Name)"
> >
> > So you will need to supply default values for Which and Count.
> >
> >
> > Errors 4 & 5
> > ============
> >
> > "Word.WdGoToItem.wdGoToBookmark"
> >
> > There are two errors here:
> >
> > Firstly, you cannot access the constant wdGoToBookmark as a property of
> > WdGoToItem.
> >
> > Secondly, apart from on the Server, you cannot access in JavaScript
> > Word constants, such as "wdGoToBookmark" by name.
> >
> > You need to supply the constant value instead. The following is taken
> > from Word's ObjectBrowser facility in its Macro editor:-
> >
> > "Const wdGoToBookmark = -1 (&HFFFFFFFF)"
> > "Const Const wdGoToFirst = 1"
> >
> > Result
> > ============
> >
> > Try:-
> >
> > var myRange = Document.GoTo(-1, 1, 1, 'TestFred');
> > or
> > WordApp.Selection.GoTo(-1, 1, 1, 'TestFred');
> >
> > I have not tested these, so there may be something else to consider as
> > well. JavaScript does work, with a bit of fiddling.
> >
> > Regards
> >
> > Julian
|