none
Ejecutar Macro excel RRS feed

  • Pregunta

  • Buenas Tardes:

    Como puedo lograr que desde un formulario windows form  pueda ejecutar una macro de un libro de excel especifico?



    Hhendrix2012 Programattion OK

    martes, 8 de mayo de 2012 20:32

Respuestas

  • hola

    apuntas a algo como esto

    Cómo: Ejecución macros de Office mediante automatización desde Visual C# .NET

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Hhendrix2012 miércoles, 16 de mayo de 2012 16:06
    miércoles, 9 de mayo de 2012 3:38
  • después de analizar el código se puede  hacer así ya lo probé y funciona

    importar

    Imports Microsoft.Office.Interop

    mas o menos la  istruccion es asi

     Sub ejecuta_macro()

            Dim oExcel As Object
            Dim oBook As Object
            Dim oBooks As Object

            'Start Excel and open the workbook.
            oExcel = CreateObject("Excel.Application")
            oExcel.Visible = True
            oBooks = oExcel.Workbooks
            oBook = oBooks.Open("D:\vb software\pruebas\book1.xls")

            'Run the macros.
            oExcel.Run("DoKbTest")
            oExcel.Run("DoKbTestWithParameter", "Hello from VB .NET Client")

            'Clean-up: Close the workbook and quit Excel.
            oBook.Close(False)
            System.Runtime.InteropServices.Marshal.ReleaseComObject(oBook)
            oBook = Nothing
            System.Runtime.InteropServices.Marshal.ReleaseComObject(oBooks)
            oBooks = Nothing
            oExcel.Quit()
            System.Runtime.InteropServices.Marshal.ReleaseComObject(oExcel)
            oExcel = Nothing
        End Sub


    Hhendrix2012 Programattion OK

    • Marcado como respuesta Hhendrix2012 miércoles, 16 de mayo de 2012 16:06
    miércoles, 16 de mayo de 2012 16:05

Todas las respuestas

  • hola

    apuntas a algo como esto

    Cómo: Ejecución macros de Office mediante automatización desde Visual C# .NET

    saludos


    Leandro Tuttini

    Blog
    Buenos Aires
    Argentina

    • Marcado como respuesta Hhendrix2012 miércoles, 16 de mayo de 2012 16:06
    miércoles, 9 de mayo de 2012 3:38
  • después de analizar el código se puede  hacer así ya lo probé y funciona

    importar

    Imports Microsoft.Office.Interop

    mas o menos la  istruccion es asi

     Sub ejecuta_macro()

            Dim oExcel As Object
            Dim oBook As Object
            Dim oBooks As Object

            'Start Excel and open the workbook.
            oExcel = CreateObject("Excel.Application")
            oExcel.Visible = True
            oBooks = oExcel.Workbooks
            oBook = oBooks.Open("D:\vb software\pruebas\book1.xls")

            'Run the macros.
            oExcel.Run("DoKbTest")
            oExcel.Run("DoKbTestWithParameter", "Hello from VB .NET Client")

            'Clean-up: Close the workbook and quit Excel.
            oBook.Close(False)
            System.Runtime.InteropServices.Marshal.ReleaseComObject(oBook)
            oBook = Nothing
            System.Runtime.InteropServices.Marshal.ReleaseComObject(oBooks)
            oBooks = Nothing
            oExcel.Quit()
            System.Runtime.InteropServices.Marshal.ReleaseComObject(oExcel)
            oExcel = Nothing
        End Sub


    Hhendrix2012 Programattion OK

    • Marcado como respuesta Hhendrix2012 miércoles, 16 de mayo de 2012 16:06
    miércoles, 16 de mayo de 2012 16:05