Excel produce un error cuando un complemento de automatización carga

Seleccione idioma Seleccione idioma
Id. de artículo: 284876 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

Cuando Microsoft Excel carga un complemento de automatización durante celda modo, Excel se produce un error de edición. Este problema se produce sólo con complementos de automatización que han sido demanda cargado en Excel.

Causa

Este problema puede ocurrir cuando un complemento carga si el complemento muestra un formulario o cuadro de diálogo o si el complemento realiza una petición de automatización a Excel que intenta cambiar el estado de Excel. La siguiente lista incluye ejemplos de solicitudes de automatización que pueden hacer que Excel dará error cuando se le llama mientras un complemento de automatización carga durante el modo de edición de celda:
  • Cambiar mediante programación la selección actual. Por ejemplo:
    Application.ActiveSheet.Range("A1").Select
    					
  • Llamar a una propiedad o método de un elemento en el Windows colección. Por ejemplo:
    Application.ActiveWindow.Zoom = 200
    					
  • Cambiar una configuración de Excel como el modo de cálculo. Para ejemplo:
    Application.CalculationMode = xlManual
    					
Todos estos elementos son ejemplos de código intenta cambiar el entorno de Excel, un libro o una hoja de cálculo; estos tipos de acciones no están permitidos mientras se encuentra en modo de edición.

Solución

No intente las acciones mencionadas anteriormente mientras las cargas de complemento. Add - en métodos que se llaman durante la carga de incluir el método Initialize y, si el complemento de automatización implementa la interfaz IDTExtensibility2 , OnConnection y OnStartupComplete métodos así.

Estado

Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados al principio de este artículo.

Más información

Pasos para reproducir el problema

  1. Inicie un nuevo proyecto DLL ActiveX en Visual Basic.
  2. En el menú proyecto , haga clic en Propiedades de Project1 . Cambie el Nombre del proyecto a TestAddIn y, a continuación, haga clic en Aceptar .
  3. Agregue el código siguiente al módulo de código de Class1:
    Private Sub Class_Initialize()
        MsgBox "Class_Initialize"
    End Sub
    					
  4. Generar TestAddIn.dll.
  5. En Excel, inicie un nuevo libro.
  6. En Microsoft Office Excel 2003 o en Microsoft Excel 2002, siga estos pasos:
    1. En el menú Herramientas , elija Complementos y, a continuación, haga clic en automatización .
    2. En la lista, haga clic en TestAddIn.Class1 y, a continuación, haga clic en Aceptar .
    3. En el cuadro de diálogo Complementos , haga clic en Aceptar .
    En Microsoft Office Excel 2007, siga estos pasos:
    1. Haga clic en el Botón de Microsoft Office y, a continuación, haga clic en Opciones de Excel .
    2. Haga clic en la ficha Complementos .
    3. En la lista Administrar , haga clic en complementos de Excel y, a continuación, haga clic en Ir .
    4. En el cuadro de diálogo Complementos , haga clic en automatización .
    5. En la lista, haga clic en TestAddin.Class1 y, a continuación, haga clic en Aceptar .
    6. Haga clic en Aceptar .
  7. Tipo = un en cualquier celda. Aparece un cuadro de mensaje con el texto "Class_Initialize".
  8. Haga clic en Aceptar para cerrar el cuadro de mensaje. Después de unos segundos, Excel produce un error.

Referencias

Para obtener información adicional, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
291392INFORMACIÓN: Excel complementos complementos COM y automatización

Propiedades

Id. de artículo: 284876 - Última revisión: viernes, 09 de febrero de 2007 - Versión: 4.2
La información de este artículo se refiere a:
  • Microsoft Office Excel 2007
  • Microsoft Office Excel 2003
  • Microsoft Excel 2002 Standard Edition
Palabras clave: 
kbmt kbautomation kbbug kbpending KB284876 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 284876

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com