View Single Post
  #8   Report Post  
Cor van der Bliek
 
Posts: n/a
Default

I managed to solve the problem through this workaround:
on opening the template (and before showing the UserForm) I record the name
of the newly made document and save it to oDoc.
After closing the UserForm I activate oDoc. This seems to do the trick.
I still don't understand why the focus was lost on opening the UserForm.

Public oDoc As Document
Public Sub AutoNew()
Set oDoc = ActiveDocument
UserForm.Show
oDoc.Activate
End Sub
-------------
Private Sub OK_Click()
UserForm.Hide
oDoc.Activate
'overnemen invulvelden
End Sub
----------------
"Stefan Blom" wrote:

My point was that you shouldn't depend on what document is currently active,
if this is possible. But I haven't seen your code, and I'm definitely not a
programming expert, so I can't guarantee that I would know the solution even
if I had. If you need more information about the Add method of the Document
class, you could read about it in Word VBA Help. If you do find something
that could be useful, I suggest that you ask the question again, providing a
code sample in a vba newsgroup such as microsoft.public.word.vba.general.

Stefan Blom


"Cor van der Bliek" wrote:

I tried this, but can't figure it out, Stefan.
Could you detail this for me?


"Stefan Blom" wrote:

Is the new document created with code? If it is, you could make use of
the return value from the Add method to get a reference to it.

Set mydoc = Documents.Add()

With mydoc
'Code here...
End With

If you are not creating the new document with code, maybe you should,
just to be able to reference it.

--
Stefan Blom


"Cor van der Bliek" wrote
in message ...
I create documents, based on a special template. A Userforms collect
all the
text in the fields and puts them on the appropriate places in the
document.
This works fine the first time I do this. The second time, with a
document
showing I have filled this way, a new document is created, but
doesn't get
the focus. In other words when the Userform pops up, the first
document is
still showing as the active document and the process of putting the
input
text in the the new document fails, since Word tries to put the text
in the
already filled in document.
The new document has been created, it shows as second in the list
under the
Windows command.
How do I get the new document to become the active document before
showing
the Userform?