No se si estoy haciendo lo correcto. Por favor, que me aconsejan.

Estoy tratando de abrir un libro de trabajo en la nueva instancia. Pero donde no está funcionando bien. A continuación está el código para su referencia. Estoy tratando de abrir el formulario denominado ‘Loginfrm’ en la nueva instancia.

Supongo que si otro libro ya está abierto, a continuación, el código actual se congela ese libro también. Idealmente, esto no debería estar sucediendo.

Private Sub Workbook_Open()
Call New_Excel

Dim xlWrkBk As Excel.Workbook
Dim xlApp As New Excel.Application

Set xlWrkBk = xlApp.ActiveWorkbook
xlApp.Visible = True
'ThisWorkbook.Windows(1).Visible = False
LoginFrm.Show

End Sub
Sub New_Excel()
  'Create a Microsoft Excel instance via code
  'using late binding. (No references required)
  Dim xlApp As Object
  Dim wbExcel As Object

  'Create a new instance of Excel
  Set xlApp = CreateObject("Excel.Application")

  'Open workbook, or you may place here the
  'complete name and path of the file you want
  'to open upon the creation of the new instance
  Set wbExcel = xlApp.Workbooks.Add

  'Set the instance of Excel visible. (It's been hiding until now)
  xlApp.Visible = True

  'Release the workbook and application objects to free up memory
  Set wbExcel = Nothing
  Set xlApp = Nothing
End Sub
  • el formulario siempre se muestra en la instancia en la que su recipiente en un libro abierto
  • hay un pequeño truco que puede hacer:) te voy a dar una respuesta
  • su ejemplo no parece que el uso de instancias independientes de excel a pesar de que
  • ahora lo hace
  • cierto, pero mi comentario sigue siendo válida-que acaba de copiar la forma más! 🙂
InformationsquelleAutor user2457968 | 2013-06-06

2 Comentarios

  1. 1

    Voy a mostrar cómo ejecutar una macro en otra instancia de excel ,que en su caso se mostrará un UserForm1


    1) Crear un nuevo libro

    2) Abrir el VBE (Editor de Visual Basic) – ALT + F11

    3) Inserte la nueva UserForm y Module (haga clic derecho en el el explorador de proyectos luego Insert). Su pantalla debe ser similar a la siguiente imagen:

    Tratando de abrir el libro en la instancia independiente

    4) Agregar Referencias para el Microsoft Visual Basic para Aplicaciones de Extensibilidad 5.3


    nota: tengo ya en mi código, pero usted tiene que asegurarse de que haya conectado correctamente hacerlo

    5) En el recién creado Module1 insertar el código


    6) Ahora, ejecute el Main Macro y se le mostrará el Userform1

    • Sí, Josie es correcta. No es la creación de instancia independiente. Sin embargo, la nueva instancia se abrirá en el código que he dado anteriormente. Pero, en el archivo que estoy tratando de abrir no se abre en la nueva instancia. Por favor avise.
  2. 1

    Solo soy un novato, pero esto funcionó para mí. Este código aparece al abrir el archivo en una nueva instancia de Excel. Copia y pega este código vba en el objeto ThisWorkBook:

    • Desde Excel 2013 grupos de todos los nuevos casos en virtud de la primera instancia en ejecución, esto por desgracia no funciona.

Dejar respuesta

Please enter your comment!
Please enter your name here