Esdeveniments en Excel

El terme "Esdeveniment Excel» s'utilitza per indicar determinades accions realitzades per l'usuari a Excel. Per exemple, quan un usuari canvia un full de llibre de treball, aquest és un esdeveniment. Introduir dades en una cel·la o desar un llibre de treball també són esdeveniments d'Excel.

Els esdeveniments es poden enllaçar a un full de treball d'Excel, a gràfics, a un llibre de treball o directament a la pròpia aplicació d'Excel. Els programadors poden crear codi VBA que s'executarà automàticament quan es produeixi un esdeveniment.

Per exemple, perquè s'executi una macro cada vegada que l'usuari canvia un full de treball en un llibre d'Excel, hauríeu de crear codi VBA que s'executarà cada vegada que es produeixi l'esdeveniment. SheetActivate llibre de treball.

I si voleu que la macro s'executi cada vegada que aneu a un full de treball específic (per exemple, Sheet1), llavors el codi VBA s'ha d'associar a l'esdeveniment Activate per aquest full.

El codi VBA destinat a gestionar esdeveniments d'Excel s'ha de col·locar al full de treball o objecte del llibre de treball adequat a la finestra de l'editor VBA (l'editor es pot obrir fent clic a Alt + F11). Per exemple, el codi que s'ha d'executar cada vegada que es produeix un determinat esdeveniment al nivell del full de treball s'ha de col·locar a la finestra de codi d'aquest full de treball. Això es mostra a la figura:

A l'editor de Visual Basic, podeu veure el conjunt de tots els esdeveniments d'Excel disponibles al nivell de llibre de treball, full de treball o gràfic. Obriu la finestra de codi de l'objecte seleccionat i seleccioneu el tipus d'objecte al menú desplegable esquerre a la part superior de la finestra. El menú desplegable dret a la part superior de la finestra mostrarà els esdeveniments definits per a aquest objecte. La figura següent mostra una llista d'esdeveniments associats amb un full de treball d'Excel:

Esdeveniments en Excel

Feu clic a l'esdeveniment desitjat al menú desplegable dret i s'inserirà automàticament un procediment a la finestra de codi per a aquest objecte. Sub. al capdavant del procediment Sub Excel insereix automàticament els arguments necessaris (si n'hi ha). Només queda afegir el codi VBA per determinar quines accions ha de realitzar el procediment quan es detecta l'esdeveniment desitjat.

exemple

A l'exemple següent, cada vegada que es selecciona una cel·la B1 al full de treball Sheet1 apareix un quadre de missatge.

Per dur a terme aquesta acció, hem d'utilitzar l'esdeveniment del full de treball Selecció_Canvi, que es produeix cada vegada que canvia la selecció d'una cel·la o rang de cel·les. Funció Selecció_Canvi rep com a argument Objectiu object -. Així és com sabem quin rang de cel·les es va seleccionar.

esdeveniment Selecció_Canvi es produeix amb qualsevol selecció nova. Però necessitem que el conjunt d'accions s'executi només quan la cel·la estigui seleccionada B1. Per fer-ho, farem un seguiment de l'esdeveniment només en l'interval especificat Objectiu. Com s'implementa al codi del programa que es mostra a continuació:

"Codi per mostrar un quadre de missatge quan la cel·la B1 està seleccionada" al full de treball actual. Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Comproveu si la cel·la B1 està seleccionada Si Target.Count = 1 I Target.Row = 1 And Target.Column = 2 Aleshores 'Si la cel·la B1 està seleccionada, feu el següent MsgBox "Heu seleccionat una cel·la B1" End If End Sub

Deixa un comentari