Inicio > Microsoft Excel > elsamatilde > abrir word condicionado desde excel

abrir word condicionado desde excel

Experto:
Usuario:
Fecha: 04/09/2004
Valoración: (5,00 sobre 5) Categoría: Microsoft Excel
01/09/2004
jeandro, usuario preguntando en Microsoft Excel
Usuario
Hola, muy agradecido por el tiempo que me dedicas. Te `planteo la cuestión. Hay una condición en una macro que no se sé formular. Trato de hacerla en excel. La macro sería:
Si (word no está abierto) Then
?abro word y recupero documento
Dim wordApp As Object
Set wordApp = CreateObject("word.Application")
wordApp.Visible = True
wordApp.Documents.Open Filename:="C:DOCUMENTO1.doc"

Else

?no debo abrir word (ya está abierto) y sólo debo recuperar el doc.
wordApp.Documents.Open Filename:="C:DOCUMENTO1.doc"

Bueno, pues no logro formular la condición previa. ¿Puedes ayudarme? Gracias en todo caso.
03/09/2004
jeandro, experto respondiendo en Microsoft Excel
Experto
Hola:
En general esto se trata con un control de error. Es decir que si tratas de abrir lo que ya está abierto te presentará error, entonces le decimos que vaya a la siguiente.
Probalo de esta manera, y me comentas:

Dim wordApp As Object
On error resume next
Set wordApp = CreateObject("word.Application")
wordApp.Visible = True
wordApp.Documents.Open Filename:="C:DOCUMENTO1.doc"

*** No olvides suscribirte al mejor Boletín Excel gratuito en:
www.exceluciones.com

Saludos
Elsa
03/09/2004
jeandro, usuario preguntando en Microsoft Excel
Usuario
No logro que funcione correctamente, puesto que siempre se abre un nuevo word y me aparece un mensaje de aviso. Por eso la condición que pretendía era lo que me parecía más correcto, pues evitaba la apertura de un nuevo word y avisos.
Pero como esa condición parece imposible, he solucionado el problema con un hiperlynk:
ActiveWorkbook.FollowHyperlink Address:= _
"C:Documento1.doc"
Así he logrado que no se abra un nuevo word y siempre aparece el mismo documento. Eso sí, la barra web también se hace visible. He pensado hacer una macro que cierre la barra:
Application.CommandBars("Web").Visible = False
pero no logro que sea una macro de las que he leido auto open, de modo que cuando el Documento1 se abra, la macro se ejecute y se oculte la barra web ¿Como la hago? ¿Debo grabarla en el mismo "Documento1" o donde? ¿Qué instrucciones debo dar?
Gracias siempre.
04/09/2004
jeandro, experto respondiendo en Microsoft Excel
Experto
Bueno, yo coloqué la rutina para ocultar la barra en el evento Open del Word y me da resultados.
En el objeto ThisDocument del editor de word irá:
Private Sub Document_Open()
CommandBars("Web").Visible = False
End Sub


Espero que esto si te de resultados.
Saludos
ELsa
04/09/2004
jeandro, usuario preguntando en Microsoft Excel
Usuario
Estupendo. Gracias.
Enlaces patrocinados