VBA publiskie mainīgie - Kā deklarēt publiskos mainīgos VBA (piemēri)

Satura rādītājs

Publiskie mainīgie VBA

“Publiskie mainīgie” VBA, kā norāda nosaukums, ir mainīgie, kurus ir deklarēts publiski izmantot visiem makro, kurus mēs rakstām tajā pašā modulī, kā arī dažādos moduļos. Tātad, kad mainīgie tiek deklarēti jebkura makro sākumā, tos sauc par “Publiskie mainīgie” vai “Globālie mainīgie”.

Kā deklarēt publiskos mainīgos VBA?

Parasti mēs sākam VBA apakšprocedūru, un apakšprocedūras iekšpusē mēs deklarējam savus mainīgos. Tā ir parasta prakse, ko mēs visi esam darījuši līdz šim rakstam.

Katru reizi, kad mēs rakstām jaunu apakšprocedūru, mēs deklarējam jaunus mainīgos ar tiem piešķirtajiem datu tipiem. Bet šodien mēs atvadīsimies no atkārtotiem mainīgajiem apakšprocedūrās.

Atcerēsimies veco stilu. Zemāk ir kods, kuru esmu uzrakstījis ar vienu mainīgo.

Apakšprocedūrā “Public_Variable” esmu deklarējis šo mainīgo. Tagad es nevaru izmantot nevienu citu moduli.

Tagad apakšprocedūrā “Public_Variable1” mēs nevaram izmantot mainīgo “Var1”, kas tika deklarēts pirmajā apakšprocedūrā “Public_Variable”. Tas ir ierobežojums deklarēt mainīgos apakšprocedūrās.

# 1 - moduļa līmeņa mainīgie

Kā mēs visi zinām, mēs makro rakstām moduļos. Mēs varam ievietot vairākus moduļus. Mēs varam deklarēt divu veidu “Publiskos mainīgos” VBA, viens ir izmantot mainīgos lielumus visām tā paša moduļa apakšprocedūrām, bet otrais - izmantot mainīgos visiem apakšmoduļiem visos moduļos.

Pirmkārt, mēs redzēsim publisko mainīgo deklarēšanu VBA moduļu līmenī.

Lai mainīgos izmantotu visām tā paša moduļa apakšprocedūrām, mums ir jādeklarē mainīgie moduļa augšdaļā, pirms sākam makro.

Zemāk ir redzams ekrānuzņēmuma piemērs.

Kā redzam iepriekš redzamajā attēlā, pirms jebkura makro palaišanas modulī esmu deklarējis divus mainīgos. Tagad šos divus mainīgos var izmantot jebkurā šī moduļa makro skaitā.

Apakšprocedūras ietvaros sāk rakstīt mainīgā nosaukumu, kā redzat, IntelliSense sarakstā tiks parādīti mainīgo nosaukumi.

Tagad mēs varam izmantot šos mainīgos visos makros, kurus mēs ierakstām “1. modulī”.

Šos mainīgos var izmantot tikai šajā modulī. Piemēram, tagad es ievietošu vēl vienu moduli un uzrakstīšu jaunu makro.

2. modulī es nevaru izmantot tos mainīgos, kurus esam deklarējuši “1. modulī”.

Tātad, kā mēs varam šos mainīgos padarīt publiski pieejamus VBA, lai tos izmantotu visos moduļos un visās apakšprocedūrās?

# 2 - paziņo, ka mainīgie tos izmanto publiski

Atgriezieties pie šī moduļa 1. moduļa. Mēs esam deklarējuši mainīgos, pirms sākam rakstīt makro veidu un arī to, kādu pasauli mēs esam izmantojuši, lai deklarētu šos mainīgos.

Mūsu tradicionālais veids, kā lietot vārdu “DIM”, ir deklarējis šos mainīgos.

Ja mēs izmantojam tikai vārdu “DIM”, to var izmantot tikai visos makros, bet tajā pašā modulī.

Vārda “DIM” vietā mums jāizmanto vārds “PUBLIC” vai “GLOBAL”, lai padarītu tos pieejamus lietošanai visos makro moduļos.

Esmu lietojis vārdu “Globāls”, lai mainīgā deklarācija būtu publiska. Varat arī izmantot vārdu “Publisks”.

Tātad, izmantojot vārdus “Globālais” un “Publiskais”, mēs varam deklarēt mainīgos, kurus var izmantot visiem moduļu makro.

Atceramās lietas

  • Tā ir laba prakse, lai mainīgos mainītu publiski, taču pirms to deklarēšanas ir nepieciešama plaša pieredze.
  • Kad makro sāks šķērsot, mainīgā lieluma makro vērtība būs vienāda.
  • Piešķiriet konkrēto vērtību mainīgajam konkrētā makro tikai, lai izvairītos no jebkāda veida neskaidrībām.

Interesanti raksti...