Saklaw ng Itakda ng VBA | Patnubay sa Itakda ang Saklaw ng Mga Cell sa Excel VBA Code

Itakda ang Saklaw sa Excel VBA

Itakda ang saklaw sa vba nangangahulugang tinukoy namin ang isang naibigay na saklaw sa code o ang pamamaraan upang maipatupad, kung hindi kami nagbibigay ng isang tukoy na saklaw sa isang code awtomatiko nitong ipalagay ang saklaw mula sa worksheet na mayroong aktibong cell kaya napakahalaga sa code na magkaroon ng hanay ng variable na hanay.

Matapos magtrabaho nang labis sa maraming mga taon dapat mong maunawaan ang katotohanan na ang lahat ng mga gawaing ginagawa namin ay nasa worksheet at sa mga worksheet ito ay mga cell na naglalaman ng data. Kaya't kapag nais mong maglaro sa paligid ng data dapat kang maging isang pattern ng pag-uugali ng mga cell sa worksheet. Kaya't kapag ang maramihang mga cell ay magkakasama ito ay nagiging isang RANGE. Upang malaman ang VBA dapat mong malaman ang bawat isa tungkol sa mga cell at saklaw. Kaya sa artikulong ito, ipapakita namin sa iyo kung paano itatakda ang saklaw ng mga cell na maaaring magamit para sa pag-coding ng VBA nang detalyado.

Ano ang Saklaw na Bagay?

Saklaw sa VBA ay tinukoy bilang isang bagay. Ang isang saklaw ay maaaring maglaman ng isang solong cell, maraming mga cell, isang hilera o haligi, atbp.

Sa VBA maaari nating maiuri ang saklaw sa ibaba.

"Application >>> Workbook >>> Worksheet >>> Saklaw"

Una, kailangan naming i-access ang Application pagkatapos sa ilalim nito kailangan naming mag-refer kung aling workbook ang tinutukoy namin at sa workbook, tinutukoy namin kung aling worksheet ang tinutukoy namin at pagkatapos ay sa worksheet na kailangan nating banggitin ang hanay ng mga cell.

Paggamit ng Saklaw ng mga cell maaari naming ipasok ang halaga sa cell o mga cell, maaari nating basahin o makakuha ng mga halaga mula sa cell o mga cell, maaari nating tanggalin, maaari nating mai-format at magagawa rin natin ang maraming iba pang mga bagay.

Paano ma-access ang Saklaw ng Mga Cell sa Excel VBA?

Maaari mong i-download ang VBA Set Range Excel Template na ito - VBA Set Range Excel Template

Sa VBA coding maaari tayong mag-refer sa cell sa pamamagitan ng paggamit ng VBA CELLS property at RANGE object. Halimbawa, kung nais mong mag-refer sa cell A1 pagkatapos ay makikita muna namin ang paggamit ng RANGE object.

Sa loob ng subprocedure, kailangan muna nating buksan ang RANGE object.

Code:

 Sub Range_Examples () Saklaw (End Sub 

Tulad ng nakikita mo sa itaas RANGE object na nagtatanong kung ano ang cell na tinutukoy namin. Kaya kailangan naming ipasok ang cell address sa mga dobleng quote.

Code:

 Sub Range_Examples () Saklaw ("A1") End Sub 

Kapag naibigay ang cell address kailangan namin pagkatapos ay magpasya sa kung ano ang gagawin sa cell na ito sa pamamagitan ng paggamit ng mga katangian at pamamaraan. Ngayon maglagay ng tuldok upang makita ang mga katangian at pamamaraan ng RANGE object.

Kung nais naming ipasok ang halaga sa cell kung gayon kailangan naming pumili ng "Halaga" na pag-aari.

Code:

 Sub Range_Examples () Saklaw ("A1"). Halaga ng End Sub 

Upang maitakda ang halaga kailangan naming maglagay ng pantay na pag-sign at ipasok ang halagang nais naming ipasok sa cell A1.

Code:

 Sub Range_Examples () Saklaw ("A1"). Halaga = "Excel VBA Class" End Sub 

Patakbuhin ang code sa pamamagitan ng pagpipiliang tumakbo at makita ang mahika sa cell A1.

Tulad ng nabanggit sa code nakuha namin ang halaga sa cell A1.

Katulad nito, maaari tayong mag-refer sa cell sa pamamagitan ng paggamit din ng pag-aari ng CELLS. Buksan ang pag-aari ng CELLS at tingnan ang syntax.

Hindi ito katulad ng RANGE object kung saan maaari naming ipasok ang cell address nang direkta sa mga dobleng quote sa halip kailangan naming bigyan ang numero ng hilera at haligi upang mag-refer sa cell. Dahil tumutukoy kami sa cell A1 maaari nating sabihin na ang hilera ay 1 at ang haligi ay 1.

Matapos banggitin ang address ng cell maaari kaming gumamit ng mga katangian at pamamaraan upang gumana sa mga cell. Ngunit ang problema dito ay hindi katulad ng saklaw na object pagkatapos maglagay ng tuldok hindi namin nakikita ang listahan ng talino.

Kaya, kailangan mong maging isang dalubhasa upang mag-refer sa mga cell sa pamamagitan ng paggamit ng CELLS na pag-aari.

Code:

 Sub CELLS_Examples () Mga Cell (1, 1) .Value = "Excel VBA Class" End Sub 

Pag-access sa Maramihang Mga Cell & Pagtatakda ng Sanggunian sa Saklaw sa VBA

Ang isa sa malaking pagkakaiba sa pagitan ng CELLS & RANGE ay ang paggamit ng CELLS maaari lamang nating mai-access ang isang cell ngunit ang paggamit ng RANGE ay maaari din nating ma-access ang maraming mga cell.

Halimbawa para sa mga cell A1 hanggang B5 kung nais natin ang halaga ng 50 pagkatapos ay maaari naming isulat ang code tulad ng sa ibaba.

Code:

 Sub Range_Examples () Saklaw ("A1: B5"). Halaga = 50 End Sub 

Ipapasok nito ang halagang 50 mula sa cell A1 hanggang B5.

Sa halip na mag-refer sa mga cell nang direkta maaari naming gamitin ang variable upang hawakan ang sanggunian ng mga tinukoy na mga cell.

Una, tukuyin ang variable bilang "Saklaw" na object.

Code:

 Sub Range_Examples () Dim Rng As Range End Sub 

Kapag ang variable ay tinukoy bilang "Saklaw" na bagay na kailangan namin upang itakda ang sanggunian para sa variable na ito tungkol sa kung ano ang mga cell address ay pagpunta sa hawakan ang sanggunian.

Upang maitakda ang sanggunian kailangan naming gamitin ang keyword na "SET" at ipasok ang mga cell address sa pamamagitan ng paggamit ng RANGE object.

Code:

 Sub Range_Examples () Dim Rng As Range Set Rng = Saklaw ("A1: B5") End Sub 

Ngayon ang variable na "Rng" ay tumutukoy sa mga cell A1 hanggang B5.

Sa halip na isulat ang saklaw ng cell address ("A1: B5") maaari lamang nating gamitin ang variable na pangalan na "Rng".

Code:

 Sub Range_Examples () Dim Rng As Range Set Rng = Range ("A1: B5") Rng.Value = "Range Setting" End Sub 

Ngayon ay ipapasok nito ang nabanggit na halaga mula sa A1 cell hanggang sa B5 cell.

Ipagpalagay na nais mo ang anumang napiling cell ay dapat na isang sanggunian pagkatapos ay maitatakda namin ang sanggunian tulad ng sumusunod.

Code:

 Sub Range_Examples () Dim Rng As Range Set Rng = Selection Rng.Value = "Range Setting" End Sub 

Ito ay isang kagandahan dahil kung pipiliin ko ang alinman sa mga cell at patakbuhin ito ay ipasok din ang halaga sa mga cell na iyon.

Halimbawa, pipili ako ng ilang mga cell.

Ngayon ay isasagawa ko ang code at tingnan kung ano ang mangyayari.

Para sa lahat ng napiling mga cell na ipinasok ang halaga.

Tulad nito, maitatakda namin ang sanggunian sa saklaw sa pamamagitan ng pagdedeklara ng mga variable sa VBA.

Bagay na dapat alalahanin

  • Maaaring pumili ang saklaw ng maraming mga cell ngunit ang CELLS ay maaaring pumili ng isang cell nang paisa-isa.
  • Ang RANGE ay isang bagay at ang CELLS ay pag-aari.
  • Anumang variable ng bagay ay dapat itakda ang sanggunian ng object sa pamamagitan ng paggamit ng SET keyword.