22 parasta VBA-haastattelun kysymystä ja vastausta (2026)
Tässä on VBA-haastattelukysymyksiä ja vastauksia tuoreemmille ja kokeneemmille hakijoille unelmatyönsä saamiseksi.
Excel VBA -haastattelukysymyksiä ja vastauksia fuksilaisille
1) Selitä, mikä on VBA tai Visual Basic for Applications?
VBA tarkoittaa Visual Basic for Applications; se on tapahtumaohjattu ohjelmointikieli, jonka on kehittänyt Microsoft. Sitä käytetään pääasiassa Microsoft toimistosovellukset, kuten MS-word, MS-Access ja MS-Excel.
2) Mainitse missä voit kirjoittaa VBA-ohjelman makrolle?
Moduuli on paikka, jossa voit kirjoittaa VBA-ohjelman makrolle, lisätäksesi moduulin, siirry kohtaan Lisää ->Moduulit
👉 Ilmainen PDF-lataus: VBA-haastattelukysymykset ja vastaukset
3) Mainitse mitä kommentityyliä käytetään VBA:ssa?
Kommenttien avulla dokumentoidaan ohjelman logiikka ja käyttäjätiedot, joiden kanssa muut ohjelmoijat voivat jatkossa työskennellä saumattomasti saman koodin parissa. VBA:ssa on pääasiassa kaksi tapaa esittää kommentteja.
- Kaikki lauseet, jotka alkavat yhdellä lainauksella, käsitellään kommentina
- Tai voit käyttää lauseketta REM yhden lainausmerkin (') sijaan
4) Miten VBA:ssa voidaan ilmoittaa muuttuja ja vakio?
VBA:ssa muuttuja voidaan ilmoittaa avainsanalla "DIM", kun taas vakio ilmoitetaan avainsanalla "Const".
5) Mitkä ovat VBA:n tietotyypit?
Tietotyypit VBA:ssa luokitellaan kahteen luokkaan
| Numeerinen tietotyyppi | Ei-numeerinen Tietotyyppi |
|---|---|
| Tavu | merkkijono (kiinteä pituus) |
| Kokonaisluku | merkkijono (muuttuva pituus) |
| Pitkät | Päivämäärä |
| Yksi | boolean |
| Double | objekti |
| valuutta | Variantti (numeerinen) |
| Desimaali | Variantti (teksti) |
6) Selitä, mikä on ADO, ODBC ja OLEDB?
ADO: ActiveX Data Objects tai ADO on yleinen tietojen käyttökehys, joka sisältää DAO:n toiminnot
ODBC: Open Database Connectivity tai ODBC on tekniikka, jonka avulla tietokantaasiakassovellus muodostaa yhteyden ulkoiseen tietokantaan
OLEDB: Se on matalan tason ohjelmointirajapinta, joka on suunniteltu käyttämään laajaa valikoimaa datan käyttöobjektien linkittämistä ja upottamista (OLE)
7) Selitä VBA:n funktioosoittimia?
VBA (Visual Basic Information) on joustavia sovelluksia, mutta VBA:n toimintoosoittimella on rajoituksia. Windows API:lla ei ole riittävää tukea funktioosoittimille, koska sillä on kyky käyttää funktiota, mutta ei toiminnallista tukea funktion takaisinkutsumiseen. Siinä on sisäänrakennettu tuki puhelulle, mutta ei takaisinsoittolle.
8) Selitä, kuinka "viitelaskenta" VBA:ssa tehdään?
VBA:ssa muuttuja menee pian soveltamisalan ulkopuolelle, viiteobjektin viitelaskurin arvoa pienennetään. Kun määrität objektiviittauksen toiselle muuttujalle, viittauslaskuria kasvatetaan. Kun viitemääräsi saavuttaa nollan, se lopettaa tapahtuman.
9) Kuinka voit pienentää viitelaskurin nimenomaisesti?
Jos haluat pienentää viitelaskurin nimenomaisesti, sinun on asetettava muuttujaksi "Ei mitään".
10) Selitä, mitä COM-objektit (Component Object Model) ovat VBA:ssa?
COM-objektit ovat yleensä .dll-tiedostoja, ja ne ovat käännettyjä suoritettavia ohjelmia.
Excel VBA -haastattelukysymyksiä ja vastauksia kokeneille
11) Selitä, kuinka voit valita puhelinnumeron VBA:n kautta?
Jotta voit soittaa puhelinnumeroon VBA:n kautta, sinun on noudatettava seuraavia vaiheita
- VBA:n Shell-komentoa voidaan käyttää käynnistämään sisällä oleva valitsin Windows OS
- Voit muodostaa yhteyden modeemiin puhelinnumeron avulla
- Lähetysnäppäinten ja shell-komennon avulla voit soittaa käyttäjällesi
- Sendkey sanelee ikkunat numeroon sovelluksen näppäinpainallusten mukaan, kun Shell aktivoi Windows hakemus
- Makroa voidaan käyttää käynnistämään korttitiedostoohjelma, joka käynnistää automaattisen numeronvalinnan
12) Selitä, mitä "Option Explicit" tarkoittaa? Missä sitä pitäisi käyttää?
"Option Explicit" tekee muuttujien ilmoittamisesta pakollista. Line eksplisiittinen funktio saa kääntäjän määrittämään kaikki muuttujat, joita dim-lause ei ole ilmoittanut. Tämä komento vähentää tyyppivirheiden ongelmaa merkittävästi. Sitä käytetään VBA:ssa, koska se käsittelee runsaasti tietoa sisältävää sovellusta, jossa tyyppivirheet ovat yleisiä. Ennen minkään alimenettelyn aloittamista sitä voidaan käyttää moduulin sisällä.
13) Selitä, kuinka voit välittää argumentteja VBA-funktioille?
Kun argumentit välitetään VBA-funktioille, ne voidaan välittää kahdella tavalla
- By Val: Kun arvo välittää argumentin, se tarkoittaa, että vain arvo välitetään proseduurille, ja kaikki prosessin sisällä argumenttiin tehdyt muutokset menetetään, kun proseduurista poistutaan.
- ByRef: Kun argumentti välitetään viittauksella, argumentin todellinen osoite välitetään proseduurille. Proseduurin sisällä argumenttiin tehdyt muutokset palautetaan, kun proseduurista poistutaan
14) Mainitse menetelmä, jota kutsutaan ObjectContext-objektista ilmoittamaan MTS:lle, että tapahtuma oli epäonnistunut tai onnistunut?
Setabort ja asetettu valmiiksi menetelmää kutsutaan ObjectContext-objektista ilmoittamaan MTS:lle tapahtuman epäonnistumisesta tai epäonnistumisesta
15) Millä koodilla etsitään sarakkeen viimeksi käytetty rivi tai rivin viimeksi käytetty sarake?
Sarakkeen viimeisen rivin etsimiseen käytetään End(xlUp)-komentoa ja rivin viimeisen sarakkeen löytämiseen End(xlToLeft).
16) Mainitse ero VBA:n alirutiinien ja toimintojen välillä?
Ero aliohjelmien ja funktioiden välillä on se
- Aliohjelmat eivät koskaan palauta arvoa, mutta funktiot palauttavat arvoja
- Aliohjelmat voivat muuttaa todellisten argumenttien arvoja, kun taas funktio ei voinut muuttaa todellisten argumenttien arvoa
17) Selitä, mikä ero on CurrentRegion-ominaisuuksien ja UsedRangen välillä?
- Nykyinen Alue: Nykyinen alue on alue, jota rajoittaa mikä tahansa tyhjien sarakkeiden ja rivien yhdistelmä
- Käytetty alue: Tätä ominaisuutta käytetään valitsemaan käytettyjen solujen alue laskentataulukossa. Se palauttaa Range-objektin, joka edustaa tietyn laskentataulukon käytettyä aluetta
18) Selitä VBA-koodin virheenkorjaus?
Virheenkorjaus VBA-koodissa seuraa ohjeita
- Katkopisteiden käyttäminen (F9)
- Vaiheittainen suoritus (F8)
- Tulosta ja välitön ikkuna ja katsele ikkunaa
19) Kuinka voit pysäyttää VBA-skriptin, kun se menee äärettömään silmukkaan?
Painamalla Cntrl+ Pause Break avain voidaan pysäyttää VBA-skripti, kun se menee äärettömään silmukkaan.
20) Mainitse mitä valikon ominaisuutta ei voi asettaa ajon aikana?
Ajon aikana valikon Name-ominaisuutta ei voi asettaa.
21) Mainitse onko VBA:lla sanakirjarakenne?
Kyllä, VBA:lla on sanakirjarakenne. Voit asettaa viittauksen sanakirjaan
- Set dict = CreateObject("Scripting.Dictionary")
- TAI Dim dict nimellä New Scripting.Dictionary
22) Mainitse kuinka voit kommentoida ja poistaa kommentteja toimiston VBA-editorissa?
Office VBA -editorissa voit kommentoida ja poistaa kommentteja koodilohkoista seuraavien vaiheiden avulla
- Valitse VBA-editorissa Näytä -> Työkalurivit -> Mukauta… TAI napsauta työkaluriviä hiiren kakkospainikkeella ja valitse Mukauta
- Valitse vasemmalla komennot-välilehden alla oleva muokkausvalikko
- Kun vierität alaspäin, näet kaksi kuvaketta, "Comment Block" ja "Uncomment"
- Kun vedät ja pudotat ne työkalupalkkiin, voit helposti korostaa koodilohkon ja tehdä sen kanssa toimia
Nämä haastattelukysymykset auttavat myös vivassasi (suullinen)

