Tapahtumat Excelissä

Termi "Excel-tapahtuma» käytetään osoittamaan tiettyjä käyttäjän Excelissä suorittamia toimintoja. Esimerkiksi, kun käyttäjä vaihtaa työkirjaarkkia, tämä on tapahtuma. Tietojen syöttäminen soluun tai työkirjan tallentaminen ovat myös Excel-tapahtumia.

Tapahtumat voidaan linkittää Excel-laskentataulukkoon, kaavioihin, työkirjaan tai suoraan itse Excel-sovellukseen. Ohjelmoijat voivat luoda VBA-koodin, joka suoritetaan automaattisesti tapahtuman sattuessa.

Jos esimerkiksi haluat suorittaa makron joka kerta, kun käyttäjä vaihtaa Excel-työkirjan laskentataulukkoa, luo VBA-koodi, joka suoritetaan aina, kun tapahtuma tapahtuu. SheetActivate työkirja.

Ja jos haluat, että makro suoritetaan aina, kun siirryt tiettyyn laskentataulukkoon (esim. Sheet1), VBA-koodi on liitettävä tapahtumaan Aktivoida tälle levylle.

Excel-tapahtumien käsittelyyn tarkoitettu VBA-koodi on sijoitettava VBA-editorin ikkunassa sopivaan laskentataulukkoon tai työkirjaobjektiin (editori voidaan avata napsauttamalla Alt + F11). Esimerkiksi koodi, joka tulee suorittaa joka kerta, kun tietty tapahtuma tapahtuu laskentataulukkotasolla, tulee sijoittaa kyseisen laskentataulukon koodiikkunaan. Tämä näkyy kuvassa:

Visual Basic -editorissa voit tarkastella kaikkien käytettävissä olevien Excel-tapahtumien joukkoa työkirja-, laskentataulukko- tai kaaviotasolla. Avaa valitun objektin koodiikkuna ja valitse objektityyppi ikkunan yläreunassa olevasta vasemmasta pudotusvalikosta. Oikeanpuoleinen pudotusvalikko ikkunan yläosassa näyttää tälle objektille määritetyt tapahtumat. Alla olevassa kuvassa on luettelo Excel-laskentataulukkoon liittyvistä tapahtumista:

Tapahtumat Excelissä

Napsauta haluamaasi tapahtumaa oikeanpuoleisessa pudotusvalikossa ja toiminto lisätään automaattisesti tämän objektin koodiikkunaan alla. menettelyn johdossa alla Excel lisää automaattisesti vaaditut argumentit (jos sellaisia ​​on). Jäljelle jää vain VBA-koodin lisääminen määrittääksesi, mitä toimenpiteitä toimenpiteen tulee suorittaa, kun haluttu tapahtuma havaitaan.

esimerkki

Seuraavassa esimerkissä joka kerta, kun solu valitaan B1 laskentataulukolla Sheet1 viestiruutu tulee näkyviin.

Tämän toiminnon suorittamiseksi meidän on käytettävä laskentataulukkotapahtumaa Selection_Change, joka tapahtuu aina, kun solun tai solualueen valinta muuttuu. Toiminto Selection_Change saa argumenttina Kohde objekti -. Näin tiedämme, mikä solualue on valittu.

tapahtuma Selection_Change tapahtuu minkä tahansa uuden valinnan yhteydessä. Mutta meidän on suoritettava toimintosarja vain, kun solu on valittu B1. Tätä varten seuraamme tapahtumaa vain määritetyllä alueella Kohde. Kuinka se on toteutettu alla olevassa ohjelmakoodissa:

"Koodi, joka näyttää sanomaruudun, kun solu B1 on valittuna" nykyisessä laskentataulukossa. Private Sub Worksheet_SelectionChange(ByVal Target As Range) 'Tarkista, onko solu B1 valittu Jos Target.Count = 1 Ja Target.Row = 1 Ja Target.Column = 2 Sitten 'Jos solu B1 on valittuna, tee seuraava ViestiBox "Sinulla on valitsi solun B1" End If End Sub

Jätä vastaus