Бити ВБА програмер понекад може бити неодољив. Један од начина да погледате ВБА је да је то алатка која вам омогућава да опонашате Екцел команде. На пример, размотрите ову ВБА изјаву:
Опсег(“А1:А12”).Назив = “Имена месеца”
Извршавање ове ВБА наредбе има исти ефекат као бирање Формуле → Дефинисана имена → Дефиниши име за приказ дијалога Ново име, откуцавање Имена месеца у пољу Име и А1:А12 у пољу Односи се на и клик на ОК.
Када извршите ВБА наредбу, дијалог „Ново име“ се не појављује. Ово је скоро увек оно што желите да се деси; не желите да дијалошки оквири трепере по екрану док се ваш макро извршава.
У неким случајевима, међутим, можда ћете желети да ваш код приказује један од многих уграђених дијалошких оквира Екцел-а и дозволи кориснику да бира у оквиру за дијалог. То можете да урадите коришћењем ВБА за извршавање команде траке. Ево примера који приказује дијалог Ново име. Адреса у пољу Реферс То представља опсег који је изабран када се наредба изврши.
Приказ једног од дијалошких оквира програма Екцел помоћу ВБА.
Апплицатион.ЦоммандБарс.ЕкецутеМсо „НамеДефине“
Ваш ВБА код не може да добије никакве информације из дијалога. На пример, ако извршите код да бисте приказали дијалог Ново име, ваш код не може да добије име које је унео корисник или опсег који се именује.
ЕкецутеМсо је метод ЦоммандБарс објекта и прихвата један аргумент: параметар идМсо који представља контролу траке. Нажалост, ови параметри нису наведени у систему помоћи. А пошто трака није постојала одувек, код који користи методу ЕкецутеМсо није компатибилан са верзијама пре Екцел 2007.
Ево још једног примера коришћења методе ЕкецутеМсо. Ова изјава, када се изврши, приказује картицу Фонт у оквиру за дијалог Формат Целлс:
Апплицатион.ЦоммандБарс.ЕкецутеМсо
„ФорматЦеллсФонтДиалог“
Ако покушате да прикажете уграђени оквир за дијалог у погрешном контексту, Екцел приказује поруку о грешци. На пример, ево изјаве која приказује оквир за дијалог Формат Нумбер:
Апплицатион.ЦоммандБарс.ЕкецутеМсо „НумберФорматсДиалог“
Ако извршите ову наредбу када није прикладна (на пример, изабран је облик), Екцел приказује поруку о грешци јер је тај оквир за дијалог прикладан само за ћелије радног листа.
Екцел има хиљаде команди. Како можете пронаћи име онога који вам је потребан? Један од начина је да користите картицу Прилагоди траку у дијалогу Екцел опције. Брз начин да дођете до тога је да кликнете десним тастером миша на било коју контролу траке и изаберете Прилагоди траку из менија са пречицама.
Практично све наредбе доступне у Екцел-у су наведене на левом панелу. Пронађите команду која вам је потребна и поставите показивач миша преко ње и видећете њено тајно име команде у опису алатке (то је део у заградама).
Коришћење картице Прилагоди траку за идентификацију назива команде.