Acceder a word desde visual
Hola que tal!
En un momento dado en mi programa quiero poder acceder desde el al word, powerpoint, excel y outlook, como puedo hacer esto, es posible. Mi intencion es poner unos botones con los iconos de estos programas de office y poder acceder a ellos sin tener que parar la ejecucion de mi programa. Muchas gracias.
En un momento dado en mi programa quiero poder acceder desde el al word, powerpoint, excel y outlook, como puedo hacer esto, es posible. Mi intencion es poner unos botones con los iconos de estos programas de office y poder acceder a ellos sin tener que parar la ejecucion de mi programa. Muchas gracias.
yo tb estoy muy interesado en ello, si me podeis mandar el código estaria muy agradecido
Pon esto si es para acceder a un archivo concreto de WORD:
Private Sub Command1_Click()
Set WordServer = New Word.Application
WordServer.Visible = True
WordServer.Documents.Open _
FileName:="c:/NOMBREARCHIVO.doc", _
ConfirmConversions:=False, _
ReadOnly:=False, _
AddToRecentFiles:=False, _
PasswordDocument:="", _
PasswordTemplate:="", _
Revert:=False, _
WritePasswordDocument:="", _
WritePasswordTemplate:="", _
Format:=wdOpenFormatAuto
WordServer.WindowState = wdWindowStateMaximize
End Sub
para que te funcione lo del word
tendras que añadir la referencia del word a tu proyecto:
en el menu: proyecto/ referencias
buscas: Microsoft Word 8.0 Object Library, la marcas y pulsa ok
Si es para un archivo de excel:
im applExcel as object
Set applExcel = CreateObject("Excel.Application")
With applExcel
.Visible = true ' Si se pone a false se abre excel pero no lo ves
.Workbooks.Open FileName:=App.Path & "Plantilla.xls" ' fichero que quieres abrir
.Sheets(1).Select ' Hoja que quieres seleccionar del fichero
End With
Para que el código anterior funcione debes incluir la referencia a Microsoft Excel 9.0 Object Library.
Con las otras aplicaciones es similar pero no se el codigo concreto.
Si lo que quieres es abrir el WORD,EXCEL,POWERPOINT,ETC... y no un archivo concreto de esas aplicaciones, se me ocurre aunque quizas haya una forma mejor, que abras el exe de cada aplicacion:
Dim RetVal
RetVal = Shell("C:officemsword.exe", 1)
EL numero del final significa
1=Tal como este configurado el programa
2=Minimizado con foco
3=Maximizado con foco
Hay mas opciones, mira en la ayuda.
Private Sub Command1_Click()
Set WordServer = New Word.Application
WordServer.Visible = True
WordServer.Documents.Open _
FileName:="c:/NOMBREARCHIVO.doc", _
ConfirmConversions:=False, _
ReadOnly:=False, _
AddToRecentFiles:=False, _
PasswordDocument:="", _
PasswordTemplate:="", _
Revert:=False, _
WritePasswordDocument:="", _
WritePasswordTemplate:="", _
Format:=wdOpenFormatAuto
WordServer.WindowState = wdWindowStateMaximize
End Sub
para que te funcione lo del word
tendras que añadir la referencia del word a tu proyecto:
en el menu: proyecto/ referencias
buscas: Microsoft Word 8.0 Object Library, la marcas y pulsa ok
Si es para un archivo de excel:
im applExcel as object
Set applExcel = CreateObject("Excel.Application")
With applExcel
.Visible = true ' Si se pone a false se abre excel pero no lo ves
.Workbooks.Open FileName:=App.Path & "Plantilla.xls" ' fichero que quieres abrir
.Sheets(1).Select ' Hoja que quieres seleccionar del fichero
End With
Para que el código anterior funcione debes incluir la referencia a Microsoft Excel 9.0 Object Library.
Con las otras aplicaciones es similar pero no se el codigo concreto.
Si lo que quieres es abrir el WORD,EXCEL,POWERPOINT,ETC... y no un archivo concreto de esas aplicaciones, se me ocurre aunque quizas haya una forma mejor, que abras el exe de cada aplicacion:
Dim RetVal
RetVal = Shell("C:officemsword.exe", 1)
EL numero del final significa
1=Tal como este configurado el programa
2=Minimizado con foco
3=Maximizado con foco
Hay mas opciones, mira en la ayuda.
