Nhazi na Visual Basic maka ngwa

Arrays in Visual Basic for Application bụ ihe arụrụ arụ na-echekwakarị ụdị mgbanwe ndị yiri ya. A na-enweta ndenye n'usoro site na ndeksi ọnụọgụ ha.

Dịka ọmụmaatụ, e nwere otu ndị mmadụ iri abụọ ka a ga-echekwa aha ha maka iji emechaa na koodu VBA. Otu nwere ike ikwuwapụta mgbanwe 20 iji jide aha ọ bụla, dịka:

Dim Team_Member1 As String Dim Team_Member2 As String ... Dim Team_Member20 As String

Mana ị nwere ike iji ụzọ dị mfe na nke ahaziri ahazi - chekwaa ndepụta aha ndị otu otu n'ụdị mgbanwe 20 dị ka. eriri:

Dim Team_Members(1 ruo 20) Dị ka eriri

N'ahịrị egosiri n'elu, anyị ekwupụtala nhazi. Ugbu a, ka anyị dee uru na nke ọ bụla n'ime ihe ya, dị ka nke a:

Otu_Ndị otu(1) = "John Smith"

Uru ọzọ nke ịchekwa data n'usoro, ma e jiri ya tụnyere iji mgbanwe dị iche iche, na-apụta ìhè mgbe ọ dị mkpa ime otu ihe ahụ na ihe ọ bụla nke nhazi ahụ. Ọ bụrụ na echekwara aha ndị otu ahụ na mgbanwe 20 dị iche iche, mgbe ahụ ọ ga-ewe ahịrị 20 nke koodu iji dee oge ọ bụla iji mee otu ihe ahụ na nke ọ bụla n'ime ha. Otú ọ dị, ọ bụrụ na echekwara aha ndị ahụ n'usoro, mgbe ahụ, ị ​​​​nwere ike ime ihe a chọrọ na nke ọ bụla n'ime ha na-eji obere akaghị.

E gosiputara otu o si arụ ọrụ n'okpuru yana ihe atụ koodu nke na-ebipụta aha onye otu ọ bụla n'usoro n'usoro n'ime mkpụrụ ndụ kọlụm. A Akwụkwọ ọrụ Excel na-arụ ọrụ.

Maka i = 1 ruo 20 cell (i,1) .Uru = Otu_Members(i) Ọzọ i

N'ụzọ doro anya, iji n'usoro na-echekwa aha 20 na-arụ ọrụ na-adịchaghị njọ ma dịkwa mma karịa iji ụdị mgbanwe 20 dị iche iche. Ma gịnị ma ọ bụrụ na aha ndị a abụghị 20, mana 1000? Ma ọ bụrụ na, na mgbakwunye, ọ na-achọrọ idobe aha nna na patronymics iche?! O doro anya na n'oge na-adịghị anya ọ ga-abụ ihe na-agaghị ekwe omume ijikwa ụdị data dị otú ahụ na koodu VBA na-enweghị enyemaka nke nhazi.

Multidimensional arrays na Excel Visual Basic

A na-ahụta usoro ihe ngosi Visual Basic a tụlere n'elu dị ka otu akụkụ. Nke a pụtara na ha na-echekwa ndepụta aha dị mfe. Otú ọ dị, arrays nwere ike inwe ọtụtụ akụkụ. Dịka ọmụmaatụ, enwere ike iji usoro nwere akụkụ abụọ tụnyere ọnụọgụ nke ụkpụrụ.

Ka anyị kwuo na ịchọrọ ịchekwa ọnụ ọgụgụ ịre ahịa kwa ụbọchị maka Jenụwarị maka otu ise dị iche iche. Nke a ga-achọ nhazi akụkụ abụọ nwere metrics 5 maka ụbọchị 5. Ka anyị kwupụta usoro dị ka nke a:

Dim Jan_Sales_Figures(1 ruo 31, 1 ruo 5) Dị ka ego

Iji nweta ihe n'usoro Ọnụ ọgụgụ_Jan_Are, ịkwesịrị iji ndeksi abụọ na-egosi ụbọchị nke ọnwa na nọmba iwu. Dịka ọmụmaatụ, adreesị nke mmewere nwere ọnụọgụ ahịa maka 2-oh otu maka 15 nke A ga-ede Jenụwarị dị ka nke a:

Onyonyo_Ọrịre_Jan(15, 2)

N'otu aka ahụ, ị ​​nwere ike ikwuwapụta nhazi nwere akụkụ 3 ma ọ bụ karịa - naanị tinye akụkụ ndị ọzọ na nkwupụta nhazi ahụ wee jiri indices ndị ọzọ rụtụ aka na ihe dị n'usoro a.

Na-ekwupụta Arrays na Excel Visual Basic

Na mbụ n'isiokwu a, anyị lere anya n'ọtụtụ ihe atụ nke ịkpọsa arrays na VBA, mana isiokwu a kwesịrị ilebakwu anya. Dị ka egosiri, a pụrụ ikwupụta otu akụkụ dị ka nke a:

Dim Team_Members(1 ruo 20) Dị ka eriri

Nkwupụta dị otú ahụ na-agwa onye nchịkọta VBA na nhazi ahụ Otu_Ndị otu nwere mgbanwe 20 nke enwere ike ịnweta na indices sitere na 1 ruo 20. Otú ọ dị, anyị nwere ike icheta nọmba anyị n'usoro mgbanwe site na 0 ruo 19, na nke a kwesịrị ikwupụta nhazi ahụ dị ka nke a:

Dim Team_Members(0 ruo 19) Dị ka eriri

N'ezie, site na ndabara, ọnụọgụ nke ihe nhazi na-amalite site na 0, na n'ime nkwupụta nhazi ahụ, enweghị ike ịkọwapụta ndepụta mbụ ma ọlị, dị ka nke a:

Dim Team_Members(19) Dị ka eriri

VBA compiler ga-emeso ntinye dị otú ahụ dị ka ikwuwapụta ọtụtụ ihe iri abụọ nwere indices sitere na 20 ruo 0.

Otu iwu a na-emetụta mgbe a na-ekwupụta multidimensional Visual Basic arrays. Dị ka egosiri n'otu n'ime ihe atụ ndị a, mgbe a na-ekwupụta nhazi akụkụ abụọ, akara rịkọm na-ekewa index nke akụkụ ya:

Dim Jan_Sales_Figures(1 ruo 31, 1 ruo 5) Dị ka ego

Agbanyeghị, ọ bụrụ na ị kọwapụtaghị ndepụta mmalite maka akụkụ abụọ nke nhazi ahụ wee kwupụta ya dị ka nke a:

Dim Jan_Sales_Figures(31, 5) Dị ka ego

Mgbe ahụ, a ga-ewere ntinye a dị ka nhazi akụkụ abụọ, akụkụ nke mbụ nke nwere 32 ọcha nwere indices sitere na 0 ruo 31, na akụkụ nke abụọ nke nhazi ahụ nwere 6 ọcha nwere indices sitere na 0 ruo 5.

Ngwa dị iche iche

Nhazi niile dị n'ụkpụrụ ndị a dị n'elu nwere ọnụọgụ ọnụọgụ nke akụkụ. Otú ọ dị, n'ọtụtụ ọnọdụ, anyị amaghị n'ọdịnihu otú usoro nhazi anyị kwesịrị ịdị. Anyị nwere ike ịpụ n'ọnọdụ ahụ site n'ịkpọsa nnukwu usoro, nke nha ga-abụ n'ezie karịa ka ọ dị mkpa maka ọrụ anyị. Ma ngwọta dị otú ahụ ga-achọ nnukwu ebe nchekwa ma nwee ike belata mmemme ahụ. Enwere ngwọta ka mma. Anyị nwere ike iji usoro dị ike - nke a bụ nhazi nke nwere ike ịtọ ma gbanwee ugboro ọ bụla n'oge a na-egbu nnukwu nnukwu.

A na-ekwuwapụta usoro dị ike na-eji akara baba efu efu, dịka nke a:

Dim Team_Members() Dị ka eriri

Na-esote, ị ga-achọ ikwupụta akụkụ nke nhazi ahụ n'oge mmebe koodu site na iji okwu ahụ ReDim:

Ndị otu ReDim (1 ruo 20)

Ma ọ bụrụ na n'oge mmebe nke koodu ịchọrọ ịgbanwe nha nke nhazi ahụ ọzọ, ị nwere ike iji okwu ReDim ọzọ:

Ọ bụrụ na Team_Size> 20 ReDim Team_Members(1 To Team_Size) kwụsị ma ọ bụrụ

Buru n'uche na imegharị usoro dị ike n'ụzọ dị otú a ga-eme ka mfu nke ụkpụrụ niile echekwara na nhazi ahụ. Iji chekwaa data ugbua n'usoro, ịkwesịrị iji isi okwu Chekwaadị ka egosiri n'okpuru:

Ọ bụrụ Team_Size> 20 Mgbe ahụ, ReDim Chebe Team_Members(1 To Team_Size) kwụsị ma ọ bụrụ

Ọ dị nwute na isiokwu Chekwaa enwere ike iji naanị gbanwee oke elu nke akụkụ n'usoro. Enweghị ike ịgbanwe oke ala nke nhazi usoro otu a. Ọzọkwa, ọ bụrụ na n'usoro nwere otutu akụkụ, wee na-eji isi okwu Chekwaa, naanị akụkụ ikpeazụ nke n'usoro ka enwere ike gbanwee nha.

Nkume a-aza