Lai gan programmā Excel jau ir simtiem iebūvētu funkciju, piemēram, SUM, VLOOKUP, LEFT un tā tālāk, pieejamās iebūvētās funkcijas parasti nav pietiekami, lai veiktu diezgan sarežģītus uzdevumus. Tomēr neuztraucieties, jo nepieciešamās funkcijas ir jāizveido tikai pašiem.
Solis
1. darbība. Izveidojiet jaunu darbgrāmatu vai atveriet darbgrāmatu, kuru vēlaties apstrādāt, izmantojot lietotāja definētas funkcijas (UDF)
2. solis. Atveriet Visual Basic redaktoru programmā Microsoft Excel, izmantojot Rīki-> Makro-> Visual Basic redaktors (vai nospiediet īsinājumtaustiņu Alt+F11)
3. solis. Noklikšķiniet uz pogas Modulis, lai darblapai pievienotu jaunu moduli
Jūs varat izveidot UDF darbgrāmatā, nepievienojot jaunu moduli, taču šī funkcija nedarbosies citās šīs darbgrāmatas darblapās.
4. Izveidojiet savas funkcijas "galvu" vai "prototipu"
Funkcijas prototipam jāatbilst šādai struktūrai:
publiskā funkcija "Funkcijas nosaukums" (parametrs1 Kā tips1, parametrs2 Kā tips2) Kā rezultāta veids.
Prototipiem var būt pēc iespējas vairāk funkciju, un to veidi var būt visi pamata datu tipi vai Excel objektu veidi diapazona formā. Jūs varat iedomāties parametrus kā “operatorus” (operatorus), uz kuriem funkcija darbosies. Piemēram, rakstot SIN (45), lai aprēķinātu 45 grādu sinusu, skaitlis 45 tiks ņemts par parametru. Pēc tam funkcijas kods izmantos šīs vērtības, lai veiktu aprēķinus un parādītu rezultātus.
5. solis. Pievienojiet funkcijas kodu, lai pārliecinātos, ka: 1) izmantojat parametra norādīto vērtību; 2) rezultātu nodot funkcijas nosaukumam; un 3) aizveriet funkciju ar teikumu "beigu funkcija". Mācīšanās programmēt VBA vai jebkurā citā valodā prasa daudz laika un detalizētus norādījumus. Par laimi, šīm funkcijām parasti ir mazi koda bloki, un tajās netiek daudz izmantotas programmēšanas valodas funkcijas. Šeit ir daži VBA valodas elementi, kurus var izmantot:
- Bloks If (ja), kas ļauj izpildīt koda daļu tikai tad, ja nosacījums ir izpildīts. Kā piemērs:
- . Jūs varat izlaist citu atslēgvārdu kopā ar koda otro daļu, jo tas nav obligāts.
- Bloks “Darīt (darīt)”, kas izpilda koda “Kamēr” vai “Daļa” laiku vai brīdi, kad nosacījums ir izpildīts. Kā piemērs:
- . Ņemiet vērā arī otro rindu, kas "deklarē" mainīgo. Kodam varat pievienot mainīgos, lai tos varētu izmantot vēlāk. Mainīgie lielumi kodā darbojas kā pagaidu vērtības. Visbeidzot, apsveriet funkciju deklarāciju kā BOOLEAN, kas ir datu veids, kas pieļauj tikai TRUE vai FALSE vērtības. Šī primāro skaitļu noteikšanas metode nebūt nav optimāla, taču kods ir uzrakstīts tā, lai to būtu viegli nolasīt.
- Blokam (līdz), kas izpilda noteiktu koda daudzumu. Kā piemērs:
- Pastāvīga vērtība, kas tiek ievadīta tieši šūnas formulā. Šajā gadījumā teksts (virkne) ir jānorāda.
- Šūnu atsauces, piemēram B6 vai diapazonā, piemēram A1: C3 (parametram jābūt datu tipam “Diapazons”)
-
Cita funkcija, kas ir iekļauta jūsu funkcijā (jūsu funkciju var iekļaut arī citā funkcijā), piemēram: = Faktoriāls (MAX (D6: D8))
7. solis. Pārliecinieties, vai rezultāti ir pareizi
Izmantojiet to vairākas reizes, lai pārliecinātos, ka funkcija spēj pareizi apstrādāt dažādas parametru vērtības:
Padomi
- Rakstot koda blokus vadības struktūrās, piemēram, If, For, Do utt., Noteikti atlaidiet (nedaudz ievietojiet kreiso rindas apmali iekšā) koda bloku, vairākas reizes nospiežot atstarpes taustiņu vai cilni. Tādējādi kods būs vieglāk saprotams, un kļūdas būs daudz vieglāk atrast. Turklāt funkcionalitātes pieaugums kļūst vieglāk izdarāms.
- Ja jūs nezināt, kā rakstīt funkciju kodu, izlasiet rakstu Kā uzrakstīt vienkāršu makro programmā Microsoft Excel.
- Dažreiz funkcijām nav vajadzīgi visi parametri, lai aprēķinātu rezultātu. Šādā gadījumā funkcijas galvenē pirms parametra nosaukuma varat izmantot atslēgvārdu Izvēles. Kodā varat izmantot funkciju IsMissing (parametra_nosaukums), lai noteiktu, vai parametram ir piešķirta vērtība.
- Izmantojiet neizmantotos nosaukumus kā funkcijas programmā Excel, lai neviena funkcija netiktu pārrakstīta un izdzēsta.
- Programmā Excel ir daudz iebūvētu funkciju, un lielāko daļu aprēķinu var veikt, izmantojot šīs iebūvētās funkcijas, atsevišķi vai visas uzreiz. Pirms sākat kodēšanu, noteikti apskatiet pieejamo funkciju sarakstu. Izpildi var veikt ātrāk, ja izmantojat iebūvētās funkcijas.
Brīdinājums
- Drošības apsvērumu dēļ daudzi cilvēki atspējo makro. Noteikti paziņojiet darbgrāmatas adresātiem, ka iesniegtajā darbgrāmatā ir makro un ka šie makro nekaitēs viņu datoriem.
- Šajā rakstā izmantotā funkcija nav labākais veids, kā atrisināt saistīto problēmu. Piemērs tiek izmantots, lai izskaidrotu valodas kontroles struktūru izmantošanu.
- VBA, tāpat kā citās valodās, ir vairākas citas vadības struktūras, izņemot Do, If un For. Šeit apskatītā struktūra apraksta tikai to, ko var darīt funkcijas avota kodā. Internetā ir daudz ceļvežu, kurus var izmantot, lai palīdzētu jums apgūt VBA.
Publisko funkciju kursa rezultāts (kā vesels skaitlis) kā virkne
Ja vērtība> = 5 Tad
Kursa rezultāti = "Pieņemts"
Citādi
Kursa rezultāti = "Noraidīts"
Beigas Ja
Beigu funkcija
Ievērojiet If koda bloka elementus:
IF nosacījums TAD kods CITS kods END IF
Public Function BilPrima (vērtība As Integer) Kā Būla
Dim i As Integer
i = 2
BilPrima = Taisnība
Vai
Ja vērtība / i = Int (vērtība / i) Tad
BilPrima = Nepareizi
Beigas Ja
i = i + 1
Cilpa Kamēr i <vērtība Un SkaitlisPrima = Patiesa
Beigu funkcija
Vēlreiz apskatiet elementus:
DO kodu LOOP WHILE/LĪDZ nosacījumam
Publiskās funkcijas faktors (vērtība kā vesels skaitlis) tik ilgi
Dim rezultāti tik ilgi
Dim i As Integer
Ja vērtība = 0 Tad
rezultāts = 1
CitādiJa vērtība = 1 Tad
rezultāts = 1
Citādi
rezultāts = 1
Par i = 1 Vērtībai
rezultāts = rezultāts * i
Nākamais
Beigas Ja
Faktoriāls = rezultāts
Beigu funkcija
Vēlreiz apskatiet elementus:
Mainīgajam = apakšējā robeža līdz koda NEXT augšējai robežai
. Ņemiet vērā arī papildu ElseIf elementu If paziņojumā, kas ļauj izpildāmajam kodam pievienot papildu opcijas. Visbeidzot, apsveriet funkciju “rezultāts” un mainīgo, kas deklarēts kā garš. Garais datu tips pieļauj daudz lielākas vērtības nekā vesels skaitlis.
Tālāk ir parādīts funkcijas kods, kas pārvērš mazus skaitļus vārdos.
6. solis. Atgriezieties darbgrāmatā un izmantojiet funkciju, ierakstot simbolu “vienāds” (=), kam seko šūnas nosaukums
Uzrakstiet sākuma kronšteinus (“(“) aiz funkcijas nosaukuma, izmantojot zīmi koma lai atdalītu parametrus, un beidzas ar aizvēršanas iekavām (“)”). Kā piemērs:
= NumberToLetter (A4)
. Varat arī izmantot mājās gatavotas formulas, meklējot tās kategorijās Lietotājs definēts opcijas Ievietot formulu iekšpusē. Jūs vienkārši noklikšķiniet uz pogas Fx pa kreisi no formulas joslas. Funkcijās ir trīs veidu parametru formas: