/ / Екцел ВБА Апплицатион Објецт

Екцел ВБА апликацијски објекат

ВорксхеетФунцтион | СцреенУпдатинг | ДисплаиАлертс | Израчунавање

Мајка свих предмета је Екцел сама. То зовемо Апликацијски објекат. Апликацијски објекат даје приступ многим Екцел повезаним опцијама.

ВорксхеетФунцтион

Можете користити особину ВорксхеетФунцтион у Екцел ВБА да приступите Екцел функцијама.

1. На пример, поставите командно дугме на свој радни лист и додајте следећу линију кода:

Range("A3").Value = Application.WorksheetFunction.Average(Range("A1:A2"))

Када кликнете на командно дугме на радном листу, Екцел ВБА израчунава просек вредности у ћелији А1 и ћелији А2 и додаје резултат у ћелију А3.

Радни листФунцтион ин Екцел ВБА

Напомена: уместо Апплицатион.ВорксхеетФунцтион.Просечно, једноставно користите функцију радног листа. Просек. Ако погледате формулу, можете видети да сама формула није уметнута у ћелију А3. Да бисте саму формулу убацили у ћелију А3, користите следећу линију кода:

Range("A3").Value = "=AVERAGE(A1:A2)"

СцреенУпдатинг

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

1. На пример, поставите командно дугме на свој радни лист и додајте следеће линије кода:

Dim i As Integer

For i = 1 To 10000
    Range("A1").Value = i
Next i

Када кликнете на командно дугме на радном листу, Екцел ВБА приказује сваку вриједност ситним дијелом секунде и то може трајати неко вријеме.

СцреенУпдатинг

2. Да бисте убрзали процес, ажурирајте код на следећи начин.

Dim i As Integer

Application.ScreenUpdating = False

For i = 1 To 10000
    Range("A1").Value = i
Next i

Application.ScreenUpdating = True

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

ДисплаиАлертс

Можете упутити Екцел ВБА да не прикаже обавештења док извршавате код.

1. На пример, поставите командно дугме на свој радни лист и додајте следећу линију кода:

ActiveWorkbook.Close

Када кликнете на командно дугме на радном листу, Екцел ВБА затвара Екцел датотеку и тражи да сачувате промене које сте направили.

ДисплаиАлертс

2. Да бисте упутили Екцел ВБА да не приказује ово упозорење док извршавате код, ажурирајте код на следећи начин.

Application.DisplayAlerts = False

ActiveWorkbook.Close

Application.DisplayAlerts = True

Као резултат, Екцел ВБА затвара Екцел датотеку, а не тражи да сачувате промене које сте направили. Све измене су изгубљене.

Израчунавање

Подразумевано, израчунавање је подешено на аутоматско. Као резултат, Екцел аутоматски обрачунава радну свеску сваки пут када се промени вриједност која утјече на формулу. Ако ваша радна свеска садржи многе сложене формуле, можете убрзати свој макро тако што ћете израчунати ручно.

1. На пример, поставите командно дугме на свој радни лист и додајте следећу линију кода:

Application.Calculation = xlCalculationManual

Када кликнете на командно дугме на радном листу, Екцел ВБА поставља прорачун у ручно.

2. Можете то потврдити кликом на Филе, Оптионс, Формуле.

Опције калкулације

3. Сада када промените вредност ћелије А1, вредност ћелије Б1 се не прерачунава.

Мануал Цалцулатион

Можете ручно прерачунати радну свеску притиском на Ф9.

4. У већини случајева, поново ћете аутоматски подесити рачунање на крају вашег кода. Једноставно додајте следећу линију кода да бисте то постигли.

Application.Calculation = xlCalculationAutomatic
Такође прочитајте: