ВБА Мак функција - Како пронаћи максимум користећи Мак у програму Екцел ВБА?

Преглед садржаја

Мак, као што и само име говори, користи се за откривање максималне вредности из датог скупа података или низа, ово је функција радног листа, па се користи са методом радног листа као функција радног листа, а овај метод има ограничење функција узима низ као аргумент, у низу може бити само 30 вредности.

Екцел ВБА Мак функција

У Екцелу имамо неколико нумеричких функција. Можемо да избројимо нумеричке вредности у опсегу, можемо да збројимо и можемо да пронађемо минималну вредност као и максималну вредност лота. Да бисмо пронашли максималну вредност лота, имамо екцел функцију која се зове МАКС, која враћа максималну вредност испорученог опсега бројева. У ВБА немамо уграђену функцију која се зове „МАКС“ да бисмо добили максималан број. Видећемо како да користимо ову Екцел ВБА Мак функцију.

Пример максималне функције у програму Екцел ВБА

Нажалост, немамо луксуз да користимо МАКС као ВБА уграђену функцију, али овој функцији можемо да приступимо као део класе Функције радног листа.

Сада погледајте доњи код.

Шифра:

Суб МАКС_Екампле1 () Дим а Ас Интегер Дим б Ас Интегер Дим ц Ас Интегер Дим Ресулт Ас Интегер а = 50 б = 25 ц = 60 Ресулт = ВорксхеетФунцтион.Мак (а, б, ц) МсгБок Ресулт Енд Суб

У горњем примеру сам прогласио три променљиве за чување броја.

Дим а Ас Интегер  Дим б Ас Интегер  Дим ц Ас Интегер

Прогласио сам још једну променљиву за приказ резултата.

Затамни резултат као целобројно.

За прве 3 три променљиве доделио сам вредност попут 50, 25 и 60, респективно.

а = 50  б = 25  ц = 60

У следећем реду сам применио МАКС као класу функција ВБА радног листа за чување резултата у променљивој „Резултат“.

Резултат = ВорксхеетФунцтион.Мак (а, б, ц)

На крају, вредност приказујем у оквиру за поруке у ВБА. Резултат МсгБок-а

Сада ћу покренути овај код помоћу Ф5 или ручно и видети какав је резултат у оквиру за поруке.

Дакле, резултат је 60.

Од свих испоручених бројева, тј. 50, 25 и 60, максимални број је 60.

Напредни пример максима у програму Екцел ВБА

Петље су у ВБА веома важне за пролазак кроз све ћелије и постизање резултата. Видећемо како да комбинујемо ВБА МАКС са петљама да бисмо добили максималну вредност са листе бројева.

Имам списак предмета и њихов месечни учинак продаје тих предмета, као што је приказано у наставку.

Сада за сваку ставку желим да знам колики је максимални број продаје током 4 месеца, као што је приказано на слици.

Применом МАКС-а на екцел, то можемо пронаћи за неколико секунди.

Сада ћемо видети како да пронађемо максималну вредност помоћу ВБА кода.

Код у наставку извршиће задатак проналажења максималног броја за сваку ставку.

Шифра:

Суб МАКС_Екампле2 () Дим к као цео број за к = 2 до 9 ћелија (к, 7) .Валуе = ВорксхеетФунцтион.Мак (Распон ("А" & к & ":" & "Е" & к)) Следећи к Крај Суб

Ово ће лако идентификовати максималан број.

Сада покрените код ручно или притисните тастер Ф5 и погледајте резултат као што је приказано доле.

Да бисте добили назив месеца са максималним вредностима, користите доњи код.

Шифра:

Суб МАКС_Екампле2 () Дим к као целобројно за к = 2 до 9 ћелија (к, 7) .Валуе = ВорксхеетФунцтион.Мак (Распон ("Б" & к & ":" & "Е" & к)) Ћелије (к, 8) .Валуе = ВорксхеетФунцтион.Индек (Распон ("Б1: Е1"), ВорксхеетФунцтион.Матцх _ (Ћелије (к, 7). Вредност, опсег ("Б" & к & ":" & "Е" & к) )) Следећи к Крај Суб

На основу вредности коју пружа функција ВБА мак, функција ИНДЕКС и функција МАТЦХ враћају придружени месец у следећем реду.

Ствари које треба запамтити

  • Ако је њихов дупликат број, он ће приказати само један број који је први.
  • Ово је супротна формула функције МИН у екцелу.
  • МАКС није ВБА функција. То је уграђена функција у екцелу, тако да користите класу функције радног листа.

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

Занимљиви Чланци...