ВБА Веекдаи | Корак по корак Водич за радне дане у ВБА

Екцел ВБА функција радног дана

Радним даном у ВБА је функција датума и времена која се користи за идентификовање дана у дану датог датума под условом да је унесена, ова функција враћа целобројну вредност од 1 до 7 опсега, овој функцији је понуђен опционални аргумент који је први дан недељу, али ако не одредимо први дан у недељи, функција подразумевано подразумева недељу као први дан у недељи.

Можемо ли одредити број радног дана гледајући одређени датум? Да, можемо да одредимо број дана те недеље у зависности од дана почетка недеље. У редовним функцијама радног листа, у Екцелу имамо функцију која се зове ВЕЕКДАИ да би се одредио број недеље за одређени датум. И у ВБА имамо исту функцију за проналажење исте ствари.

Шта ради функција радног дана?

Функција „Недељни дан“ враћа број дана у недељи наведеног датума. На пример, ако имате датуме од 01. априла до 07. априла и ако желите да знате дан датума 05. априла, ако је почетак недеље у понедељак, то је 5. дан.

Да бисмо то пронашли, имамо исту функцију „Веекдаи“ на радном листу као и у ВБА. Испод је синтакса функције.

Датум: За који датум покушавамо да пронађемо радни дан. Ово би требао бити прави датум са исправним форматом.

[Први дан у недељи]: Да би се утврдио радни дан предвиђеног Датум треба напоменути који је први дан у недељи. ВБА подразумевано сматра „понедељак“ почетним даном у недељи. Осим овога, можемо обезбедити и наредне дане.

Примери

Овде можете преузети овај предложак функције ВБА ВеекДаи Фунцтион Екцел - ВБА ВеекДаи Фунцтион Екцел предложак

Пример # 1

Да започнем поступак, прво ћу започети са једноставним примером. Сада ћемо покушати да пронађемо радни дан за датум „10. април-2019“.

Корак 1: Дефинишите променљиву као Стринг

Шифра:

 Суб Веекдаи_Екампле1 () Дим к Ас Стринг Енд Суб 

Корак 2: Доделите вредност променљивој

Доделите вредност променљивој „к“ применом функције ВЕЕКДАИ.

Шифра:

 Суб Веекдаи_Екампле1 () Дим к Ас Стринг к = Веекдаи (Енд Суб 

Корак 3: Унесите датум у функцију

Датум који овде тестирамо је „10. април 2019.“, па наведите датум као „10. април 2019.“.

Шифра:

 Суб Веекдаи_Екампле1 () Дим к Ас Стринг к = Веекдаи ("10-Апр-2019" Енд Суб 

Корак 4: Прикажите вредност променљиве у МсгБок-у

Подразумевано је да је први дан у недељи „понедељак“, па занемарите овај део. Затворите носач. У следећем реду прикажите вредност променљиве „к“ у оквиру за ВБА поруку.

Шифра:

 Суб Веекдаи_Екампле1 () Дим к Ас Стринг к = Веекдаи ("10-Апр-2019") МсгБок к Енд Суб 

Ок, готови смо.

Ако покренемо код, добићемо резултат „4“, јер од недеље наведени датум (10. април 2019.) пада на 4. дан у недељи.

Белешка: Дан почетка недеље у мом систему је „недеља“.

Слично томе, ако промените дан почетка недеље, он ће и даље варирати. Испод је пример линије за исто.

Шифра:

к = Дан у дану ("10. април 2019", вбМондаи) 'Ово враћа 3 к = Дан у дану ("10. април 2019", вбТуесдаи)' Ово враћа 2 к = Дан у дану ("10. април 2019", вбВеднесдаи) 'Ово враћа 1 к = радни дан ("10. април 2019., ВбТхурсдаи)' Ово враћа 7 к = радни дан (" 10. 4. 2019., ВбФридаи) 'Ово враћа 6 к = радни дан ("10. април. 2019. ", вбСатурдаи) 'Ово враћа 5 к = Недеља (" 10. април 2019 ", вбСундаи)' Ово враћа 4 

Пример # 2 - Дођите да ли је датум викендом или не

Претпоставимо да имате датум као доле и желите да пронађете датум следећег викенда, а онда можемо да користимо функцију ВИКЕНД да бисмо дошли до резултата.

Морамо да користимо ВЕЕКДАИ са ИФ стањем и петљама да бисмо дошли до резултата. Написао сам код за вас да идете ред по ред да бисте схватили логику.

Шифра:

 Суб Веекенд_Датес () Дим к као цео број за к = 2 до 9 Иф Веекдаи (Ћелије (к, 1) .Валуе, вбМондаи) = 1 Затим Ћелије (к, 2) .Вредност = Ћелије (к, 1) + 5 ЕлсеИф Веекдаи (Ћелије (к, 1) .Вредност, вбМондаи) = 2 Затим Ћелије (к, 2) .Вредност = Ћелије (к, 1) + 4 ЕлсеИф Дан у дану (Ћелије (к, 1) .Вредност, вбМондаи) = 3 Тада ћелије (к, 2) .Вредност = Ћелије (к, 1) + 3 ЕлсеИф Дан у дану (Ћелије (к, 1) .Вредност, вбМондаи) = 4 Затим Ћелије (к, 2) .Вредност = Ћелије (к, 1) + 2 ЕлсеИф Веекдаи (Ћелије (к, 1) .Валуе, вбМондаи) = 5 Затим Ћелије (к, 2) .Валуе = Ћелије (к, 1) + 1 Остале ћелије (к, 2) .Валуе = "Ово је заправо викенд Дате "Енд Иф Нект к Енд Суб 

Ово ће доћи до резултата испод.

Погледајте ћелије Б6 и Б7, добили смо резултат као „Ово је заправо датум викенда“ јер су датуми „04. мај 2019.“ и „06. април 2019.“ заправо датуми викенда, тако да нема потребе за приказивањем датума викенда за датуме викенда. Подразумевано добијамо резултат као овај.