Mainīgie veidi Visual Basic. Visual Basic programmēšanas valoda

Tāpēc ka Visual Basic var noteikt pats mainīgais tips pēc viņas teiktā nozīmē(cm. Variants), tad mainīgā veids nav jādeklarē (nav norādīts). tomēr mainīgo lielumu deklarācija ir labas programmēšanas etiķetes noteikums, kā arī ļauj izvairīties no dažām kļūdām programmā, piemēram, mainīgā nosaukuma nevienlīdzīgas pareizrakstības dažādās programmas vietās, datu tipu neatbilstības aprēķinos.

Mainīgais ir deklarēts koda loga sākumā vai procedūras sākumā izmantojot operatoru Aptumšot ar šo ierakstu:

Dim Variable_name kā Mainīgā_veids

Mainīgais veids ir vārdi Baits, garš, virkne un citi no tipu tabulas (skatīt iepriekš).

Piemēram:
Aptumšo As Byte
Mainīgais deklarēts A veids baits. Mēģinot piešķirt mainīgo, varat ievietot skaitli no 0 līdz 255 vairāk Radīsies kļūda, un skaitlis ar daļēju daļu tiks noapaļots.

Dim b As String
Mainīgais deklarēts b veids Stīga. Šajā mainīgajā būs teksts (lai gan teksts var sastāvēt arī no cipariem, bet 2 plus 3 ir 23).

Deklarējot vairākus mainīgos, varat tos uzskaitīt, izmantojot komats:
Dim a As Byte , b As String

Pēc deklarācijas rindas mainīgajam var piešķirt vērtību.

Piemēram:
Aptumšo As Byte
a = 5

Visual Basic arī ļauj izveidot savus datu tipus. Šī iespēja ir svarīga, ja jums ir darīšana ar datu elementu grupu, kas ir savstarpēji saistīti, bet pieder pie dažādām datu kategorijām. Varat izveidot savus tipus (UDT — lietotāja definēts tips), izmantojot priekšrakstu Struktūra, un deklarēt ar šiem jaunajiem tipiem saistītos mainīgos, izmantojot Dim priekšrakstu. Bet paturiet prātā, ka Struktūras priekšraksts nevar atrasties notikuma procedūrā – tam ir jāatrodas formas koda augšdaļā kopā ar citām mainīgo deklarācijām vai moduļa kodā.

Piemēram, šī deklarācija izveido pielāgotu datu tipu ar nosaukumu Darbinieks, kurā var saglabāt ar šo darbinieku saistītos vārdus, dzimšanas datumu un pieņemšanas datumu:

Struktūra Darbinieks Dim Vārds Kā Virkne Dim DateOfBirth Kā Datums Dim Nomas datums Kā Datums Beigu struktūra

Kad esat izveidojis datu tipu, varat to izmantot formas kodā vai moduļa notikumu procedūrās. Šajos paziņojumos tiek izmantots jaunais Darbinieka veids. Pirmais priekšraksts izveido mainīgo ar nosaukumu ProductManager, kura tips ir Darbinieks , bet otrais priekšraksts iestata šī mainīgā komponentu Name uz "Ēriks Kodijs":

Dim ProductManager kā darbinieks ProductManager.Name = "Ēriks Kodijs"

Izklausās pēc rekvizītu iestatīšanas, vai ne? Visual Basic izmanto to pašu apzīmējumu attiecībām starp objektiem un rekvizītiem, ko izmanto attiecībām starp lietotāja definētiem datu tipiem un mainīgo komponentiem.

Konstantes: mainīgie, kas nemainās

Ja jūsu programmas mainīgais satur vērtību, kas nekad nemainās (piemēram, pi, kas ir fiksēta matemātiska vienība), varat apsvērt iespēju saglabāt šo vērtību kā konstanti, nevis kā mainīgo. Konstante ir jēgpilns nosaukums, kas aizstāj ciparu vai testa virkni, kas nekad nemainās. Konstantes ir noderīgas, jo tās palielina programmas koda lasāmību un samazina to skaitu programmatūras kļūdas un atvieglotu pieteikšanos globālajām izmaiņām kodā. Konstantes darbojas kā mainīgie, bet jūs nevarat mainīt to vērtību, kamēr programma darbojas. Tie tiek deklarēti, izmantojot atslēgvārdu Const, kā parādīts šajā piemērā:

Const Pi As Double = 3,14159265

Šis paziņojums rada konstanti ar nosaukumu Pi, ko var izmantot programmas kodā pi vērtības vietā. Lai konstante būtu pieejama visiem veidlapas objektiem un notikumu procedūrām, ievietojiet šo paziņojumu veidlapas koda augšdaļā kopā ar citām mainīgo un struktūras deklarācijām, kuru darbības joma attiecas uz visām veidlapas notikumu procedūrām. Lai konstante būtu pieejama no visām programmas formām un moduļiem (ne tikai no Form1), izveidojiet konstanti moduļa kodā, norādot pirms tās atslēgvārds Publisks Piemēram:

Public Const Pi As Double = 3,14159265

Nākamajā vingrinājumā mēs izmantojam konstantes notikumu procedūrā.

Konstantes izmantošana notikumu procedūrā
  1. Izvēlnē Fails atlasiet Atvērt un pēc tam noklikšķiniet uz Projekts. Tiek parādīts dialoglodziņš Atvērt projektu.
  2. Atveriet mapē esošo Constant Tester projektu c:\vbnet03sbs\Chapter 5\constant tester.
  3. Ja projekta veidlapa nav redzama, risinājumu pārlūkprogrammā noklikšķiniet uz Form1.vb un pēc tam noklikšķiniet uz pogas View Designer. Veidlapa tiek parādīta programmā Windows Forms Designer Pastāvīga pārbaude. Constant Tester ir programmas "skelets". Lietotāja saskarne ir pabeigta, taču jums jāievada programmas kods.
  4. Veiciet dubultklikšķi uz pogas Rādīt konstanti veidlapas. Koda redaktorā tiek parādīta notikuma procedūra Button1_Click.
  5. Notikuma procedūrā Button1_Click ievadiet šādus paziņojumus:

    Const Pi As Double = 3,14159265 Label1.Text = Pi

    Padoms. Izvēlieties savu deklarāciju izvietojumu, pamatojoties uz to, kā plānojat izmantot konstantes vai mainīgos. Parasti programmētāji cenšas padarīt deklarāciju apjomu pēc iespējas mazāku, taču joprojām ir pieejams visās koda daļās, kur tas ir nepieciešams. Piemēram, ja konstante ir nepieciešama tikai viena notikuma procedūrā, šīs konstantes deklarācija jāievieto šīs notikuma procedūrā. Tomēr, ja jums tas ir jādara pieejams visām veidlapas notikumu procedūrām, ievietojiet tās deklarāciju veidlapas koda augšdaļā.

    Lai palaistu programmu, noklikšķiniet uz pogas Sākt, kas atrodas standarta rīkjoslā.

    Noklikšķiniet uz pogas Rādīt konstanti. Konstante Pi parādīsies etiķetes laukā, kā parādīts zemāk.

    Lai apturētu programmu, noklikšķiniet uz pogas Izeja.

    Konstantes ir noderīgas programmas kodā, it īpaši aprēķinos matemātiskās formulas. Nākamajā sadaļā ir aprakstīts, kā izmantot operatorus un mainīgos, lai rakstītu formulas.

PROGRAMMĒŠANAS VALODAS VIZUĀLĀ BASIC. DATU VEIDI. MAINĪGO, KONSTANTES, MASĪVU APRAKSTS

Datu tips ir datu glabāšanas un prezentēšanas metode datorsistēmā.

Programmā Visual Basic var saglabāt un apstrādāt šādus datu veidus.

Baits ir nenegatīvs vesels skaitlis. Pieņem vērtības no 0 līdz 255, aizņem 1 baitu.

Būla - loģiskā vērtība. Ņem vienu no divām vērtībām True un False, ņem 2 baitus.

Valūta ir paplašināts decimālskaitlis. Izmanto, lai veiktu naudas aprēķinus ar noteiktu zīmju skaitu aiz komata, aizņem 8 baitus. (Līdz 15 vietām pa kreisi no komata un līdz 4 vietām pa labi no komata).

Datums - datums. Izmanto datumu/laiku saglabāšanai, aizņem 8 baitus.

Divkāršs — dubults precizitātes decimālskaitlis, aizņem 8 baitus.

Vesels skaitlis — īsa vesela skaitļa skaitliska vērtība, aizņem 2 baitus. Izmanto, lai attēlotu veselus skaitļus diapazonā no -32768 līdz 32767.

Garš - garš vesels skaitlis, aizņem 4 baitus. Izmanto, lai attēlotu veselus skaitļus diapazonā no -2147483648 līdz 2147483647.

Single — parastas precizitātes decimālskaitlis, aizņem 4 baitus. Izmanto, lai attēlotu negatīvus skaitļus diapazonā no -3,402823E 38 līdz -1,401298E-45 un pozitīvos skaitļus diapazonā no 1,401298E-45 līdz 3,402823E 38.

String - mainīga garuma virkne. Lineāri aizņemtā atmiņa ir atkarīga no rakstzīmju skaita rindā.

String * garums - nemainīga garuma virkne.

Variants - patvaļīga vērtība. Tiek izmantots datu glabāšana jebkādi veidi. Aizņem 16 baitus, plus vienu baitu katrai rakstzīmei, ja vērtība ir virkne.

Objekts - objekts. Izmanto tikai, lai saglabātu atsauces uz objektiem, aizņem 4 baitus.

Mainīgs ir nosaukts atmiņas apgabals, kas paredzēts datu glabāšanai, kas mainās programmas izpildes laikā. Lai piekļūtu šīs atmiņas apgabala saturam, pietiek zināt mainīgā lieluma nosaukumu.

Mainīgā nosaukums (identifikators) ir rakstzīmju virkne, kas atšķir šo mainīgo no citiem programmas objektiem (identificē mainīgo programmā).

Nosaucot mainīgos lielumus, jums jāievēro šādi noteikumi:

Vārda pirmajai rakstzīmei jābūt burtam. Atlikušās rakstzīmes ir burti un cipari (lielie un mazie burti atšķiras). Varat izmantot simbolu "_";

  • Nosaukumā nevar izmantot rakstzīmi "."
  • rakstzīmju skaits nosaukumā nedrīkst pārsniegt 255;
  • Mainīgais nosaukums nedrīkst sakrist ar valodas rezervētajiem (pakalpojuma) vārdiem.

Programmā Visual Basic ir pieejami šādi līdzekļi. mainīgā tipa deklarācijas.

  1. Mainīgais var nebūt deklarēts. Šajā gadījumā noklusējuma veids būs Variant. Tomēr tas var izraisīt programmas lēnu, neefektīvu darbību un atmiņas zudumu.
  2. Mainīgo var skaidri deklarēt, izmantojot mainīgā definīcijas paziņojumu:Dim Mainīgā nosaukums [ Kā mainīgā veids],
    piemēram: Dim d as Long.
    Lai nodrošinātu, ka mainīgie vienmēr tiek skaidri deklarēti, esošo formu, moduļu vai klašu sadaļā (Vispārīgi) (Deklarācijas) ir jāizmanto opcija Skaidra opcija. Pēc šīs opcijas iestatīšanas programmai Visual Basic ir nepieciešamas skaidras mainīgā deklarācijas, un, ja kodā izmantojat nedeklarētu mainīgo, tas ģenerēs kļūdas ziņojumu.
  3. Mainīgo var netieši deklarēt:

    Izmantojot tipa deklarācijas operatoru:

DefType Sākuma burts [- Beigu burts];

OerType vietā tiek norādīts viens no atslēgvārdiem, kas apzīmē veidu:

Deflnt (tipam Integer);
- DefLng (Gar tipam);
- DefSng (vienam tipam);
- DefStr (tipam String) un tā tālāk;

Mainīgā lieluma veidu dažreiz var secināt no sufiksa, kas pievienots mainīgā nosaukumam. Tikai sešu veidu mainīgajiem var būt sufiksi:

- % - ierakstiet Integer;
- & - ierakstiet Long;
- ! - Viena tipa;
- # - Dubultais tips;
- $ - Virknes veids;
- @ - Valūtas veids.

Ja mainīgais, kura veidu netieši norāda ar sufiksu, programmā parādās vairākas reizes, tad sufiksu var norādīt tikai vienu reizi, kad mainīgais tiek lietots programmā pirmo reizi.

Konstantes- daudzumi, kuru vērtības nevar mainīties. Tāpat kā mainīgie, konstantes tiek deklarētas programmas koda sākumā ar operatoru:

Const ConstantName = vērtība, piemēram: Const Pi = 3,14159

Kā vērtību var izmantot tikai nemainīgas vērtības un to kombinācijas, ieskaitot aritmētiskos un/vai loģiskos operatorus.

Masīvs ir noteikta veida elementu kopa, katram no kuriem ir savs sērijas numurs, ko sauc par indeksu.

Masīvs tiek definēts, izmantojot operatoru:

DimVariableName([LowerLimitTo]
Augšējā robeža).

Piemēram: Dim b (no a līdz 15) - masīva b deklarācija, kas sastāv no 15 elementiem.

Visual Basic pēc noklusējuma indeksē masīva elementus, sākot no nulles, tas ir, indekss 0 ir pirmais masīva elements, indekss 1 ir otrais un tā tālāk. Operators Option Base 1 ļauj iestatīt masīva indeksāciju no 1. Šim operatoram ir jāatrodas sadaļā (Vispārīgi) (Deklarācijas).

Šajā daļā uzzināsiet par datu tipiem, ar kuriem var manipulēt VBA, kā VBA tiek glabāti pagaidu dati, kā apvienot mainīgos un konstantes, lai izveidotu jaunas vērtības, kā arī uzzināsiet, kā izteiksmēs iekļaut iebūvētās funkcijas.

Laboratorijas darbs Nr.3. Pārskats par VB datu veidiem. Mainīgie un

konstantes. Datu tipu saderība. Piešķiršanas operators. Aritmētiskie un loģiskie operatori. Iebūvētās funkcijas

Nodarbības mērķis: Zināt datu tipus. Jāprot izveidot mainīgos. Prast iestatīt datu tipus mainīgajiem. Jāprot izveidot nosauktas konstantes. Zināt darbības jomu

mainīgie un konstantes. Zināt veidu konvertēšanu. Ziniet, kā izmantot piešķiršanas operatoru. Zināt aritmētiskās un loģiskās darbības. Zināt, kā izmantot virkņu savienošanu. Jāprot izmantot VBA iebūvētās funkcijas. Materiāli nodarbībai: MS Excel 2003.

Datu tipu pārskatsVizuālsPamata (VB)

Pirms mācīties par mainīgajiem, jums vajadzētu saprast, kā VBA saglabā dažāda veida informāciju. VBA, tāpat kā lielākā daļa citu programmēšanas sistēmu, dala apstrādātos datus skaitļos, datumos, tekstā un citos veidos. Datu tips(datus veids) ir termins, kas attiecas uz noteiktiem datu veidiem, kurus VBA glabā un ar kuriem var manipulēt. Tabulā 9 vispārināti veidi VBA dati, parāda, cik daudz atmiņas aizņem katrs veids, īsi apraksta datu tipus un sniedz vērtību diapazonu, ko tips var saglabāt.

9. tabula– VBA datu tipi

Ierakstiet nosaukumu

Izmērs iekšābaiti

Pozitīvi veseli skaitļi no 0 līdz 255

Veseli skaitļi no -32768 līdz 32767

Garie veseli skaitļi no -2147483648 līdz 2147483647

Parastas precizitātes reālie skaitļi ar

peldošais punkts.

Negatīvie skaitļi:

no -3.402823E38 līdz -1.401298E-45.

Pozitīvie skaitļi:

no 1.401298E-45 līdz 3.402823E38

Dubultā precizitāte reālie skaitļi ar

peldošais punkts.

Negatīvie skaitļi:

no -1,79769313486232E308 līdz

4.94065645841247E-324.

Pozitīvie skaitļi:

no 4.94065645841247E-324 līdz

1.79769313486232E308

Cipari ar līdz 15 cipariem pirms komata un 4 cipariem aiz tā (valūtas vienības). No -922337203685477.5808 līdz 922337203685477.5807

Saglabāt loģiskās vērtības; var ietvert tikai patiesas vai nepatiesas vērtības

Ierakstiet nosaukumu

Izmērs iekšābaiti

Apraksts un vērtību diapazons

Lai saglabātu datuma un laika informācijas kombināciju. Datumu diapazons var būt no 100. janvāra līdz 9999. gada 31. decembrim. Laika diapazons no 00:00:00 līdz 23:59:59

Virkne (mainīga garuma virkne)

10 baiti + izmanto teksta saglabāšanai. Virknes garums var būt no 0 rakstzīmēm līdz (aptuveni) 2 miljardiem rakstzīmju

Stīga

fiksēts garums)

Garums Izmanto teksta saglabāšanai. Var virknes (vienā rakstzīmē ir no viena līdz (aptuveni) 65 400 baitiem)

16 baiti + 1 baits/rakstzīme

Varianta tips var saglabāt jebkuru citu datu tipu. Varianta datu diapazons ir atkarīgs no faktiski saglabātajiem datiem. Teksta gadījumā diapazons atbilst virknes veidam; skaitļu gadījumā diapazons ir tāds pats kā Double veidam

Izmanto, lai piekļūtu jebkuram VBA atpazītam objektam. Saglabā atmiņā objekta adresi

Tabulā 9 jūs saskārāties ar datu attēlojumu ar nosaukumu eksponenciāls apzīmējums(zinātnisks apzīmējums), ko izmanto ļoti lielu un ļoti mazu skaitļu attēlošanai kompaktā formātā ārējās ierīcēs (monitorā, printerī utt.). Eksponenciālajā pierakstā vērtības tiek rakstītas bez nullēm sākuma vai beigu daļā, un tām ir tikai viens cipars pa kreisi no decimāldaļas. Skaitlis tiek reizināts ar 10, lai parādītu, kur patiesībā atrodas decimālzīme.

VBA ir seši dažādi ciparu datu veidi: baits, Vesels skaitlis, Garš, Viens, Dubults Un Valūta. Skaitliskie datu tipi tiek izmantoti, lai saglabātu (un manipulētu) ar skaitļiem dažādos formātos atkarībā no konkrētā veida.

Parasti VBA programma (tāpat kā jebkura cita programma) "pieņem" lēmumus, pārbaudot, vai dažādi nosacījumi ir patiesi. Lai atvieglotu apstākļu testēšanu un nodrošinātu, ka šādas pārbaudes rezultāti tiek saglabāti, VBA nodrošina Būla datu tipu. Būla vērtības Taisnība Un Nepatiesi sauca Būla(Būla) vērtības. Viņu vārds ir saistīts ar matemātiķa vārdu, kurš izstrādāja matemātiskās loģikas sistēmu. VBA Būla datu tipu sauc arī par Būla. VBA Būla tipam ir nepieciešami divi baiti atmiņas, un tam var būt viena no divām vērtībām: Taisnība vai Nepatiesi. Ja displeja veids Būla ekrānā VBA automātiski pārvērš to par virkni, kas satur vai nu vārdu Taisnība, vai Nepatiesi. Būla vērtības tiek iegūtas kā

salīdzināšanas darbības rezultāts.

VBA izmanto tipu Datums datumu un laiku saglabāšanai. Nav jāuztraucas par to, kā VBA saglabā tipa datus Datums, – jūs varat vienkārši parādīt, saglabāt vai manipulēt ar datumiem; VBA automātiski apstrādā visu informāciju par kārtas skaitļa pārveidošanu par gadu, mēnesi, dienu un laiku. VBA tips Datums ir tips datumi pēc kārtas(seriāls Datumi). Secīgie datumi saglabā datumu kā dienu skaitu no noteiktā sākuma datuma. Bāzes datums VBA tipam Datums ir 1899. gada 30. decembris. VBA izmanto negatīvus skaitļus, lai attēlotu datumus pirms 30.12.1899. un pozitīvus skaitļus, lai attēlotu datumus pēc 1899. gada 30. 12.. Skaitlis 0 apzīmē pašu datumu, 30.12.1899. Pēc šīs shēmas 1900. gada 1. janvāris tiek rakstīts kā skaitlis 2 (1990. gada 1. janvāris ir 2 dienas pēc 1899. gada 30. decembra), bet skaitlis –2 ir datums 1899. gada 28. decembris (divas dienas pirms 1899. gada 30. decembra). ). Lai to pārbaudītu, uzrakstiet vienkāršu procedūru.

1. vingrinājums. Uzrakstiet procedūru, kas izdrukā datuma ziņojumu.

Priekš šī:

Uzrakstiet procedūru (3. saraksts):

Sarakstā 3 ProcedūraDatumsTest

1 apakšdatuma tests()

2 Dim d Kā datums 3

Šīs procedūras rezultātā ekrānā tiks parādīts bāzes datums (15. att.).

Rīsi. 15 Secīgā datuma vērtībā veselā skaitļa daļa (skaitļi pa kreisi no decimāldaļas) ir kopējais dienu skaits no bāzes datuma. VBA secīgā datumā var būt cipari pa labi no decimāldaļas; šie skaitļi norāda diennakts laiku kā dienas daļu. Viena stunda ir 1/24 dienas (aptuveni 0,0416. Tāpat viena minūte ir 1/1440 dienas, otra — 1/86 400 dienas. Varat atņemt vienu datumu no cita, pievienot datumam vai atņemiet skaitļus, lai mainītu tās vērtības. Piemēram, ja jums ir jānosaka dienu skaits starp diviem datumiem, vienkārši atņemiet agrāko datumu, jo tās ir veida vērtības. Datums, VBA "zina", ka aprēķina mērķis ir iegūt dienu starpību starp šiem diviem datumiem. Tāpat, ja jums ir jānosaka datums 60 dienas pēc noteiktā datuma, vienkārši pievienojiet šim datumam 60.

VBA ir vairākas iebūvētas procedūras (aprakstītas šajā sadaļā), lai atsevišķi izvilktu gadu, mēnesi, dienu, stundu, minūti un sekundi no mainīgā lieluma, piemēram, Datums.

Visi teksta dati, kas saglabāti VBA programmā, tiek izsaukti līnijas(stīgas). Virknes VBA tiek saglabātas, izmantojot datu tipu Stīga. Virknes iegūst savu nosaukumu, jo teksta dati parasti tiek uzskatīti par rakstzīmju virknēm. Rindā var būt teksta rakstzīmes jebkura veida: alfabēta burti, cipari, pieturzīmes vai dažādi simboli. Ir divas stīgu kategorijas: mainīga garuma virknes, kuru izmērs aug vai samazinās, un fiksēta garuma stīgas, kuru izmērs vienmēr paliek nemainīgs. Visas VBA virknes ir mainīga garuma virknes, ja vien nenorādīsiet fiksētu garumu. Lielākā daļa lietotāju ievadīto datu (in dialoglodziņi, darblapas šūnas) ir virknes dati. Turklāt, tā kā ekrānā var parādīt tikai tekstu, visi pārējie datu tipi ir jāpārveido par virknes datiem, lai tos varētu parādīt ekrānā. Daudzas VBA iebūvētās procedūras (piemēram, Msgbox) izmanto virknes datus visos vai dažos to argumentos. VBA nodrošina vairākus operatorus savienošana(sasaistīt), tas ir, lai savienotu kopā un salīdzinātu virknes. VBA ir arī vairākas iebūvētas rutīnas, kas palīdz izvilkt apakšvirknes no garākām virknēm, virknē atrast rakstzīmes vai vārdus, mainīt virknē esošo burtu reģistru un tā tālāk. Šajā daļā ir aprakstīti VBA virkņu operatori un manipulācijas ar VBA virknēm.

Datu tips Variants ir īpašs datu tips, kurā var saglabāt jebkuru no tabulā norādītajiem veidiem. 9 izņemot tipu Objekts. VBA izmanto tipu Variants visiem mainīgajiem, ja vien jūs nepārprotami deklarējat mainīgā veidu, kā aprakstīts tālāk šajā sadaļā. Datu tips Variants iegūst noteikta veida īpašības, kas tām piemīt pašlaik. Piemēram, ja datu tips Variants satur virknes datus Variants pieņem String tipa raksturlielumus. Ja datu tips Variants satur skaitliskus datus, Variantsņem kāda skaitliska tipa raksturlielumus, parasti - Dubults, lai gan veidi Variants var būt arī tipa pazīmes Vesels skaitlis, Garš, Viens vai Valūta. Kaut vai veidi VariantsĒrti un aizņem daļu no rakstīšanas procedūru darba, tiem ir nepieciešams vairāk atmiņas nekā jebkuram citam datu veidam, izņemot lielas virknes. Turklāt matemātiskās operācijas un salīdzināšanas darbības ar datu tipu Variants ir lēnākas nekā līdzīgas darbības ar jebkura cita veida datiem. Kopumā jums vajadzētu izvairīties no mainīgo lielumu izmantošanas Variants: ja paļausies uz tipa mainīgajiem Variants, jums var izveidoties apliets programmēšanas ieradums un jums būs grūti atrast un labot programmas kļūdas.

Mainīgie lielumi

Mainīgs(mainīgs) ir nosaukums, ko programmētājs piešķir apgabalam

datora atmiņa, ko izmanto noteikta veida datu glabāšanai. VBA mainīgie var saglabāt jebkuru no tabulā norādītajiem datu tipiem. 9.

Identifikators(identifikators) ir nosaukums, ko piešķirat elementiem jūsu izveidotajās procedūrās un moduļos, piemēram, mainīgajiem. Termina identifikators pamatā ir fakts, ka jūsu izveidotie nosaukumi identificē noteiktas atmiņas vietas (mainīgā nosaukuma gadījumā), priekšrakstu grupas (makro vai procedūras nosaukuma gadījumā) vai citus programmas elementus.

Mainīgo nosaukumi nav "jutīgs" pret reģistrācijas stāvokli( lietu- jūtīgs), tas ir, rakstot mainīgā nosaukumu ar lielajiem burtiem vai ar lielajiem burtiem nav nozīmes.

Vienkāršākais veids, kā izveidot mainīgo, ir izmantot to VBA priekšrakstā. VBA izveido mainīgo un rezervē atmiņu mainīgā atmiņas vietai, kad šis mainīgais pirmo reizi parādās priekšrakstā (parasti priekšrakstā, kas saglabā datu vērtību mainīgajā).

Tiek izsaukta datu vērtības saglabāšana mainīgajā piešķiršana mainīgajam(piešķiršana uz mainīgs vai padarot an uzdevums). Piešķiršana tiek veikta, izmantojot piešķiršanas operatoru, ko attēlo vienādības zīme (=). Šī rinda ir piemērs vērtības piešķiršanai mainīgajam:

Šis paziņojums saglabā skaitlisko vērtību 25 atmiņas vietā, kas norādīta ar mainīgā nosaukumu MyVar.

Tiek izsaukta mainīgā lieluma izveide, izmantojot to priekšrakstā netiešā mainīgā deklarācija(netieši mainīgs deklarācija). Izmantojot mainīgo paziņojumā, jūs netieši sakāt (deklarējat) VBA, ka vēlaties izveidot šo mainīgo. Visiem mainīgajiem, ko VBA izveido, izmantojot netiešo mainīgo deklarāciju, ir datu tips Variants. Netiešā mainīgā deklarācija ir pazīstama arī kā mainīgā deklarācija "lidojumā"(ieslēgts- uz- lidot).

Netiešās mainīgo deklarācijas ir ērtas, taču tām ir iespējamas problēmas. Piemēram, ja jums ir mainīgais ar nosaukumu MyVar un vēlāk rakstot kļūdīsies nosaukumā Mvar. Atkarībā no tā, kur kodā parādās nepareizais mainīgā nosaukums, VBA var izraisīt izpildlaika kļūdu vai vienkārši izveidot jaunu mainīgo. Ja VBA izveido jaunu mainīgo, var rasties problēmas, kuras ir ļoti grūti noteikt.

Šo un citu iemeslu dēļ VBA sniedz jums iespēju to darīt nepārprotami(nepārprotami) mainīgo lielumu deklarācija.

Lai skaidri deklarētu mainīgos, izmantojiet VBA priekšrakstu Aptumšot ar šādu sintaksi:

Aptumšot nosaukums1 [, nosaukums2 ]

nosaukumsN ir jebkurš derīgs mainīgā identifikators. Visi mainīgie, ko izveidojat ar šo atslēgvārda formu Aptumšot, ir mainīgie

veids Variants.

Mainīgo var deklarēt tikai vienu reizi atsevišķā procedūrā vai modulī. Tā kā paziņojums Dim ir pirms visiem paziņojumiem, kas faktiski izmanto mainīgo, varat to ievietot jebkurā procedūras vietā. Programmēšanas praksē ir labs noteikums procedūras sākumā apkopot visas nepārprotamās mainīgo deklarācijas vienuviet.

2. uzdevums. Mainiet procedūru Sveiki,Excel no iepriekšējās daļas, izmantojot skaidru mainīgā definīciju.

Priekš šī:

b mainīt procedūru Sveiki,Excel (4. saraksts):

Sarakstā 4 ProcedūraSveiki,Excel

1 Sub HelloExcel()

2 Dim HelloMsg " mainīgais MsgBox 3

Operators Aptumšot (2. rindā) 4. sarakstā deklarē mainīgo SveikiZiņa! un rezervē tam atmiņas apgabalu (šajā apakšprogrammā SveikiZiņa! ir tipa mainīgais Variants). 2. rindā ir iekļauts pēdējais komentārs, kas norāda šī mainīgā mērķi. 4. rinda piešķir mainīgajam SveikiZiņa! līnijas "Sveiki,Excel!" . Nākamais (5. rindā) mainīgais HelloMsg tiek izmantots kā viens no procedūras argumentiem MsgBox. Funkcija MsgBox parāda to pašu ziņojumu lodziņu kā iepriekš. Lai gan MsgBox tagad saņem savu pirmo argumentu no mainīgā, šis mainīgais satur to pašu informāciju par virkni, kas iepriekš (iepriekšējās daļas sarakstos) tika ierakstīta tieši operatorā MsgBox.

Visi mainīgie VBA neatkarīgi no tā, vai tie ir deklarēti netieši vai tieši, ir varianti, ja vien nenorādījāt mainīgā veidu paziņojumā, kas to deklarē. Paziņojumam drukāti mainīgais un tā veids, izmantojot operatoru Aptumšot pievienojiet atslēgvārdu As aiz mainīgā un pēc tam ievadiet šī mainīgā datu tipa nosaukumu. Šeit ir vispārīga operatora lietošanas sintakse Aptumšot deklarējot drukātos mainīgos:

Aptumšot varnamel [, varname2 ]

varnameN apzīmē jebkuru derīgu VBA mainīgā nosaukumu, a tipsN – jebkurš no VBA datu tipu nosaukumiem.

Kad ir deklarēts tipizēts mainīgais, neatkarīgi no tā, vai mainīgais ir deklarēts tieši vai netieši un kā tips ir norādīts, šis mainīgais saglabā to pašu veidu tik ilgi, kamēr tas pastāv. Mainīgo nevar atkārtoti deklarēt vai atkārtoti definēt tā veidu.

Izmantojot netiešu deklarāciju, varat arī norādīt mainīgā veidu, pievienojot

sauc īpašs varonis tipa definīcijas simbols(veids- definīcija raksturs), līdz mainīgā nosaukuma beigām. Tabulā 10. tabulā ir parādīti VBA tipa definīcijas simboli un to attēlotie veidi. 10. tabula– Tipa definīcijas simboli

Tips

Definīcijas simbols

Tips

Simbols definīcijas

Vesels skaitlisGarš

ValūtaDubults

Tipa definīcijas rakstzīmes var parādīties tikai mainīgā nosaukuma beigās. Lai gan jums vajadzētu zināt, kas ir veidu definīcijas simboli un kā tie tiek izmantoti, tie ir jāizmanto reti — Dim priekšraksta izmantošana kopā ar atslēgvārdu As ir daudz vienkāršāka un skaidrāka. Lielākā daļa VBA programmētāju neizmanto tipa definīcijas simbolus.

3. uzdevums. Mainiet procedūru Sveiki,Excel no 3. uzdevuma, izmantojot drukātā mainīgā definīciju.

Priekš šī:

b mainīt procedūru Sveiki,Excel (5. saraksts):

Sarakstā 5 ProcedūraSveiki,Excel

1 Sub HelloExcel()

2 Dim HelloMsg kā virkne 3

    HelloMsg = "Sveiks Excel!"

    Title$ = "Mana pirmā programma"

    MsgBox SveikiMsg, Title$

Šī procedūras versija Sveiki,Excel darbojas tāpat kā iepriekšējās. 1. rindā ir procedūras deklarācija. Paziņojums 2. rindā Aptumšot skaidri deklarē mainīgo SveikiZiņa!. Kopš operatora Aptumšot ietver atslēgvārdu un ierakstiet nosaukumu Stīga, mainīgs SveikiZiņa! ir tips Stīga. 4. rindiņa piešķir ziņojuma tekstu virknes mainīgajam SveikiZiņa!. 5. rinda netieši deklarē mainīgo Nosaukums $ un tajā pašā laikā mainīgajam piešķir ziņojuma lodziņa virsraksta tekstu. Tā kā mainīgā nosaukums Nosaukums $ beidzas ar tipa definīcijas rakstzīmi virknei, šis mainīgais ir arī tipa String. Visbeidzot, 6. rindā tiek izmantots operators MsgBox lai parādītu ziņojumu lodziņu; šajā paziņojumā gan ziņojuma teksts, gan loga virsrakstjosla ir mainīgie: SveikiZiņa! Un Nosaukums $, attiecīgi.

Pēc tipa definīcijas simbola pievienošanas mainīgajam, katru reizi, kad izmantojat mainīgā nosaukumu, ir jāiekļauj tipa definīcijas simbols.

Neatkarīgi no tā, vai tipa mainīgie ir deklarēti Stīga izmantojot operatoru Aptumšot vai pievienojot tipa definīcijas rakstzīmi $, izveidotie virkņu mainīgie pēc noklusējuma ir mainīga garuma virknes.

Mainīga garuma virknes mainīgie maina garumu atkarībā no mainīgā saglabātās virknes garuma. Dažreiz jums var būt nepieciešams izmantot līniju fiksēts garums(fiksēts- garums). Fiksēta garuma virknes vienmēr ir vienāda garuma. Šajā rindā ir parādīta vispārīgā sintakse fiksēta garuma virknes izveidei:

Aptumšot varname Kā virkne* N

varname ir jebkurš derīgs mainīgā nosaukums, a N – ir jebkurš skaitlis no 1 līdz 65400 rakstzīmēm

Darbības joma: mainīga pieejamība

Jēdziens darbības jomu(darbības jomu) attiecas uz VBA procedūras vai moduļa darbības jomu, kurā ir pieejams norādītais mainīgais, procedūra vai cits identifikators. Šajā daļā ir aprakstīti divi darbības jomas pamatlīmeņi: procesuālais un modulārais. Mainīgajiem, procedūrām un identifikatoriem, kas ir pieejami tikai procedūrā, ir procedūras līmeņa tvērums, un tiem, kas ir pieejami visām moduļa procedūrām, ir moduļa līmeņa tvērums.

Procedūrā deklarētais mainīgais ir pieejams tikai ar šo procedūru. Piemēram, mainīgais SveikiZiņa! no 5. saraksta 2. rindas, ir pieejams tikai procedūrā Sveiki,Excel; nevienai citai procedūrai nav piekļuves šim mainīgajam.

Tāpēc viņi saka, ka mainīgais SveikiZiņa! Tā ir procedūras līmeņa darbības joma(procedūru- līmenī darbības jomu). Faktiski mainīgais SveikiZiņa! patiešām pastāv tikai tad, kad VBA faktiski izpilda procedūru Sveiki,Excel.

4. uzdevums. Izveidojiet divas procedūras, kuru darbības joma ir procesuālā līmeņa mainīgie.

Priekš šī:

b ievadiet divas pabeigtas procedūras (6. saraksts):

Sarakstā 6 ProcedūraSveiki,Excel

1 Sub HelloExcel()

2 Dim HelloMsg kā virkne 3

    HelloMsg = "Sveiks Excel!"

    MsgBox SveikiMsg, "Mana pirmā programma"

8 Sub HelloDave()

9 Dim HelloMsg kā virkne 10

    HelloMsg = "Labdien, Excel!"

    MsgBox SveikiMsg, "Cits ziņojumu lodziņš"

1.–6. rindiņā ir ietverta tā pati procedūra Sveiki,Excel no 4. saraksta, kas darbojas tieši tāpat. Modulim ir pievienota procedūra Sveiks, Deiv, kas sākas 6. saraksta 8. rindā. Procedūra Sveiks, Deiv darbojas tāpat kā procedūra Sveiki,Excel, tā dialoglodziņā tikai parāda citu īsziņu un nosaukumu. 2. un 9. rindā abās procedūrās tiek izmantots operators Aptumšot lai deklarētu lokālos mainīgos ar nosaukumu SveikiZiņa!.

Dažreiz ir nepieciešams, lai vairākas procedūras varētu piekļūt vienam un tam pašam mainīgajam. Parasti ir efektīvāk aprēķināt vērtību vienu reizi, saglabāt to mainīgajā un pēc tam izmantot šo mainīgo vairākās procedūrās, nekā aprēķināt vienu un to pašu vērtību atkal un atkal.

VBA ļauj deklarēt mainīgos, kas ir pieejami vairākām procedūrām. Ja mainīgais ir pieejams visām moduļa procedūrām, tiek uzskatīts, ka šim mainīgajam ir darbības joma modulārais līmenis(modulis līmenī). VBA ierobežo moduļa līmeņa mainīgā darbības jomu ar moduli, kurā mainīgais ir deklarēts (VBA nodrošina veidus, kā vēl vairāk paplašināt mainīgā tvērumu; šīs metodes ir aprakstītas tālāk).

Lai mainīgais būtu pieejams visām procedūrām konkrētajā modulī, ievietojiet paziņojumu Aptumšot par to moduļa sākumā pirms jebkādām procedūru deklarācijām.

1. vingrinājums

Izveidojiet divas procedūras un vienu moduļa līmeņa mainīgā deklarāciju (pārvietojiet priekšrakstu uz 1. rindu Aptumšot ar mainīgo SveikiZiņa! 2. un 9. rindiņas noņemšana no 6. saraksta).

Mainīgajam nosaukumam ir jābūt unikālam savā darbības jomā. Tomēr ir iespējams ieslēgt mainīgos ar tādu pašu nosaukumu savādāk darbības jomas līmeņi. Ja mainīgajiem ir vienāds nosaukums, bet atšķiras darbības jomas, VBA izmanto mainīgo ar lielāko daļu vietējais(vietējais) darbības jomu.

Nepieciešama nepārprotama mainīgo deklarēšana

Lai gan netiešā mainīgo deklarēšana (mainīgo deklarēšana, vienkārši tos izmantojot) ir ērta, tai ir dažas problēmas. Ja mainīgie tiek deklarēti netieši, pastāv risks, ka netīši tiks izveidots jauns mainīgais, kad jums faktiski vajadzētu izmantot esošu, vai izmantot esošu mainīgo, kad lietotājs plāno izveidot jaunu. Abas šīs situācijas rada kļūdas kodā, kuras ir ļoti grūti izsekot.

Lai jebkurā laikā būtu vieglāk pamanīt kļūdas, kas saistītas ar netiešo mainīgo deklarācijām, VBA nodrošina komandu OpcijaSkaidrs. Izmantojot OpcijaSkaidrs VBA pieprasa deklarēt visus mainīgos (izmantojot operatoru Aptumšot) pirms to izmantošanas modulī.

Lai iestatītu režīmu, kurā VBA pieprasa precīzas deklarācijas visiem moduļa mainīgajiem, pievienojiet komandu OpcijaSkaidrs uz moduļa deklarācijas apgabalu, tas ir, uz moduļa sākumu pirms jebkura mainīgā vai procedūru deklarācijas. Komandām patīk OpcijaSkaidrs, tiek saukti kompilatoru direktīvas(kompilators direktīvas).

Komanda OpcijaSkaidrs ietekmē tikai moduli, kurā tas parādās. Ja projektā, kurā ir šis modulis, ir arī citi moduļi, komanda tos neietekmē OpcijaSkaidrs. Katrā modulī, kam nepieciešama skaidra mainīgā deklarācija, ir jāiekļauj komanda Option Explicit.

Kopš iekļaušanas OpcijaSkaidrs visos moduļos ir ļoti noderīga, VB redaktors nodrošina veidu, kā automātiski iekļaut šo komandu katrā jaunajā modulī, kad to izveidojat. Lai VB redaktors pievienotu komandu OpcijaSkaidrs Katram jaunam modulim veiciet šīs darbības:

ь atlasiet komandu Rīki/ Iespējas (Pakalpojums/Opcijas); VB redaktors parāda dialoglodziņu Iespējas;

ь noklikšķiniet uz cilnes Redaktors (Redaktors), lai vajadzības gadījumā parādītu rediģēšanas iespējas;

ь atzīmējiet izvēles rūtiņu Pieprasīt Mainīgs Deklarācija (Skaidrs mainīgo lielumu apraksts);

ь izvēlieties labi. VB redaktors aizver dialoglodziņu Iespējas.

2. vingrinājums

Iestatiet komandu uz automātisku iespējošanu Opcija Skaidrs katrā jaunajā modulī, kad tas ir izveidots.

Konstantes

Pastāvīgi(nemainīgs) ir vērtība VBA programmā, kas nemainās. Iepriekš sniegtajos procedūru piemēros tiek izmantotas virknes konstantes, piemēram "Sveiki,Excel!" Un "Mana pirmā programma". Tādas konstantes kā viņi sauc burtiskās konstantes(burtiski konstantes), jo burtiskā vērtība tiek ierakstīta tieši kodā.

Varat arī ierakstīt burtiskas ciparu konstantes un datumus VBA kodā; skaitlisko literāro konstantu piemēri ietver skaitļus 25 , 3.14 . Literatūras datuma konstantu piemēri ir datumi #12/31/96# vai #1997. gada 28. oktobris#(Vairāk par datuma konstantu rakstīšanu uzzināsiet vēlāk šajā daļā).

VBA ļauj jums izveidot nosauktas konstantes(nosaukts konstantes). Nosauktai konstantei, tāpat kā mainīgajam, ir dots nosaukums; šis nosaukums apzīmē konkrētu nemainīgu vērtību. Tomēr atšķirībā no mainīgā nosauktās konstantes vērtība nekad nemainās. Šajā rindā parādīta vispārīgā sintakse nosaukto konstantu deklarēšanai:

Konst nosaukums = valuel [operators nosaukums2… ] _

[, pateZ =vērtību3 [operators nosaukums4 ] … ]

nosaukumsN apzīmē jebkuru derīgu identifikatoru, vērtībaN – jebkura datu vērtība: cipars, virkne vai datums, a operators – aritmētiska vai salīdzināšanas darbība starp diviem iepriekš aprakstīto konstantu nosaukumiem. Nākamās rindas parādīt vairākas nosaukto konstantu deklarācijas: Const Pi = 3,14, text = "Sveiki, Excel!"

Const Pi2 = 2*Pi

Konstantu apjoms

Tāpat kā ar mainīgajiem, varat deklarēt nosauktās konstantes procedūrās vai deklarācijas apgabalā moduļa sākumā. Procedūrā deklarētajai konstantei ir procedūras līmeņa tvērums, savukārt konstantei, kas deklarēta moduļa deklarācijas tvērumā, ir moduļu līmeņa tvērums. Nosauktās konstantes ievēro tādus pašus darbības jomas noteikumus kā mainīgie.

Burtisku konstantu rakstīšana

Rakstot burtiskās virknes konstantes VBA kodā, ievērojiet šos noteikumus:

ь virknes konstantes jāiekļauj dubultpēdiņās (");

ь ir tukša virknes konstante (ko sauc nulles līnijanull virkne vai tukšs virkne) ir apzīmēts ar divām dubultpēdiņām, starp kurām nav nekā ("");

b Virknes konstantei ir jāatrodas vienā rindā.

Rakstot burtiskas ciparu konstantes VBA kodā, ievērojiet šos noteikumus:

ь skaitliskās konstantes jāsastāv tikai no ciparu rakstzīmēm no 0 līdz 9;

b skaitliskā konstante var sākties ar (–) zīmi un var saturēt decimālzīmi;

b Skaitliskām konstantēm varat izmantot eksponenciālo apzīmējumu.

VBA atpazīst datuma konstantes jebkurā no vairākiem dažādiem formātiem; Visas datuma konstantes jāievieto starp mārciņas zīmēm (#). Šajās rindās ir parādīti daži datuma konstantu formāti, ko atpazīst VBA: #2-5-97 21:17:34# #February 5, 1997 9:17:34pm# #Mag-31-97# #15 April 1997#

Neatkarīgi no tā, kurā no tālāk norādītajiem formātiem ir ierakstīta burtiskā konstante ar veidu Datums, VBA pārformatē konstanti (kad ievietošanas punkts tiek noņemts no rindas pēc konstantes ierakstīšanas), lai atbilstu vienam no šiem diviem formātiem atkarībā no tā, vai Datuma konstante satur informāciju par laiku: #2/5/1997 21:17:34 PM# #2/5/1997# Ir tikai divas pareizas Būla konstantes: True un False.

Konstanta veida norādīšana

Kad deklarējat nosauktu konstanti vai izmantojat burtisku konstanti, VBA "uzskata", ka šīs konstantes attēlotajai vērtībai ir

datu tips, kas visprecīzāk atbilst konstantei piešķirtajai izteiksmei.

VBA varat iestatīt konstantes veidu. Tipveida konstantes deklarēšanas vispārīgā sintakse ir šāda:

Konst nosaukumstips = vērtība[, nosaukumstips = vērtība]

nosaukums ir jebkurš derīgs nemainīgs nosaukums, veids – jebkura VBA datu tipa nosaukums un vērtību – konstantei piešķirtā vērtība.

Šī rinda ilustrē pareizo konstantes deklarāciju ar noteiktu tipu:

Const Pi As Double = 3,14

Iekšzemeskonstantes

VBA nodrošina vairākus iekšējās konstantes(raksturīgs konstantes), ko sauc arī par iepriekš noteiktas konstantes(iepriekš definēts konstantes). Iekšējā konstante ir nosaukta konstante, ko definējuši VBA izstrādātāji. Visas VBA definētās iekšējās konstantes sākas ar burtiem vb lai norādītu, ka tos definē Visual Basic for Applications (vai Visual Basic) valoda. Piemēram, konstantes vbOKOnly, vbOKAtcelt tos nosaka VBA. Excel 2002 iekšējās konstantes sākas ar burtiem xl lai būtu skaidrs, ka tie ir definēti programmā Excel. Pateicoties iekšējām konstantēm, ir vieglāk izmantot dažas VBA iebūvētās procedūras, piemēram, paziņojumu MsgBox, par kuru jau zināt, un operatoru InputBox, kas tiks apspriesti vēlāk šajā daļā.

Parādīt ziņojumu logus. Datu saņemšana no lietotāja

Datu saņemšana no lietotāja, to glabāšana mainīgajā un ar tiem veikto darbību rezultātu parādīšana ir pamata elementi, kas nepieciešami interaktīvu procedūru rakstīšanai. Interaktīvs(interaktīvs) procedūra ir procedūra, kas apmainās ar informāciju ar lietotāju, tas ir, procedūra mijiedarbojas ar lietotāju, parādot ziņojumus un saņemot ievadi.

Funkcija MsgBox ziņojuma lodziņa rādīšanai ir šāda sintakse:

MsgBox(Pamudināt [, Pogas ] [, Nosaukums ] [, Palīdzības fails , Konteksts ])

arguments Pamudināt MsgBox parāda šo rindiņu dialoglodziņā; vienmēr jāsniedz arguments Pamudināt, jo tas ir nepieciešamais arguments(nepieciešams arguments). Arguments Pogas (neobligāts arguments) ir skaitliska izteiksme, kas nosaka dialoglodziņā redzamās pogas un ziņojumus. Arguments Nosaukums apzīmē jebkuru virknes vērtību (literālu, konstantu vai mainīgo). MsgBoxNosaukums, VBA tiek parādīts dialoglodziņa virsrakstjoslā MsgBox vārdu " MicrosoftExcel" . Arguments Palīdzības fails - palīdzības fails, Konteksts – sadaļa palīdzības failā. Ziņojuma tekstu var ievietot iekavās, taču iekavas nav obligātas, ja funkcija darbojas MsgBox

izmanto kā operatoru.

Lietotāja ievadītie dati tiek izsaukti ievades dati(ievade). Lai saņemtu ievadi no procedūras lietotāja, izmantojiet funkciju InputBox. Funkcija(funkciju) ir īpašs VBA procedūras veids, kas atgriež vērtību. Funkcija InputBox parāda dialoglodziņu, kurā ir teksts, kas liek lietotājam ievadīt kādu vērtību, un tekstlodziņu šīs vērtības ievadīšanai. Parādīts dialoglodziņš InputBox, satur arī komandu pogas labi Un Atcelt.

Funkcija InputBox ir šāda sintakse:

stringvar=InputBox( Pamudināt[, Nosaukums] [, Noklusējums] [, XPos] [, YPos] _

[, Palīdzības fails, Konteksts])

Šeit stringvar apzīmē jebkuru mainīgo, kas var saglabāt virkni (vai tipa mainīgo Stīga, vai - Variants). Arguments Pamudināt apzīmē jebkuru virknes vērtību (literālu, konstantu vai mainīgo). InputBox parāda šo virkni kā uzvedni dialoglodziņā; vienmēr jāsniedz arguments Pamudināt, jo tas ir nepieciešamais arguments; visi pārējie nav obligāti. Arguments Nosaukums ir otrais arguments par InputBox. Nosaukums apzīmē jebkuru virknes vērtību (literālu, konstantu vai mainīgo). InputBox parāda šīs virknes tekstu dialoglodziņa virsrakstjoslā. Ja izlaidīsi argumentu Nosaukums, VBA tiek parādīts dialoglodziņa virsrakstjoslā InputBox vārdu " MicrosoftExcel" . Arguments Noklusējums – virknes izteiksme, kas tiek parādīta ievades laukā kā noklusējuma vērtība, ja lietotājs neievada citu virkni; ja šis arguments tiek izlaists, ievades lauks tiek atveidots tukšs. Argumenti XPos Un YPos var būt jebkuras skaitliskas izteiksmes. Šie argumenti ļauj norādīt, kur aktīvajā logā parādās ievades logs, un tie ir dialoglodziņa augšējā kreisā stūra koordinātas: XPos – horizontāls attālums no loga kreisās malas; YPos – tas ir vertikālais attālums no loga augšējās malas. Abi attālumi tiek mērīti pagriezienos ( twips); Viens nogrieznis ir vienāds ar 1/20 punkta (punkts ir drukas fonta mērs). Tā kā punkts ir 1/72 collas, viens izgriezums ir aptuveni 0,0007 collas. Pēdējie divi izvēles argumenti funkcijai InputBox-Šo Palīdzības fails Un Konteksts. Tiem ir tāds pats mērķis kā līdzīgu funkciju argumentiem MsgBox.

Nosaukto funkciju argumentu izmantošana

Kā jūs, iespējams, pamanījāt, ir viegli nejauši izlaist komatus vai pārkārtot argumentu vērtības funkcijās, kurām ir izvēles argumenti vai vairāki argumenti, neskatoties uz rekvizīta palīdzību. Auto Ātri (Īsa informācija) VB redaktors. Argumentu izlaišana vai pārkārtošana funkcijas argumentu sarakstā var izraisīt tipu neatbilstības kļūdas. Kļūda (vēl sliktāka) var netikt atklāta. Lai novērstu programmēšanas kļūdas un atvieglotu funkciju, kurām ir izvēles argumenti, izmantošanu, VBA piedāvā alternatīvu vērtību uzskaitīšanai argumentu sarakstā noteiktā secībā. Varat arī pārsūtīt

funkciju argumentu vērtības, izmantojot nosauktie argumenti(nosaukts argumenti) funkcijas. Nākamajās rindās ir parādīti divi apgalvojumi MsgBox, kuriem ir tāds pats rezultāts; Pirmajā priekšlikumā tiek izmantota parastā argumentu uzskaitīšanas metode, bet otrajā tiek izmantota nosauktā argumentu metode:

MsgBox AnyMsg, AnyTitle

MsgBox Prompt:=AnyMsg, Title:=AnyTitle

Simbols, kas piešķir vērtību nosauktam argumentam (:=), nav tieši tāds pats kā parastais piešķiršanas operators (=). Ja, piešķirot vērtību nosauktam argumentam, izlaidīsiet kolu (:), VBA ne vienmēr atklās sintakses kļūdu, bet var neinterpretēt paziņojumu pareizi. Kad VBA izpilda šo paziņojumu, tiek parādīta viena no vairākām iespējamām izpildlaika kļūdām, bieži vien tipa neatbilstības kļūda.

Nosauktus argumentus nevar sajaukt ar parastu argumentu sarakstu vienā un tajā pašā funkcijas izsaukumā. Katram atsevišķam funkcijas izsaukumam ir jāizmanto vai nu nosauktie argumenti, vai parasto argumentu saraksts.

5. uzdevums. Uzrakstiet procedūru, kas aprēķina apļa laukumu, bet apļa rādiusu iegūst no procedūras lietotāja.

Priekš šī:

Ievadiet procedūru (7. saraksts):

Saraksts 7 – Ievaddatu saņemšana, izmantojot operatoruInputBox

    Const Pi As Single = 3,14 "pi vērtības aproksimācija

    Dim CircleArea As Single " saglabā aprēķināto apļa laukumu 3

4 Apakšsaraksts3_07()

    Const BoxTitle = " apļa laukums"!}

    Dim Radius kā viens, Temp kā virkne 7

    Temp = InputBox ("Ievadiet " & Chr(13) & "circle" rādiusu, BoxTitle)

    Rādiuss = CSng (temp.)

    Apļa laukums = Pi * Rādiuss * Rādiuss

    MsgBox CircleArea, vbInformation + vbOKCancel, BoxTitle

7. saraksta 1. un 2. rinda deklarē konstanti Pi un mainīgais CircleArea modulārais līmenis. 4. rindā ir faktiskā procedūras deklarācija. 5. rindiņa deklarē procedūras līmeņa konstanti BoxTitle; šai konstantei procedūrā ir tikai lokāla piekļuve Saraksts3_07. 8. rindā paziņojums izsauc funkciju InputBox. Tas parāda savu pirmo argumentu kā tekstu dialoglodziņā, aicinot lietotāju ievadīt noteikta veida vērtības. Šajā paziņojumā InputBox parāda tekstu "Ievadiet apļa rādiusu" (funkcija Chr(13) - lēkt simbols uz jauna līnija), lai norādītu procedūras lietotājiem, kāda vērtība viņiem jāievada. InputBox izmanto otro argumentu,

12 Beigu apakš

ko attēlo konstante BoxTitle, kā dialoglodziņa virsraksts. Izpildot paziņojumu InputBox tiek parādīts dialoglodziņš (16. att.)

Apļa laukums

Ievadiet apļa rādiusu

Rīsi. 16 Lietotājs tekstlodziņā ievada skaitli un izvēlas komandas pogu labi vai Atcelt lai aizvērtu dialoglodziņu tāpat kā jebkuru citu Windows logu. Ikreiz, kad izsaucat jebkuru funkciju, jums kaut kā jāizmanto funkcijas atgriešanas vērtība. Tiek izsaukta funkcijas atgrieztā vērtība funkcijas rezultāts(funkciju rezultāts). Kā parādīts 8. rindā funkcijas gadījumā InputBox, kura rezultāts tiek piešķirts mainīgajam Temp. Funkcijas rezultāts InputBox vienmēr ir virkne (tāpēc mainīgais Temp tika paziņots kā Stīga). Tā kā mainīgais Temp tika skaidri deklarēts kā Stīga, virknes vērtība ir jāpārvērš par skaitlisku vērtību, lai to varētu izmantot matemātiskajos aprēķinos. 7. saraksta 9. rindiņa to dara, izmantojot iebūvēto VBA funkciju CSng lai pārveidotu lietotāja ievadi skaitļu veidā Single.

Izteiksmes iekšāVizuālsPamata

Izteiksme(izteiksme) ir vērtība vai vērtību grupa, kas izsaka vienu nozīmi. Katra izteiksme aprēķināts līdz(vai tam ir atsevišķa nozīme). Izteiksmes sastāv no vienas vai vairākām šādām daļām: konstantes (burtiskas vai nosauktas), mainīgie (jebkura datu tipa), operatoru zīmes, masīvi, masīva elementi, funkcijas.

Visas izteiksmes rada vienu noteikta datu tipa vērtību. Izteiksmes var izraisīt arī kādu no īpašajām vērtībām Tukšs(neinicializēts tipa mainīgais Variants vai tādas izteiksmes rezultāts, kas satur neinicializētu tipa mainīgo Variants) vai Null(Null apzīmē izteiksmi, kas satur nederīgus datus). Ja izteiksmē izmantojat rakstzīmi, datu elementi (mainīgie vai konstantes), ar kuriem tiek veikta darbība, tiek izsaukti operandi(operandi); lielākajai daļai darbību ir nepieciešami divi operandi.

Datu tipu saderība. Automātiska datu konvertēšana

Ne visi datu tipi ir saderīgi viens ar otru, un vienā izteiksmē nevar izmantot nesaderīgus datu tipus. Piemēram, virknes aritmētiskai pievienošanai skaitlim nav jēgas, jo šādai izteiksmei nav nozīmes un VBA to nevar novērtēt.

Daudzi datu veidi ir savietojami viens ar otru. Piemēram, jūs varat

apvienot dažādus ciparu datu tipus vienā izteiksmē; VBA automātiski veic nepieciešamo tipu konvertēšanu dažādiem skaitļu tipiem. VBA dažreiz var arī automātiski konvertēt citus datu tipus, lai visi izteiksmes veidi būtu saderīgi, lai gan tas ne vienmēr ir iespējams. Ir ļoti svarīgi kontrolēt un zināt izteiksmes veidu, jo, ja izteiksmēs ir nesaderīgi veidi, VBA rada izpildlaika kļūdu - kļūdu tipa neatbilstība(veids- neatbilstība). Apstrādājot izteiksmi, kas satur dažādus datu tipus, VBA vispirms "mēģina" atrisināt jebkādas veida atšķirības, pārvēršot izteiksmes vērtības saderīgos datu tipos. Ja tipa konvertēšana neizdodas novērst atšķirības, tiek parādīta izpildlaika kļūda un procedūras izpilde tiek pārtraukta. Piemēram, izteiksmē 25 & Computer Science, VBA vienmēr veic virkņu savienošanu (savieno kopā divas virknes), neatkarīgi no mainīgo veidiem; rezultāts ir veids Stīga; šī izteiksme nekad neizraisa tipa neatbilstības kļūdu.

VBA parasti pārvērš visus izteiksmes skaitliskos datu tipus augstākās precizitātes tipā un pēc tam piešķir šo veidu izteiksmes rezultātam. Piemēram, ja izteiksmē ir skaitliskas vērtības ar veidiem Vesels skaitlis Un Viens, izteiksmes rezultāts ir tips Viens– vislielākās precizitātes veids šajā izteiksmē. Ja piešķirat skaitliskās izteiksmes rezultātu mainīgajam ar mazāku precizitāti nekā izteiksmes rezultāta faktiskais veids, VBA noapaļo izteiksmes rezultātu, līdz tā precizitāte atbilst paredzamajam veidam. Piemēram, ja piešķirat skaitlisku izteiksmi, kuras rezultātā tiek iegūti vairāki veidi Dubults, mainīgais tips Vesels skaitlis, VBA noapaļo dubultās precizitātes skaitli, lai ievadītu Vesels skaitlis.

Pārvēršot skaitli par virkni, VBA izveido virkni, kurā ir visi šī skaitļa cipari un decimālzīme (ja skaitlim tāda ir). Piemēram, skaitlis 3413.72 (punkts tiek izmantots, lai kodā ierakstītu skaitli) tiek pārveidots par virkni "3413.72". Ja skaitlis ir ļoti liels vai ļoti mazs, VBA var izveidot skaitļa virknes attēlojumu zinātniskā pierakstā; piemēram, skaitlis 0,0000000004927 tiek pārveidots par virkni "4.927E–11".

VBA var pārvērst virkni par skaitli tikai tad, ja virkne satur simbolisku skaitļa attēlojumu decimāldaļās vai zinātniskā apzīmējumā. Virknes "988.6", "812", "-186.7", "1,ZE10" apzīmē skaitļus, un VBA var tos pārvērst skaitļos. Rindas "1045", "$74,550" un "Labrīt!" nevar pārvērst skaitļos.

Kad VBA pārveido tipa vērtības Būla skaitļos, nozīmē Taisnība tiek pārvērsts par 1 un vērtību Nepatiesi– uz 0. Kad VBA pārvērš skaitli par tipu Būla, nulle tiek konvertēta uz Nepatiesi, un jebkura cita vērtība tiek konvertēta uz Taisnība. Kad VBA pārveido tipa vērtības Būla uz virknēm, VBA izmanto virkni "True". Taisnība un "False" – par Nepatiesi.

Kad VBA pārveido datu tipu Datums uz skaitli, rezultāts ir skaitliska vērtība — tipa skaitlis Dubults, kurā ir norādīts dienu skaits kopš 1899. gada 30. decembra (negatīvs skaitlis apzīmē datumu, kas ir agrāks par 1899. gada 30. decembri). Decimāldaļa cipari (ja tādi ir) izsaka diennakts laiku kā daļu

diena; 0 ir pusnakts un 0,5 ir pusdienlaiks. VBA versijā skaitlisku datu tipu pārveidošana par tipiem Datums ir vienkārši tipa konversijas apgrieztā vērtība Datums skaitā.

Piešķiršanas operators (=)

Šis operators tiek izmantots, lai mainīgajam piešķirtu izteiksmes rezultātu. Piešķiršanas operatora formas sintakse ir šāda:

varname = izteiksme

mainīgs varname - jebkurš mainīgais, a izteiksme - jebkura izteiksme.

Kad izpildāt piešķiršanas operatoru, VBA vispirms novērtē izteiksmi pa labi no piešķiršanas operatora (=) un pēc tam saglabā izteiksmes rezultātu mainīgajā, kura nosaukums atrodas pa kreisi no piešķiršanas operatora.

Piešķiršanas operatora ilustrācija blokshēmā:

varname = izteiksme

Ja izteiksmes rezultātu piešķirat mainīgajam ar noteiktu datu tipu, šis rezultāts var būt tāda veida datu tips, kas ir saderīgs ar mainīgā veidu, kas saņem jauno vērtību. Daudzos gadījumos VBA var pārvērst izteiksmes rezultāta datu tipu par tipu, kas ir saderīgs ar mainīgā veidu, kas saņem jauno vērtību, ja izteiksmes rezultātam un mainīgajam vēl nav saderīgu tipu. Mainīgais tips Variants var piešķirt jebkuru datu tipu.

Aritmētiskās darbības

VBA var veikt visas ierastās aritmētiskās darbības (tiek realizētas ar aritmētiskām izteiksmēm): saskaitīšanu, atņemšanu, reizināšanu un dalīšanu, kā arī skaitļu paaugstināšanu līdz noteiktai pakāpei, kā arī nodrošina papildu speciālas matemātiskās darbības veselo skaitļu dalīšanai un moduļu dalīšanai (11. tabula).

11. tabula- Operāciju zīmes (apzīmējumi), ko izmanto VBA aritmētiskajās izteiksmēs (Ni ir jebkura derīga VBA skaitliskā izteiksme)

Pierakstīties

Sintakse

Nosaukums/Apraksts

Papildinājums. N1 pievieno N2

Atņemšana. No N1 atņem N2

Reizināšana. Reizina N1 ar N2

Divīzija. Dala N1 ar N2.

Veselu skaitļu dalījums. Sadala N1 ar N2, atmetot jebkuru daļdaļu, lai rezultāts būtu vesels skaitlis.

Modulo nodaļa. Sadala N1 ar N2, atgriežot tikai dalīšanas operācijas atlikušo daļu.

Paaugstināšana. Paaugstina N1 līdz jaudai N2.

Abiem operandiem ir jābūt skaitliskām izteiksmēm vai virknēm, kuras VBA var pārvērst skaitļos.

Salīdzināšanas operācijas

Dažkārt tiek sauktas arī salīdzināšanas operācijas relāciju operācijas(relāciju operatoriem). Visbiežāk salīdzināšanas darbības tiek izmantotas, lai noteiktu kritērijus lēmuma pieņemšanai vai formulētu nosacījumu aprakstu, kādos komandu grupai jāatkārto (cikla organizācija).

Jebkuras salīdzināšanas darbības rezultāts ir tipa vērtība Būla: Taisnība vai Nepatiesi. Salīdzināšanas operatori tiek izmantoti, lai salīdzinātu jebkura līdzīga veida burtiskās, nemainīgās vai mainīgās vērtības (12. tabula).

Nosaukums/apraksts

Vienlīdzība. Taisnība , JaElvienāds ar E2, pretējā gadījumā -Nepatiesi

Mazāk nekā. Taisnība , JaElmazāks par E2, pretējā gadījumā -Nepatiesi

Mazāks par vai vienāds ar.Taisnība, ja E1 ir mazāks vai vienāds ar

E2, pretējā gadījumā -Nepatiesi

Vairāk par. Taisnība , ja E1 ir lielāks par E2, pretējā gadījumā –Nepatiesi

Lielāks par vai vienāds ar.Taisnība, ja E1 ir lielāks vai vienāds ar

E2, pretējā gadījumā -Nepatiesi

Nav vienāds.Taisnība, ja E1 nav vienāds ar E2, pretējā gadījumā – Nepatiesi

Objekts. Taisnība, ja El attiecas uz to pašu objektu kā E2, pretējā gadījumā -Nepatiesi Līdzība. Abiem operandiem ir jābūt tipa vērtībām

12. tabula- Salīdzināšanas simboli (E šajā tabulā apzīmē jebkuru derīgu VBA izteiksmi)

Operācija/Operators

Sintakse

f

piemērs,

Stīga. Taisnība, ja El atbilst

Bināro un teksta virkņu salīdzinājums

VBA nodrošina divus dažādus veidus, kā salīdzināt dažādu gadījumu rakstzīmes. Pirmo metodi, ko VBA izmanto virkņu salīdzināšanai, sauc binārs (binārs) vai binārais salīdzinājums, un tā ir noklusējuma salīdzināšanas metode. Lai atlasītu VBA virkņu salīdzināšanas metodi (bināro vai tekstu), izmantojiet direktīvu OpcijaSalīdzināt:

Opcija Salīdzināt [ Binārs | Teksts]

Salīdzinot tekstu, VBA "apstrādā" lielos burtus kā līdzvērtīgus mazajiem burtiem.

Virkņu savienošana

VBA nodrošina iespēju savienot (salīmēt) virknes kopā, veidojot garākas virknes. Tiek izsaukta vienas virknes pievienošana citai savienošana(savienošana) līnijas. & zīmi var izmantot tikai virkņu savienošanai. Vispārīgā zīmes & sintakse ir šāda:

Operands1 & Operands2 [& Operands3… ]

Operands1 Un Operands2 – jebkura derīga virkne vai skaitliskas izteiksmes. Ja viens vai abi operandi ir skaitliskas izteiksmes, VBA pārvērš skaitļus virknēs pirms savienošanas darbības veikšanas. Virknes savienošanas rezultāta datu tips vienmēr ir veids Stīga.

Loģiskie operatori

Visbiežāk izmanto VBA loģiskos operatorus, lai apvienotu atsevišķu salīdzināšanas izteiksmju rezultātus, lai procedūrā izveidotu sarežģītus lēmuma kritērijus vai radītu nosacījumus, saskaņā ar kuriem paziņojumu grupa ir jāatkārto (13. tabula).

13. tabula– Loģiskie operatori (E šajā tabulā apzīmē jebkuru derīgu izteiksmi ar Būla rezultātu, piemēram, salīdzināšanas operatoru)

Operatora sintakses nosaukums/apraksts

Un El Un E2 Savienojums. Taisnība, ja gan E1, gan E2 ir nozīmīgi

Taisnība , citādi -Nepatiesi Vai El vai E2 Disjunkcija. Taisnība, ja viena izteiksme vai abas (E1 un

E2) ir vienādiTaisnība ; citādi -Nepatiesi Nevis El Negācija. Taisnība, ja E1 ir vērtība Nepatiesi; Nepatiesi,

JaElir vienādsTaisnība

Izņēmums. Taisnība, ja E1 un E2 atšķiras

vērtības; citādi -Nepatiesi

Ekvivalence. Taisnība, ja E1 ir tāds pats

nozīmē to pašu, ko E2; citādi -Nepatiesi

Ietekme. Nepatiesi, kad E1 ir vienāds Taisnība Un

E2 ir vienāds arNepatiesi ; citādi -Taisnība .

Darbības prioritātes, novērtējot sarežģītas izteiksmes

Komplekss(savienojums) izteiksme(komplekss izteiksme) ir jebkura izteiksme, kas veidota no divām vai vairākām izteiksmēm. Daudzas no jūsu rakstītajām izteiksmēm ir sarežģītas izteiksmes, it īpaši, ja tās kontrolē koda secību procedūrās vai attēlo dažādas matemātiskas formulas (14. tabula).

14. tabula– Paziņojumu/operāciju hierarhija no augstākās līdz zemākajai prioritātei

Operators/paraksts Komentāri

Paaugstināšana augstākā prioritāte

Vienots mīnuss

Reizināšanai un dalīšanai ir vienāda prioritāte; tie tiek novērtēti tā, kā tie parādās izteiksmē no kreisās puses uz labo

Saskaitīšanai un atņemšanai ir vienāda prioritāte; tie tiek novērtēti tā, kā tie parādās izteiksmē no kreisās puses uz labo

Visas virknes savienošanas tiek veiktas pēc jebkādām aritmētiskām darbībām izteiksmē un pirms salīdzināšanas vai salīdzināšanas darbībām. loģiskās operācijas

<, <=, >, >=,

Patīk, =,<>, Is

Visiem salīdzināšanas operatoriem ir vienāda prioritāte, un tie tiek novērtēti tā, kā tie parādās izteiksmē no kreisās puses uz labo. Izmantojiet iekavas, lai izteiksmēs grupētu salīdzināšanas operatorus

Funkciju izmantošanaVisual Basic

Vai esat jau izmantojis iebūvētās VBA funkcijas: InputBox Un MsgBox. Funkcija(funkciju) ir iebūvēta formula, kas veic darbības ar izteiksmēm un ģenerē vērtību. Funkcija vienmēr atgriež vērtību, kuru VBA ievieto programmā, kurā parādās funkcijas nosaukums. VBA funkcijas ir sadalītas vairākās grupās atkarībā no to veiktās darbības vai aprēķina veida. Nejauciet terminus funkciju Un procedūru. Parasti procedūra veic noteiktu uzdevumu (vai uzdevumu grupu), līdzīgi kā īpaša izvēlnes komanda programmā Excel, Word vai citā lietojumprogrammā veic noteiktu uzdevumu. Funkcija darbojas ar vienu vai vairākām vērtībām un atgriež kādu iegūto vērtību (piemēram, formulu Excel darblapas šūnā). Lai izmantotu funkciju, vienkārši ievadiet funkcijas nosaukumu VBA priekšrakstā kopā ar visiem argumentiem, kas funkcijai nepieciešami tajā priekšraksta punktā, kurā jāizmanto funkcijas rezultāts. Funkcijas nosaukuma ievietošana VBA priekšrakstā, lai izsauktu funkciju, tiek izsaukta izaicinājums(zvanot) funkcijas.

VBA iebūvētās funkcijas ir sadalītas vairākās kategorijās, pamatojoties uz funkciju vispārējo mērķi (matemātikas, datu konvertēšanas, datuma un laika, virkņu un diska manipulācijas).

Matemātiskās funkcijas

VBA nodrošina standarta matemātisko funkciju kopu (15. tabula). 15. tabula- VBA matemātikas funkcijas (N nozīmē jebkuru skaitlisku izteiksmi)

Atgriešana/darbība

Funkcijas (ar-

smaganas)

Atgriež absolūto vērtībuN

Abs(N)

Leņķa kosinussN, KurN

Cos(N)

Atgriež leņķa sinusu;Nir leņķis, ko mēra radiānos

Grēks(N)

Iedegums(N)

Atgriež leņķa tangensu;N– leņķis radiānos

Atn(N)

Atgriež arktangensuNkā leņķis radiānos

Atgriež konstanti e, paaugstināts līdz jaudai N ( e ir naturālo logaritmu bāze, un tā ir (aptuveni) vienāds ar 2,718282)

Atgriež N veselo skaitļa daļu. Fix nenoapaļo skaitli, bet atmet jebkuru daļskaitli. Ja N ir negatīvs, Fix atgriež tuvāko negatīvo veselo skaitli lielāks par vai vienāds arN

Žurnāls(N)

Atgriež N veselo skaitļa daļu. Int nenoapaļo skaitli, bet atmet jebkuru daļskaitli. Ja N ir negatīvs, Int atgriež tuvāko negatīvo veselo skaitli mazāks par vai vienāds arNAtgriež naturālo logaritmuN

nejauši

arguments

ir

Atgriežas

neobligāti. Izmantojiet Rnd funkciju tikai pēc tam

inicializējot VBA nejaušo skaitļu ģeneratoru ar operatoru

Randomizēt

Atgriež skaitļa zīmi: –1, ja N ir negatīvs; 1, ja N –

pozitīvs; 0 jaNvienāds ar 0

Atgriež kvadrātsakni no N. VBA parāda kļūdu

izpildes laiks, jaN– negatīvs

Datu konvertēšanas funkcijas

Visual Basic nodrošina vairākas funkcijas viena datu veida konvertēšanai citā (16. tabula). Izmantojiet šīs funkcijas, lai atrisinātu veidu neatbilstības kļūdas un nodrošinātu precīzu datu tipu kontroli izteiksmēs.

16. tabula- Datu konvertēšanas funkcijas (N ir jebkurš skaitlis, S ir jebkura virkne un E ir jebkura veida izteiksme)

Funkcija (ar- Atgriešanās/darbībasmaganas)

Atgriež rakstzīmes koda numuru, kas atbilst pirmajam burtam līnijasS. Piemēram, burta "A" rakstzīmju kods ir 65

Funkcija (argumenti)

Atgriešana/darbība

Atgriež vienas rakstzīmes virkni, kas atbilst rakstzīmju kodam N, kam ir jābūt skaitlim no 0 līdz 255 ieskaitot. Piemēram, rakstzīmju kods 65 atgriež burtu "A" (Chr(13) ir karieta atgriešanas rakstzīme, Chr(10) ir vienas rindiņas nobīdes rakstzīme)

Atgriež virkni, kas satur vērtību, ko attēlo izteiksme E, kas formatēta saskaņā ar S ietvertajiem norādījumiem

Atgriež virkni, kas satur N heksadecimālo attēlojumu

Oct(N) Atgriež virkni, kas satur N oktālo attēlojumu

Atgriež veida veselu skaitli Garš, kas atspoguļo attēla primāro krāsu vērtību. N katrā argumentā ir jābūt veselam skaitlim diapazonā no 0 līdz 255, ieskaitot. Argumenti (no kreisās uz labo) ir sarkanās, zaļās un zilās krāsas vērtības

Str(N) atgriež virkni, kas ir ekvivalenta skaitliskai izteiksmei N

Atgriež skaitlisku vērtību, kas atbilst skaitlim, ko attēlo virkne S, kurā ir jābūt tikai cipariem un vienam komatam, pretējā gadījumā VBA nevar to pārvērst par skaitli. Ja VBA nevar pārvērst virkni par S, funkcija Val atgriež 0

CBool(N) atgriež skaitliskās izteiksmes N Būla ekvivalentu

baits(no 0 līdz 255); E – jebkura derīga ciparu vai virknes izteiksme, ko var pārvērst par skaitli

Atgriež tipa skaitlisku vērtību Valūta

Atgriež tipa vērtību Datums. E var būt jebkura derīga izteiksme (virkne vai skaitlis), kas apzīmē datumu diapazonā 1/1/100 12/31/9999 , ieskaitot

Atgriež tipa skaitlisku vērtību Dubults, ko var pārvērst par skaitli

Atgriež tipa skaitlisku vērtību Vesels skaitlis; E – jebkura derīga ciparu vai virknes izteiksme, ko var pārvērst par skaitli

Atgriež tipa skaitlisku vērtību Garš; E – jebkura derīga ciparu vai virknes izteiksme, ko var pārvērst par skaitli

Funkcija (argumenti)

Atgriešana/darbība

Atgriež tipa skaitlisku vērtību Viens; E – jebkura derīga ciparu vai virknes izteiksme, ko var pārvērst par skaitli

Atgriež tipa vērtību Stīga; E – jebkura derīga ciparu vai virknes izteiksme

Atgriež tipa vērtību Variants; E – jebkura derīga ciparu vai virknes izteiksme

Datuma un laika funkcijas

VBA datuma un laika funkcijas parasti tiek izmantotas, lai iegūtu pašreizējo datumu un laiku, sadalītu datuma vērtību tā sastāvdaļās vai pārvērstu virknes un skaitļus tādās vērtībās kā Datums(17. tabula).

17. tabula– Datuma un laika funkcijas (N ir jebkura derīga skaitliska izteiksme, un D ir jebkura derīga izteiksme, piemēram, Datums(ieskaitot tādas vērtības kā Datums, cipari vai virknes, ko VBA var pārvērst par datumu); visi funkciju argumenti ir nepieciešami, ja nav norādīts citādi)

Atgriešana/darbība

Funkcijas (ar-

smaganas)

Atgriež sistēmas datumu. Varat arī izmantot šo funkciju kā procedūru, lai iestatītu datora sistēmas pulksteni. Sīkāka informācija atrodama atsauces grāmatā. sistēmasVBA

Atgriež datora sistēmas laiku kā tipa vērtību Datums. Šo funkciju var izmantot arī kā procedūru sistēmas pulksteņa iestatīšanai. Sīkāku informāciju var atrast no palīdzības sistēma VBAAtgriež sistēmas datumu un laiku

Datums Un

Atgriež veselu skaitli, kas ir daļa no veida izteiksmes Datums,

ieskaitot

Atgriež veselu skaitli, kas ir daļa no veida izteiksmes Datums Un

Darba diena(D) Stunda(D)

ieskaitot

Atgriež veselu skaitli, kas satur nedēļas dienu veida izteiksmei

Datums. Nedēļas diena tiek atgriezta kā skaitlis no 1 līdz 7,

ieskaitot; 1 ir svētdiena, 2 ir pirmdiena un tā tālāk

Atgriež veselu skaitli, kas satur stundas kā daļu laika,

skaitlis no 0 līdz 23, ieskaitot. Ja izteiksme D nav

satur laika vērtības, tadStundaatgriež 0

Funkcijas (ar-smaganas)

Pievienošanas datums(S, N, D)

Datums, sērijas (N, N, N)

Laika sērija (N, N, N)

Atgriešana/darbība

Atgriež veselu skaitli, kas satur minūtes kā daļu no laika

izteiksmes veids Datums. Minūtes tiek atgrieztas kā skaitlis starp 0

un 59, ieskaitot. Ja izteiksmē D nav vērtības

laiks,Minūteatgriež 0

Atgriež veselu skaitli, kas ietver sekundes kā daļu no laika

izteiksmes veids Datums. Sekundes tiek atgrieztas kā skaitlis starp

0 un 59, ieskaitot. Ja izteiksmē D nav vērtības

laiks,Otrkārtatgriež 0

Atgriež vērtību [tips Variants(Datums)], kas satur datumu līdz

DateDiff(S, D1, atgriež [tips Variants(Garš)] pagaidu skaits D2[,Nl [, N2 ]]) intervāli starp diviem konkrētiem datumiem DatePart(S, D, [, Atgriež norādīto daļu [tips Variants(Vesels skaitlis)] N1 [, N2]]) dotais datums

kam tiek pievienots noteikts laika intervāls

Atgriež secīgā datuma vērtību norādītajam datumam. No kreisās puses uz labo argumenti attēlo gadu, mēnesi un dienu. Gada argumentam ir jābūt veselam skaitlim no 100 līdz 9999, mēnesim ir jābūt no 1 līdz 12, dienai ir jābūt no 1 līdz 31 (visi diapazoni ir iekļauti)

Atgriež sērijas laika vērtību. No kreisās puses uz labo argumenti apzīmē stundas, minūtes un sekundes. Stundu argumentam ir jābūt veselam skaitlim no 0 līdz 23, argumentiem minūtēs un sekundēs ir jābūt cipariem no 0 līdz 59 Atgriež tipa vērtību Datums, kas ir līdzvērtīgs datumam, kas norādīts ar argumentu E, kam ir jābūt virknei, skaitlim vai konstante, kas apzīmē datumu

pusnakts pēc datorsistēmas laika Dažas no uzskaitītajām funkcijām jau ir izmantotas šīs grāmatas piemēros, citas tiks izmantotas turpmāk.

Stīgu funkcijas

VBA virkņu funkcijas bieži tiek izmantotas, lai atrastu noteiktas virknes citās virknēs, salīdzinātu vienu virkni ar citu un kopētu atlasītās virkņu daļas (18. tabula).

Atgriež tipa vērtību Datums, kas satur ar argumentu E norādīto laiku, kas var būt virkne, skaitlis vai konstants, kas attēlo laiku Atgriež skaitli, kas apzīmē sekunžu skaitu no

18. tabula- Virknes funkcijas (N ir jebkura derīga skaitliskā izteiksme, un S ir jebkura derīga virknes izteiksme)

gumija)

Atgriež S2 pozīciju S1. N1 – sākuma pozīcija priekš

Meklēt; N2 nosaka salīdzināšanas veidu. N1 un N2 nav obligāti. Ja N2 ir izlaists, tad meklēšanai tiek izmantots pašreizējais uzstādīšanaOpcija Salīdzināt InStrRev(Sl, S2 Atgriež pozīciju, kur virkne S2 parādās S1 iekšpusē

[, Nl[, N2]]) LCase(S)

Len(S) LTrim(S)

Atstarpe (N) StrComp (Sl, S2, N)

virzienā no līnijas beigām (vai N1) līdz līnijas sākumam. N2 nosaka salīdzināšanas veidu. Ja N2 ir izlaists, meklēšanai tiek izmantots lietojums pašreizējā instalācijaOpcija Salīdzināt

Atgriež virkni (tipa Stīga), kas satur S kopiju ar visām lielajiem burtiem, kas pārveidotas rakstzīmēs mazie burti

Atgriež virkni; kopē N rakstzīmes no S, sākot no kreisās puses pēdējais varonisS

Atgriež S rakstzīmju skaitu, ieskaitot sākuma un beigu rakstzīmes atstarpes

no līnijas kreisās puses (pirmās atstarpes) Atgriež virkni; kopē N2 rakstzīmes no S, sākot no rakstzīmju pozīcijas S, kas norādīta ar N1. N2 nav obligāts; ja N2 ir izlaists, tad Mid atgriež visu rakstzīmes virknēSno pozīcijasN1 līdz rindas beigām Atgriež virknes vērtību; kopē N rakstzīmes no S,

sākot no labās puses rakstzīmesS

Pēc atstarpes rakstzīmju noņemšanas atgriež virknes S kopiju

no virknes labās puses (beigu rakstzīmes)

Atgriež garuma atstarpju virkniNrakstzīmes

Salīdzina S1 ar S2 un atgriež skaitli, kas norāda salīdzināšanas rezultātu: -1, ja SI< S2; 0, если SI = S2; 1, если SI >S2. N ir neobligāts un norāda, vai salīdzinājumam ir jābūt reģistrjutīgam. Ja N ir izlaists, virknes tiek salīdzinātas, izmantojot pašreizējo iestatījumu OpcijaSalīdzināt

Atgriež virkni, kas pārveidota par jauna uniforma atkarībā no N argumenta norādītā ciparu koda VBA nodrošina iekšējās konstantes lietošanai ar funkciju StrConv. visnoderīgākie ir: vbProperCase(pārvērš virkni tā, lai katrs burts, kas sāk vārdu, tiktu rakstīts ar lielo burtu), vbLowerCase(pārvērš virkni mazajos burtos) un vbUpperCase(pārvērš virkni par lielajiem burtiem)

Funkcija (ar- Atgriešanās/darbībagumija)

String(N, S) Atgriež N rakstzīmju garu virkni, kas sastāv no rakstzīmes

norādīta ar pirmo rakstzīmiS Trim(S) Atgriež virknes S kopiju pēc sākuma un noņemšanas

beigu atstarpes rakstzīmes no šīs virknes UCase(S) atgriež S ar visiem mazajiem burtiem,

pārveidots par lielajiem burtiem Vairāki uzskaitīti tabulā. 16 datu tipu konvertēšanas funkcijas attiecas arī uz virkņu manipulācijām: Chr, Format, CStr, jo īpaši.

Datu vērtību formatēšana

Lai gan VBA var automātiski pārveidot jebkuru datu tipu par virkni attēlošanai, izmantojot funkciju MsgBox vai ievietošanai Excel darblapā, VBA izvēlētais datu formāts var nebūt tas, kuru vēlaties. Pārvēršot skaitli par virkni, VBA virknei nepievieno tūkstošu atdalītāju, dolāra zīmes vai citu skaitļu formatējumu. Turklāt, ja skaitlis ir ļoti liels vai ļoti mazs, VBA izveido virkni, kas attēlo šo skaitli zinātniskajā apzīmējumā. Konvertējot datumus, VBA vienmēr izmanto īso datuma un laika formātu, ko izmanto datora operētājsistēma, un vienmēr parāda gan datumu, gan laiku.

Lai iegūtu gandrīz jebkuru datuma formātu, pārvēršot skaitļus vai datumus virknēs, varat izmantot funkciju Formāts; jūs pat varat izmantot funkciju Formāts lai formatētu virknes datus atbilstoši noteiktam modelim. Varat arī izveidot pielāgotus ekrāna formātus, ja nepieciešams, lai dati tiktu parādīti noteiktā formātā. Formāta operatora sintakse:

Formāts ( Izteiksme [, Formāts[, Pirmā nedēļas diena [, Pirmā gada nedēļa]]])

Izteiksme – jebkura derīga izteiksme (obligāta); Formāts – derīga nosaukta vai lietotāja definēta formāta izteiksme (pēc izvēles); Pirmā nedēļas diena – konstante, kas definē nedēļas pirmo dienu (pēc izvēles); Pirmā gada nedēļa – konstante, kas nosaka gada pirmo nedēļu (pēc izvēles).

Par argumentiem Pirmā nedēļas diena Un Pirmā gada nedēļa VBA ir nosaukusi konstantes, par kurām varat uzzināt VBA palīdzības sadaļā Datuma konstantes.

Lai izmantotu funkciju Formāts, varat norādīt iepriekš definētu formātu (sauktu nosaukts formāts(nosaukts formātā), vai izveidojiet noteikta formāta attēlu, izmantojot īpašas rakstzīmju grupas kombinācijas, ko sauc vietturu rakstzīmes(vietturi). Ja jums ir jāizveido pielāgoti formāti skaitļiem, datumiem vai laikiem, jums ir jāizveido virkne, kurā ir viettura rakstzīmes, lai norādītu formatējumu, kas jāizmanto funkcijai. Formāts pārvēršot vērtības virknē (19. tabula). Turklāt tabulā. 19 lietoti

piemēram, skaitliskā vērtība ir 1234,5.

lai izveidotu pielāgotu

19. tabula- Formatējiet aizpildījuma rakstzīmes

Viettura rakstzīme

Darbība

Ciparu rakstzīme, kas parāda ciparu, ja tāds ir, vai 0, ja tā nav. Varat izmantot rakstzīmi 0, lai parādītu sākuma nulles veseliem skaitļiem un beigu nulles decimālskaitļiem; 00000.000 rāda 00124.500

Ciparu simbols parāda ciparu, ja tāds ir šajā pozīcijā, pretējā gadījumā tas neko nerāda. Viettura rakstzīme # ir līdzvērtīga 0, izņemot to, ka sākuma un beigu nulles netiek rādītas; #####.### parāda 1234,5

$ Parāda dolāra zīmi; $###,###.00 parāda 1234,50 $

Decimālzīme viettura rakstzīme, parāda decimālzīmi norādītajā vietā viettura rakstzīmju virknē 0; #.##.## parāda 1234.5

Procentu simbols, reizina vērtību ar 100 un pievieno procentu zīmi vietā, ko norāda 0 aizpildījuma rakstzīmes; #0.00% parāda skaitli 0,12345 kā 12,35% (12,345 noapaļo uz 12,35)

, (komats)

Tūkstošu atdalītājs, pievieno komatus kā tūkstošu atdalītājus 0 un # aizpildījuma rakstzīmju virknēs; ###,###,###. 00 parāda 1234,50

Parāda vērtības eksponenciālā formātā ar eksponenta zīmi tikai negatīvām vērtībām; #.#### E00 displeji 1.2345E03; 0.12345 tiek parādīts kā 1.2345E-01

Parāda vērtības eksponenciālā formātā ar eksponentu pozitīvajām un negatīvajām vērtībām; #.#### E+00 parāda 1.2345E+03

Datuma vērtību formatēšanai atdala dienu, mēnesi un gadu. mm/ dd/ yy rāda 06/06/97. "/" rakstzīmes var aizstāt ar defises rakstzīmēm, lai parādītu kā 06-06-97

Norāda, kā mēnešus attēlot datumos; m displeji 2, mm– 02, mmm- februāris, mmmm- februāris

Norāda, kā dienas attēlot datumos; d displeji 1, dd rāda 01, ddd– piektdien, dddd- Piektdiena

y Parāda gada dienu kā skaitli no 1 līdz 366

Norāda, kā datumos attēlot gadus; yy displeji 99, wow– 1999

Parāda gada ceturksni kā skaitli no 1 līdz 4

Parāda nedēļas dienu kā skaitli (1 ir svētdiena)

Parāda gada nedēļu kā skaitli no 1 līdz 54

Viettura rakstzīme

Darbība

: (kols) Atdala stundas, minūtes un sekundes laika formāta vērtībās; hh: mm: ss rāda 02:02:02

Norāda, kā parādīt pulksteni; laika vērtībai 02:01:38 h displeji 2, hh parāda 02

Minūtes viettura simbols laikam; laika vērtībai 02:01:08 n parāda 1 un nn parāda 01

Sekunžu viettura simbols laikam; laika vērtībai 02:01:08 s parāda 8 un ss parāda 08

Parāda laiku 12 stundu laika formātā, pievienojot AM un PM; h: nnAM/RM rāda 16:00. Alternatīvi formāti ietver am/pm, A/P un a/p

Rakstzīmju vietturis, parāda atstarpi, ja formatētajā virknē nav atbilstošas ​​rakstzīmes (noklusējuma aizpildīšanas secība ir no labās puses uz kreiso)

Parāda visas rakstzīmes ar lielajiem burtiem

Parāda visas rakstzīmes ar mazajiem burtiem

Izmantojot resursdatora lietojumprogrammas funkcijas

Papildus Visual Basic for Applications iebūvētajām funkcijām dažas VBA resursdatora lietojumprogrammas funkcijas ir pieejamas no VBA koda. Uzņēmēja-pieteikums ir lietojumprogramma, kurā tiek izstrādātas tādas VBA procedūras kā Word, Excel, PowerPoint, Outlook vai FrontPage. Piemēram, programmā Excel ir dažādas funkcijas, kas veic matemātiskas, loģiskas, finansiālas un statistiskas darbības ar datiem darblapās. Daudzas (lai gan ne visas) no šīm Excel funkcijām ir pieejamas no VBA koda. VBA pieejamās resursdatora lietojumprogrammas funkcijas nav VBA daļa, tās ir resursdatora lietojumprogrammas daļa. Funkcijas, kas VBA ir pieejamas vienā resursdatora lietojumprogrammā, var nebūt pieejamas citā.

Lai izmantotu funkciju, kas pieder resursdatora lietojumprogrammai, piekļūstiet funkcijai, izmantojot programmas objektu Pieteikums. Lietojumprogrammas VBA objekts attēlo resursdatora lietojumprogrammu un visus tās resursus. Objekti sīkāk aprakstīti 6. daļā.

6. uzdevums. Uzrakstiet procedūru, kas izmanto Excel funkciju Max.

Priekš šī:

Ievadiet procedūru (8. saraksts):

Saraksts 8 – Excel funkciju izmantošanaMaks

1 apakšsaraksts3_08()

2 MsgBox Application.Max(9, 17, -18, 20)

Aiz vārda Pieteikums kam seko punkts (.) un pēc tam funkcijas nosaukums Maks bez atstarpēm. Šis punkts, saukts atdalīšanas punkts(punkts atdalītājs), norāda, ka paziņojums attiecas uz funkciju Maks, kas ir objekta daļa

Pieteikums.

Excel funkcijas rezultātu nevar ignorēt. Excel funkcijas izsaukumā vienmēr ir jāiekļauj iekavas, un funkcijas rezultāts vienmēr ir jāizmanto kaut kādā veidā: kā vērtība izteiksmē, arguments citai funkcijai vai procedūrai vai piešķiršanas priekšrakstā.

Ne visas resursdatora lietojumprogrammas funkcijas ir pieejamas VBA. Ja neesat pārliecināts, vai VBA ir pieejama noteikta resursdatora lietojumprogrammas funkcija, izmantojiet Objekts Pārlūkprogramma lai pārbaudītu, vai sarakstā ir iekļauts Biedri (Komponents) šo funkciju, ja tā ir atlasīta Darblapas funkcija sarakstā Klases (Klases) un ar sarakstā atlasīto resursdatora lietojumprogrammu Projekts/ Bibliotēka (Projekts/Bibliotēka). Ja vēlamo funkciju nav sarakstā, tad tas nav pieejams VBA.

Kontroles jautājumi

    Definējiet jēdzienu "datu tipi". Kādi datu veidi tiek izmantoti VBA?

    Kas ir ID?

    Kas ir mainīgais? Ko nozīmē izteiciens “netiešā veidā definēt mainīgo” un ko tas nozīmē “tieši”?

    Kādas konstantes tiek izmantotas VBA? Kas ir iekšējās konstantes?

    Kam tiek izmantotas funkcijas InputBox un MsgBox?

    Kas ir izteiksme?

    Definējiet piešķiršanas operatora sintaksi.

    Kas ir relāciju operācijas?

    Kāda ir matemātisko darbību prioritāte?

    Kāds atslēgvārds pastāv VBA, kas jāizmanto, piekļūstot Excel funkcijas? Kam var izmantot objektu pārlūkprogrammas logu?

  • Būla- Būla datu tips var saglabāt tikai divas vērtības: True vai False, True vai False. Tā izmantošana veselu skaitļu mainīgo vietā ir labs programmēšanas stils.
  • baits- baitu tips ir jauns programmā Visual Basic 5 un ir paredzēts veselu skaitļu glabāšanai no 0 līdz 255. Tā izmantošana ļauj ievērojami ietaupīt RAM un samazināt masīvu izmēru, salīdzinot ar iepriekšējās versijas Visual Basic. To izmanto arī, strādājot ar binārajiem failiem.
  • Valūta - šis tips trūkst GW-BASIC un QuickBASIC versijās. Tas ir izstrādāts, lai izvairītos no kļūdām konvertēšanas laikā decimālskaitļi binārā formā un otrādi. (1/10 nav iespējams attēlot kā 1/2, 1/4, 1/8, 1/16 utt.) Šim tipam var būt līdz 4 cipariem aiz komata un līdz 14 pirms komata. to. Šajā diapazonā aprēķini būs precīzi. Identifikators ir simbols "@". Tā kā visas aritmētiskās darbības, izņemot saskaitīšanu un atņemšanu, tiek veiktas tikpat lēni kā dubultās precizitātes mainīgo gadījumā, šis veids ir vēlams finanšu aprēķinos. (Tiem, kas interesējas, šis tips izmanto 19 vietu veselus skaitļus, kas pēc tam tiek dalīti ar 10 000. Tas nodrošina 15 zīmes aiz komata un 4 zīmes aiz komata.)
  • Datums- Šis datu veids ļauj saglabāt laika un datuma vērtības no 100. gada 1. janvāra pusnakts līdz 9999. gada 31. decembra pusnaktij. Šādas vērtības programmas tekstā tiek attēlotas ar "#" rakstzīmēm, piemēram: NewYear = #January 1, 2000# Ja ievadāt tikai datuma vērtību, Visual Basic pieņem, ka laiks ir 00:00.
  • Decimālzīme- visspēcīgākais ciparu veids. Lai saglabātu šāda veida mainīgo, tiek piešķirti 16 baiti. Intervāla negatīvās un pozitīvās robežas, kurās atrodas šī mainīgā iespējamās vērtības, ir identiskas pēc lieluma un vienādas ar +/- 79 228 162 514 264 337 593 543 950 335, ja izmantojat veselus skaitļus. Ja ir nepieciešams saglabāt daļskaitļus, iespējamo vērtību robežas tiks novirzītas par vairākām kārtām atkarībā no tā, cik ciparu aiz komata izmanto izstrādātājs. Šo veidu var izmantot tikai decimāldaļu glabāšanai. Izstrādātājs var izmantot līdz 28 zīmēm aiz komata.
  • Dubults- šāda veida mainīgie ļauj saglabāt skaitļus ar precizitāti līdz 16 cipariem un garumu līdz 300 rakstzīmēm. Identifikators ir "#". Aprēķini ar tiem arī ir aptuveni, un to ātrums ir salīdzinoši mazs. Dubultie mainīgie galvenokārt tiek izmantoti zinātniskiem aprēķiniem.
  • Vesels skaitlis- Veseli mainīgie var saglabāt tikai salīdzinoši mazus veselus skaitļus (diapazonā no -32 768 līdz +32 767). Aritmētiskās darbības uz šādiem numuriem tie tiek izpildīti ļoti ātri. Lai apzīmētu šo veidu, izmantojiet simbolu "%": IntegerPerem% = 3
  • Garš- šis tips pirmo reizi parādījās QuickBASIC valodā. Šādi mainīgie saglabā veselu skaitļu vērtības no -2 147 483 648 līdz +2 147 483 647. Tie ir apzīmēti ar simbolu "&". Arī aritmētiskās darbības ar šādiem skaitļiem ir ļoti ātras, un, darbojoties ar 386DX vai 486DX procesoru, bija tikai neliela atšķirība aprēķina ātrumā starp Long un Integer. LongPerem& = 123456789
  • Objekts- patiesībā šāda veida mainīgais ir tikai saite uz konkrētu objekta gadījumu. Mainīgā glabāšanai tiek piešķirti 4 baiti.
  • Viens- šo skaitļu identifikators ir simbols "!". Šāda veida mainīgais ļauj saglabāt daļskaitļus ar precizitāti līdz septiņiem cipariem. Tas nozīmē, ka, ja rezultāts ir 12345678,97, tad daļa 8,97 nav precīza. Rezultāts varētu būt, piemēram, 12345670.01. Cipari var būt līdz 38 rakstzīmēm gari. Aprēķini ar šiem mainīgajiem arī būs aptuveni. Turklāt aritmētiskās darbības ir lēnākas nekā ar veseliem mainīgajiem.
  • Stīga- virknes mainīgie saglabā rakstzīmes. Viens veids, kā norādīt šāda veida mainīgo, ir pievienot "$" tā nosaukuma beigās, piemēram: StringPerem$. Teorētiski šāds mainīgais var saturēt līdz 2 miljardiem rakstzīmju. Jebkurā gadījumā konkrētā datorā šis skaitlis būs daudz mazāks ierobežoto apjomu dēļ brīvpiekļuves atmiņa, Windows resursi vai veidlapā izmantoto rakstzīmju skaits. Viens no visvienkāršākajiem virkņu mainīgo lietojumiem ir informācijas atlase no ievades laukiem.

Piemēram, ja maināt tekstu 1. tekstlodziņā, tekstlodziņā tiks parādīts tas pats teksts, bet bez pēdējās rakstzīmes labajā pusē:

Opcija Explicit Dim strText As String Private Sub Form_Load() Text1.Text = "" Text2.Text = "" Beigt apakšējo privāto apakštekstu1_Change() Iestājoties kļūdai Atsākt nākamo Text2.Text = strText strText = Left(Teksts1.Text, Len(Text) .Teksts) - 1) Beigt apakš

Variants- šis veids tika pievienots Visual Basic 5 no versijas 2.0. Tipa varianta mainīgais var saturēt jebkura veida datus. Ja Visual Basic nezina, kāda veida dati jāsaņem, ir jāizmanto variants. Informācijas veidam nav nozīmes, jo variantā var būt jebkāda veida dati (ciparu, datums/laiks, virkne). Visual Basic automātiski veic nepieciešamās datu transformācijas, tāpēc jums par to nav jāuztraucas. No otras puses, varat izmantot iebūvētās funkcijas, lai pārbaudītu mainīgajā variantā saglabāto datu veidu. Tie ļauj viegli pārbaudīt, vai lietotājs ievada informāciju pareizi. Izmantojot datu tipu, piemēram, variantu, programma palēnina darbību, jo tipa konvertēšanas darbībām ir nepieciešams laiks un resursi. Turklāt daudzi programmētāji apzinās, ka, izmantojot automātiskas datu tipu konvertēšanas, programmas izskatās nevīžīgas. Vienīgais iemesls lietošanā variants ir iespējamās kļūdas kad programmētājs tieši konvertē tipus.

Dažreiz, izmantojot noteiktus operatorus, API funkcijas vai vienkārši savām vajadzībām, jums ir jāizveido savi datu tipi. Tos bieži sauc par struktūrām. Savā būtībā struktūra ir kā viendimensijas masīvs, ko mēs ievietojam vienā mainīgajā. Bet tas var ietvert dažāda veida datus.

Sava datu tipa izveide tiek veikta, izmantojot priekšrakstu Type, kas tiek izmantots formas koda sadaļā Vispārīgi.