VBA операторлары және кірістірілген функциялар

Excel VBA мәлімдемелері

Excel бағдарламасында VBA кодын жазу кезінде әрбір қадамда кірістірілген операторлар жинағы пайдаланылады. Бұл операторлар математикалық, жолдық, салыстыру және логикалық операторлар болып бөлінеді. Әрі қарай біз операторлардың әрбір тобын егжей-тегжейлі қарастырамыз.

Математикалық операторлар

Негізгі VBA математикалық операторлары төмендегі кестеде берілген.

Кестенің оң жақ бағанында жақшаларсыз әдепкі оператор басымдылығы көрсетілген. Өрнекке жақшаларды қосу арқылы VBA операторларының орындалу ретін қалауыңызша өзгертуге болады.

ОператорActionбасымдық

(1 – ең жоғары; 5 – ең төменгі)

^дәрежелеу операторы1
*көбейту операторы2
/бөлу операторы2
Қалдықсыз бөлу – екі санды қалдықсыз бөлу нәтижесін береді. Мысалға, 74 нәтижені қайтарады 13
батылдықModulo (қалдық) операторы – екі санды бөлгеннен кейін қалдықты қайтарады. Мысалға, 8 қарсы 3 нәтижені қайтарады 2.4
+Қосу операторы5
-азайту операторы5

Жолдық операторлар

Excel VBA жүйесіндегі негізгі жол операторы біріктіру операторы болып табылады & (біріктіру):

ОператорAction
&жалғау операторы. Мысалы, өрнек «А» және «Б» нәтижені қайтарады AB.

Салыстыру операторлары

Салыстыру операторлары екі санды немесе жолды салыстыру және түрдің логикалық мәнін қайтару үшін қолданылады Бульдік (Шын немесе жалған). Негізгі Excel VBA салыстыру операторлары осы кестеде берілген:

ОператорAction
=Бірдей
<>Тең емес
<Аздау
>Қосымша ақпарат
<=Кем немесе тең
>=Үлкен немесе тең

Логикалық операторлар

Салыстыру операторлары сияқты логикалық операторлар түрдің логикалық мәнін қайтарады Бульдік (Шын немесе жалған). Excel VBA негізгі логикалық операторлары төмендегі кестеде берілген:

ОператорAction
Жәнеконъюнкция операциясы, логикалық оператор И. Мысалы, өрнек А және В қайтарылады рас, егер A и B екеуі тең рас, әйтпесе қайтарыңыз жалған.
OrДизъюнкция операциясы, логикалық оператор OR. Мысалы, өрнек А немесе В қайтарылады рас, егер A or B тең рас, және қайтады жалған, егер A и B екеуі тең жалған.
емесТерістеу операциясы, логикалық оператор ЕМЕС. Мысалы, өрнек А емес қайтарылады рас, егер A тең жалған, немесе қайтарыңыз жалған, егер A тең рас.

Жоғарыдағы кестеде VBA жүйесінде қол жетімді барлық логикалық операторлар тізімі жоқ. Логикалық операторлардың толық тізімін Visual Basic әзірлеушілер орталығынан табуға болады.

Кірістірілген функциялар

VBA-да кодты жазу кезінде пайдалануға болатын көптеген кірістірілген функциялар бар. Төменде ең жиі қолданылатындардың кейбірі берілген:

функцияAction
ABSБерілген санның абсолютті мәнін береді.

Мысал:

  • Abs(-20) 20 мәнін қайтарады;
  • Abs(20) 20 мәнін қайтарады.
ШрПараметрдің сандық мәніне сәйкес ANSI таңбасын қайтарады.

Мысал:

  • Chr(10) жол үзілімін қайтарады;
  • Chr(97) таңбаны қайтарады a.
датаАғымдағы жүйе күнін қайтарады.
Қосылған күніБерілген күнге белгілі бір уақыт аралығын қосады. Функция синтаксисі:

DateAdd(интервал, число, дата)

Дау қайда интервал берілгенге қосылған уақыт интервалының түрін анықтайды дата дәлелде көрсетілген мөлшерде нөмір.

Аргумент интервал келесі мәндердің бірін қабылдай алады:

Аралыққұн
yyyyжыл
qТоқсан
mай
yжылдың күні
dкүн
wаптаның күні
wwапта
hсағат
nминут
sсекунд

Мысал:

  • Қосылған күні(«d», 32, «01/01/2015») 32/01/01 күніне 2015 күн қосады және осылайша 02/02/2015 күнін қайтарады.
  • DateAdd(«ww», 36, «01/01/2015») 36/01/01 күніне 2015 апта қосады және 09/09/2015 күнін қайтарады.
DateDiffЕкі берілген күн арасындағы көрсетілген уақыт аралықтарының санын есептейді.

Мысал:

  • DateDiff(«d», «01/01/2015», «02/02/2015») 01 және 01 күндер санын есептейді, 2015 қайтарады.
  • DateDiff(«ww», «01/01/2015», «03/03/2016») 01/01/2015 және 03/03/2016 арасындағы апталар санын есептейді, 61 қайтарады.
күнБерілген күндегі ай күніне сәйкес бүтін санды қайтарады.

Мысал: Күн («29») 29 санын қайтарады.

сағатБерілген уақыттағы сағаттар санына сәйкес бүтін санды қайтарады.

Мысал: Сағат («22:45:00») 22 санын қайтарады.

InStrОл аргумент ретінде бүтін санды және екі жолды алады. Іздеуді бүтін санмен берілген позициядан бастап, бірінші ішіндегі екінші жолдың пайда болу орнын қайтарады.

Мысал:

  • InStr(1, «Міне, іздеу сөзі», «сөз») 13 санын қайтарады.
  • InStr(14, «Міне, іздеу сөзі, міне, басқа іздеу сөзі», «сөз») 38 санын қайтарады.

Ескерту: Сан аргументі көрсетілмеуі мүмкін, бұл жағдайда іздеу функцияның екінші аргументінде көрсетілген жолдың бірінші таңбасынан басталады.

IntБерілген санның бүтін бөлігін қайтарады.

Мысал: Int(5.79) 5 нәтижені қайтарады.

КүніҚайтару расегер берілген мән күн болса немесе жалған – егер күн болмаса.

Мысал:

  • Күні («01/01/2015») қайтару рас;
  • Күні(100) қайтару жалған.
IsErrorҚайтару расегер берілген мән қате болса, немесе жалған – егер бұл қате болмаса.
ЖоқҚосымша процедура аргументінің аты функцияға аргумент ретінде беріледі. Жоқ қайтару расегер қарастырылып отырған процедура аргументі үшін мән берілмесе.
IsNumericҚайтару расегер берілген мәнді сан ретінде қарастыруға болатын болса, әйтпесе қайтарады жалған.
солБерілген жолдың басынан таңбалардың көрсетілген санын қайтарады. Функция синтаксисі келесідей:

Left(строка, длина)

қайда сызық бастапқы жол болып табылады және ұзындық жолдың басынан бастап есептелетін қайтарылатын таңбалар саны.

Мысал:

  • Сол жақ («abvgdejziklmn», 4) «abcg» жолын қайтарады;
  • Сол жақ («abvgdejziklmn», 1) «a» жолын қайтарады.
LenЖолдағы таңбалар санын қайтарады.

Мысал: Лен («abcdej») 7 санын қайтарады.

айБерілген күннің айына сәйкес бүтін санды қайтарады.

Мысал: Ай («29/01/2015») 1 мәнін қайтарады.

ОрташаБерілген жолдың ортасынан таңбалардың көрсетілген санын қайтарады. Функция синтаксисі:

ортаңғы(сызық, бастау, ұзындық)

қайда сызық бастапқы жол болып табылады бастау – шығарылатын жолдың басының орны, ұзындық - шығарылатын таңбалар саны.

Мысал:

  • Орта («abvgdejziklmn», 4, 5) «қайда» жолын қайтарады;
  • Орта («abvgdejziklmn», 10, 2) «cl» жолын қайтарады.
минутБерілген уақыттағы минуттар санына сәйкес бүтін санды қайтарады. Мысалы: Минут(«22:45:15») 45 мәнін қайтарады.
қазірАғымдағы жүйе күні мен уақытын қайтарады.
оңБерілген жолдың соңынан таңбалардың көрсетілген санын қайтарады. Функция синтаксисі:

Оң(сызық, ұзындық)

қайда сызық бастапқы жол болып табылады және ұзындық - берілген жолдың соңынан бастап есептеп шығарылатын таңбалар саны.

Мысал:

  • Оң жақ («abvgdezhziklmn», 4) «clmn» жолын қайтарады;
  • Оң жақ («abvgdezhziklmn», 1) «n» жолын қайтарады.
секундБерілген уақыттағы секундтар санына сәйкес бүтін санды қайтарады.

Мысал: Екінші («22:45:15») 15 мәнін қайтарады.

шаршыАргументте берілген сандық мәннің квадрат түбірін қайтарады.

Мысал:

  • шаршы(4) 2 мәнін қайтарады;
  • шаршы(16) 4 мәнін қайтарады.
уақытАғымдағы жүйе уақытын қайтарады.
Қайта оралдыКөрсетілген жиым өлшемінің жоғарғы белгісін қайтарады.

Ескерту: Көп өлшемді массивтер үшін қосымша аргумент қайтарылатын өлшемнің индексі болуы мүмкін. Көрсетілмесе, әдепкі 1 болады.

жылБерілген күннің жылына сәйкес бүтін санды қайтарады. Мысалы: Жыл («29/01/2015») 2015 мәнін қайтарады.

Бұл тізім тек ең жиі қолданылатын кірістірілген Excel Visual Basic функцияларының таңдауын қамтиды. Excel макростарында пайдалануға қол жетімді VBA функцияларының толық тізімін Visual Basic әзірлеушілер орталығынан табуға болады.

пікір қалдыру