Pag-update ng VBA Screen | Pinapabilis ang Proseso ng Pagpapatakbo ng Code
Pag-update ng Excel VBA Screen
Pag-update ng VBA Screen ay isang pag-aari na ginagamit upang maiwasan o maiwasan ang pagkagambala ng mga pag-flash habang pinapatakbo ang code at gawin itong mabilis sa pamamagitan ng pag-off sa Pag-update ng Screen. Maaari naming i-off ang pag-update sa screen sa pamamagitan ng pagtatakda ng katangiang ito bilang hindi totoo.
Kadalasan sa mga oras na maramdaman natin na nagiging sira ang ulo ng excel screen habang tumatakbo ang macro at halos mabigo tayo doon. Ngunit paano natin haharapin ang mga sitwasyong ito at gawin ang code na tumakbo nang mas mabilis kaysa sa karaniwang mabagal na bagay?
Ang Pag-update sa Screen ay isang bagay na maaari naming mapansin habang tumatakbo ang excel macro. Kapag ang gawain ay naisakatuparan maaari naming mapansin ang aming screen ay ina-update ang mga halaga hanggang sa matapos ang macro sa nakatalagang gawain nito. Tulad ng pag-flicker ng aming screen o pag-refresh ay humahantong ito sa pagbagal ng excel program at tumatagal ng mas mahabang oras kaysa sa dati upang makumpleto ang gawain.
Sa VBA mayroon kaming isang pag-aari na tinatawag na "ScreenUpdating" at itinakda namin ang ari-arian na ito sa MALI upang maalis nito ang proseso ng pag-update sa screen habang tumatakbo ang code.
Sa artikulong ito, magpaalam kami sa panonood ng on-screen action drama habang tumatakbo ang code. Ngayon ay gagawin mo ang iyong code na tumakbo nang mas mabilis at mas mabilis kaysa sa iyong karaniwang oras.
Kailan gagamit ng Tampok sa Pag-update ng Screen?
Kung mayroon kang anumang pagdududa kung kailan gagamitin ang diskarteng ito. Tingnan ang mga puntos sa ibaba.
- Kapag ikaw ay looping sa pamamagitan ng isang malaking bilang ng mga cell.
- Nagpapadala ng mga email mula sa Excel VBA.
- Paglipat sa pagitan ng mga excbook ng workbook.
- Pagbubukas ng mga bagong workbook.
Paano magagamit ang Tampok na Pag-update ng Screen sa VBA Code?
Maaari mong i-download ang VBA ScreenUpdating Excel Template dito - VBA ScreenUpdating Excel TemplateHalimbawa # 1 - I-off ang Pag-update ng Screen
Para sa isang halimbawa tingnan ang code sa ibaba.
Code:
Sub Screen_Updating () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount). Select Cells (RowCount, ColumnCount) .Value = MyNumber Susunod na ColumnCount Susunod na RowCount End Sub
Ang nasa itaas ay may pugad ng VBA loop upang ipasok ang mga serial number mula sa unang haligi hanggang sa ika-50 na haligi at muli itong babalik at ipasok ang serial number na nagsisimula sa 51 mula sa pangalawang hilera hanggang sa ika-50 na haligi.
Tulad nito, isisingit ito hanggang sa maabot nito ang ika-50 na hilera.
Habang tumatakbo ang code na ito maaari mong mapansin ang pag-flicker ng iyong screen at wala kang magawa kahit ano bukod sa panonood ng nakatutuwang sandaling ito.
Upang maiwasan ang lahat ng ito maaari kaming magdagdag ng Pag-update ng Screen sa MALI.
Upang ma-access ang tampok na Pag-update sa Screen kailangan muna naming i-access ang Application object.
Tulad ng nakikita natin sa object ng Application mayroon kaming maraming mga katangian at pamamaraan. Kaya, piliin ang Pag-update ng Screen mula sa listahan ng IntelliSense.
Tandaan: Kailangan mong ilapat kaagad ang tampok na Pag-update ng Screen pagkatapos ng pagdeklara ng mga variable.
Matapos piliin ang pag-aari ng Pag-update ng Screen maglagay ng pantay na pag-sign (=).
Tulad ng nakikita natin ang dalawang halaga ng Boolean hal FALSE & TRUE.
Upang ihinto ang pag-update sa screen itakda ang katayuan sa FALSE.
Ngayon, habang nagsisimulang tumakbo muna ang macro ay ia-update nito ang katayuan sa pag-a-update ng screen sa FALSE at magpatuloy sa susunod na linya.
Dahil ang pagpapatupad ng macro sa Pag-update ng Screen sa MALI ay hindi nito papayagan ang screen na mag-update habang ipinapatupad ng code ang gawain nito.
Halimbawa # 2 -
Palaging Itakda ang Pag-update ng Screen sa TRUE sa Wakas
Nakita ko ang maraming mga tao na itinakda ang Pag-update sa Screen sa MALI ngunit nakalimutan na itakda ito pabalik sa TUNAY sa pagtatapos ng macro.
Palaging itakda ang Pag-update ng Screen pabalik sa TUNAY sa pagtatapos ng macro.
Code:
Sub Screen_Updating () Dim RowCount As Long Dim ColumnCount As Long Dim MyNumber As Long Application.ScreenUpdating = False MyNumber = 0 For RowCount = 1 To 50 For ColumnCount = 1 To 50 MyNumber = MyNumber + 1 Cells (RowCount, ColumnCount). Piliin ang Mga Cell (RowCount, ColumnCount) .Value = MyNumber Susunod na ColumnCount Susunod na Application ng RowCount. ScreenUpdating = True End Sub