2010-07-14 11 views
7

¿Dónde puedo encontrar una lista de eventos en Excel? Quiero escribir macros en VBA basadas en ellos. Ya sé de Worksheet_BeforeDoubleClick, pero descubrí más o menos que al azar/recuerdo que se utilizó en Access.¿Cuáles son los eventos que puedo usar en Excel

¿Alguien tiene una lista completa o sabe dónde puedo encontrar uno de los diferentes eventos en Excel?

+0

Yip tengo. ¡Gracias a todos por las útiles respuestas! – Jeff

Respuesta

3

Otra forma de encontrarlos es abrir el VBE (Alt + F11), hacer clic en el módulo de clase del objeto (como ThisWorkbook o Sheet1) y usar los cuadros desplegables en la parte superior del panel de códigos. Si, por ejemplo, selecciona ThisWorkbook de la lista desplegable de la izquierda, el menú desplegable de la derecha contendrá todos los eventos disponibles para usted.

Para objetos que no están libro o la hoja de trabajo (Aplicación, QueryTable, etc), crean un módulo de clase personalizada en su proyecto (Insertar - Módulo de clase) y tipo (por ejemplo)

Public WithEvents qt As QueryTable 

Ahora ' qt 'aparecerá en la lista desplegable de la izquierda y todos los eventos de una QueryTable aparecerán en la lista correcta. Notará que el Intellisense solo muestra un número limitado de objetos cuando incluye WithEvents. Estos son los únicos objetos que tienen eventos expuestos. Por lo tanto, no puede escribir

Public WithEvents rng As Range 

porque el objeto Range no expone ningún evento. Un poco más engorroso que la respuesta de James, pero una buena forma de navegar por los eventos cuando conoces el objeto y obtener una lista de objetos con eventos expuestos.

Cuestiones relacionadas