VBA programmeerijaks olemine võib kohati olla üle jõu käiv. Üks võimalus VBA-le vaadata on see, et see on tööriist, mis võimaldab teil jäljendada Exceli käske. Näiteks kaaluge seda VBA avaldust:
Vahemik ("A1:A12"). Nimi = "Kuu nimed"
Selle VBA-lause täitmisel on sama efekt kui valikul Valemid → Määratletud nimed → Määrake nimi dialoogiboksi Uus nimi kuvamiseks, tippides väljale Nimi kuunimed ja väljale Refers to A1:A12 ning klõpsates nuppu OK.
Kui käivitate VBA-lause, dialoogiboksi Uus nimi ei kuvata. See on peaaegu alati see, mida soovite juhtuda; te ei soovi, et dialoogiboksid makro täitmise ajal üle ekraani vilkuks.
Mõnel juhul võite soovida, et teie kood kuvaks ühe Exceli paljudest sisseehitatud dialoogiboksidest ja laseb kasutajal dialoogiboksis valikuid teha. Seda saate teha VBA-ga lindi käsu täitmiseks. Siin on näide, mis kuvab dialoogiboksi Uus nimi. Aadress kastis Refers To tähistab vahemikku, mis valitakse käsu täitmisel.
Ühe Exceli dialoogiboksi kuvamine VBA abil.
Application.CommandBars.ExecuteMso “NameDefine”
Teie VBA-kood ei saa dialoogiboksist teavet. Näiteks kui käivitate koodi dialoogiboksi Uus nimi kuvamiseks, ei saa teie kood saada kasutaja sisestatud nime ega nimetatavat vahemikku.
ExecuteMso on CommandBarsi objekti meetod ja aktsepteerib ühte argumenti: idMso parameeter, mis tähistab lindi juhtelementi. Kahjuks pole neid parameetreid abisüsteemis loetletud. Ja kuna lint pole olnud igavesti, ei ühildu ExecuteMso meetodit kasutav kood Excel 2007 eelsete versioonidega.
Siin on veel üks näide ExecuteMso meetodi kasutamisest. Selle avalduse käivitamisel kuvatakse dialoogiboksi Lahtrite vormindamine vahekaart Font:
Application.CommandBars.ExecuteMso
"FormatCellsFontDialog"
Kui proovite kuvada sisseehitatud dialoogiboksi vales kontekstis, kuvab Excel veateate. Näiteks siin on avaldus, mis kuvab dialoogiboksi Vorming number:
Application.CommandBars.ExecuteMso “NumberFormatsDialog”
Kui käivitate selle avalduse, kui see pole sobiv (näiteks on valitud kujund), kuvab Excel tõrketeate, kuna see dialoogiboks sobib ainult töölehe lahtrite jaoks.
Excelil on tuhandeid käske. Kuidas leida vajaliku nime? Üks võimalus on kasutada Exceli suvandite dialoogiboksi vahekaarti Kohanda lint. Kiire viis sinna jõudmiseks on paremklõpsata mis tahes lindi juhtelementi ja valida kiirmenüüst lindi kohandamine.
Peaaegu kõik Excelis saadaolevad käsud on loetletud vasakpoolsel paneelil. Otsige üles vajalik käsk ja hõljutage kursorit selle kohal ning näete vihjes selle salajase käsu nime (see on sulgudes olev osa).
Vahekaardi Kohanda lint kasutamine käsu nime tuvastamiseks.