Ejecutar una Macro de Excel desde VB.NET

25/09/2008 - 15:50 por Consuelo | Informe spam
Hola,

Tengo un pequeño problema a la hora de ejecutar Excel 2003 desde un programa
VB.NET 2005, concretamente el problema se produce al llamar a una macro que
está en un complemento de Excel (AddIn) hecho por mi, pues no soy capaz de
que el programa VB.NET encuentre dicha macro.

Lo que hago es exactamente esto :

Private Sub BTCompras_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles BTCompras.Click
Dim Excl As New Microsoft.Office.Interop.Excel.Application
Try
If Excl.AddIns("SolCompra").Installed = False Then
MsgBox("No está instalada la solicitud de Compra")
BTCompras.Enabled = False
Excl.Quit()
Exit Sub
End If
Excl.Visible = True
Excl.Run(Excl.AddIns("SolCompra").FullName + "!Haz_Solicitud")

Catch ex As Exception
MsgBox(ex.Message)
Try
Excl.Quit()
End If
Catch
End Try
End Try
End Sub

He hecho varias pruebas al poner el nombre de la macro:
- Si pongo solo el nombre de la macro: Excl.Run( "Haz_Solicitud") dice: No
se puede encontrar la macro "Haz_Solicitud".

- Si pongo también el nombre del fichero XLA que contiene la macro :
Excl.Run( "SolCompra.xla!Haz_Solicitud") dice: No se puede hallar
"SolCompra.xla".

- Si pongo el path completo del fichero XLA :
Excl.Run(Excl.AddIns("SolCompra").FullName + "!Haz_Solicitud") dice: No se
puede encontrar la macro "C:\Archivos de programa\Microsoft
Office\OFFICE11\MACROS\SolCompra.xla!Haz_Solicitud".

Evidentemente la macro existe y se llama así, pues si desde un modulo VBA de
Excel hago las mismas llamadas, estas se ejecutan correctamente en el primer
y segundo caso, fallando de la misma manera en el tercero (Run
(AddIns("SolCompra").FullName + "!Haz_Solicitud")).

¿Puede alguien ayudarme a encontrar una solución a este problema?

Muchas gracias

Consuelo
 

Leer las respuestas

#1 Ivan
25/09/2008 - 18:08 | Informe spam
hola Consuelo,

no me hagas mucho caso, pero prueba a 'abrir' tambien el complemento
antes de ejecutar la macro

a ver que tal

un saludo
Ivan

Preguntas similares