Kaip sukurti vartotojo nustatytas funkcijas „Microsoft Excel“

Turinys:

Kaip sukurti vartotojo nustatytas funkcijas „Microsoft Excel“
Kaip sukurti vartotojo nustatytas funkcijas „Microsoft Excel“

Video: Kaip sukurti vartotojo nustatytas funkcijas „Microsoft Excel“

Video: Kaip sukurti vartotojo nustatytas funkcijas „Microsoft Excel“
Video: Anantara das 2017.02.11 Kaip rasti antrą pusę, kaip tapti laimingu? 2024, Lapkritis
Anonim

Nors „Excel“jau turi šimtus integruotų funkcijų, tokių kaip SUM, VLOOKUP, LEFT ir pan., Turimų integruotų funkcijų paprastai nepakanka gana sudėtingoms užduotims atlikti. Tačiau nesijaudinkite, nes reikia tik patiems susikurti reikiamas funkcijas.

Žingsnis

Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“1 veiksmas
Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“1 veiksmas

Žingsnis 1. Sukurkite naują darbaknygę arba atidarykite darbaknygę, kurią norite apdoroti naudotojo nustatytomis funkcijomis (UDF)

Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“2 veiksme
Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“2 veiksme

2 veiksmas. Atidarykite „Visual Basic“redaktorių „Microsoft Excel“naudodami Įrankiai-> Makrokomandos-> Visual Basic redaktorius (arba paspauskite spartųjį klavišą Alt+F11)

Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“3 veiksme
Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“3 veiksme

Žingsnis 3. Norėdami pridėti naują modulį prie savo darbalapio, spustelėkite mygtuką Modulis

Galite sukurti UDF darbaknygėje nepridėję naujo modulio, tačiau ši funkcija neveiks kituose tos pačios darbaknygės darbalapiuose.

Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“4 veiksme
Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“4 veiksme

Žingsnis 4. Sukurkite savo funkcijos „galvą“arba „prototipą“

Funkcijos prototipas turi atitikti šią struktūrą:

viešoji funkcija „Funkcijos pavadinimas“(parametras1 Kaip tipas1, parametras2 Kaip tipas2) Kaip rezultato tipas.

Prototipai gali turėti kuo daugiau funkcijų, o jų tipai gali būti visi pagrindiniai duomenų tipai arba „Excel“objektų tipai diapazono pavidalu. Galite galvoti apie parametrus kaip „operantus“(operatorius), kuriuos funkcija veiks. Pavyzdžiui, kai rašote SIN (45), kad apskaičiuotumėte 45 laipsnių sinusą, skaičius 45 bus laikomas parametru. Tada funkcijos kodas šias vertes naudos skaičiavimams atlikti ir rezultatams rodyti.

Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“5 veiksme
Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“5 veiksme

5 veiksmas. Pridėkite funkcijos kodą, kad įsitikintumėte, jog: 1) naudojate parametro nurodytą reikšmę; 2) perduoti rezultatą funkcijos pavadinimui; ir 3) uždarykite funkciją sakiniu „pabaigos funkcija“. Mokantis programuoti VBA ar bet kuria kita kalba reikia daug laiko ir išsamių nurodymų. Laimei, šios funkcijos paprastai turi mažus kodo blokus ir daug nenaudoja programavimo kalbos funkcijų. Štai keletas VBA kalbos elementų, kuriuos galima naudoti:

  1. „If“(jei) blokas, leidžiantis vykdyti kodo dalį tik tuo atveju, jei sąlyga įvykdyta. Pavyzdžiui:
  2. Viešųjų funkcijų kurso rezultatas (kaip sveikasis skaičius) kaip eilutė

    Jei vertė> = 5 Tada

    Kurso rezultatai = "Priimta"

    Kitas

    Kurso rezultatai = "Atmesta"

    Pabaiga Jei

    Pabaigos funkcija

    Atkreipkite dėmesį į „If“kodo bloko elementus:

    IF sąlyga THEN kodas KITAS kodas END IF

  3. . Galite palikti raktinį žodį „Else“kartu su antrąja kodo dalimi, nes tai neprivaloma.
  4. Blokas „Daryti (daryti)“, kuris įvykdo dalį „Iki“arba „Iki“kodo, kai arba kol įvykdoma sąlyga. Pavyzdžiui:
  5. Viešoji funkcija BilPrima (vertė kaip sveikasis skaičius) kaip loginis

    Dim i As Integer

    i = 2

    BilPrima = Tiesa

    Daryk

    Jei reikšmė / i = Int (vertė / i) Tada

    BilPrima = Netiesa

    Pabaiga Jei

    i = i + 1

    Ciklas Nors i <vertė Ir skaičiusPrima = tiesa

    Pabaigos funkcija

    Dar kartą pažiūrėkite į elementus:

    DO kodas LOOP WHILE/UNTIL sąlyga

  6. . Taip pat atkreipkite dėmesį į antrąją eilutę, kuri „deklaruoja“kintamąjį. Prie kodo galite pridėti kintamųjų, kad vėliau galėtumėte juos naudoti. Kintamieji veikia kaip laikinos kodo vertės. Galiausiai, funkcijų deklaraciją laikykite BOOLEAN, tai yra duomenų tipas, leidžiantis naudoti tik TRUE arba FALSE reikšmes. Šis pirminių skaičių nustatymo metodas toli gražu nėra optimalus, tačiau kodas buvo parašytas taip, kad jį būtų lengva perskaityti.
  7. Dėl bloko (į), kuris vykdo tam tikrą kodo kiekį. Pavyzdžiui:
  8. Viešųjų funkcijų faktorius (vertė kaip sveikasis skaičius)

    Neryškūs rezultatai kaip ilgai

    Dim i As Integer

    Jei reikšmė = 0 Tada

    rezultatas = 1

    ElseIf vertė = 1 Tada

    rezultatas = 1

    Kitas

    rezultatas = 1

    Jei i = 1 Į vertę

    rezultatas = rezultatas * t

    Kitas

    Pabaiga Jei

    Faktorinis = rezultatas

    Pabaigos funkcija

    Dar kartą pažiūrėkite į elementus:

    Kintamajam = apatinė riba iki viršutinės kodo KITA ribos

    . Taip pat atkreipkite dėmesį į papildomą „ElseIf“elementą sakinyje „If“, kuris leidžia pridėti daugiau parinkčių prie vykdomo kodo. Galiausiai apsvarstykite „rezultato“funkciją ir kintamąjį, paskelbtą ilgu. Ilgas duomenų tipas leidžia daug didesnes reikšmes nei sveikasis skaičius.

    Žemiau parodytas funkcijos, konvertuojančios mažus skaičius į žodžius, kodas.

    Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“6 veiksme
    Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“6 veiksme

    Žingsnis 6. Grįžkite į darbaknygę ir naudokite šią funkciją parašę simbolį „lygus“(=), po kurio langelyje nurodomas funkcijos pavadinimas

    Naudodamiesi ženklu, po funkcijos pavadinimo parašykite atidarymo skliaustus („(“)) koma atskirti parametrus ir baigti uždarymo skliausteliais („)“). Pavyzdžiui:

    = NumberToLetter (A4)

    . Taip pat galite naudoti namines formules ieškodami jų kategorijose Naudotojo apibrėžta parinkties Įterpti formulę viduje. Jūs tiesiog spustelėkite mygtuką Fx į kairę nuo formulės juostos. Funkcijose yra trijų tipų parametrų formos:

    1. Pastovi vertė, įvedama tiesiai į langelio formulę. Tokiu atveju tekstas (eilutė) turi būti cituojamas.
    2. Ląstelių nuorodos, pavyzdžiui B6 arba diapazonas kaip A1: C3 (parametras turi būti duomenų tipas „Diapazonas“)
    3. Kita funkcija, įtraukta į jūsų funkciją (jūsų funkcija taip pat gali būti įtraukta į kitą funkciją), pavyzdžiui: = Faktorinis (MAX (D6: D8))

      Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“7 veiksme
      Sukurkite vartotojo apibrėžtą funkciją „Microsoft Excel“7 veiksme

      Žingsnis 7. Įsitikinkite, kad rezultatai teisingi

      Naudokite jį kelis kartus, kad įsitikintumėte, jog funkcija gali tinkamai valdyti įvairias parametrų reikšmes:

      Patarimai

      • Rašydami kodo blokus valdymo struktūrose, tokiose kaip „If“, „For“, „Do“ir pan., Būtinai įtraukite kodą (šiek tiek įterpkite kairės eilutės kraštą į vidų), kelis kartus paspausdami tarpo klavišą arba skirtuką. Taip kodą bus lengviau suprasti, o klaidas bus daug lengviau rasti. Be to, lengviau padidinti funkcionalumą.
      • Jei nežinote, kaip rašyti funkcijų kodą, skaitykite straipsnį Kaip parašyti paprastą makrokomandą „Microsoft Excel“.
      • Kartais funkcijoms nereikia visų parametrų, kad būtų galima apskaičiuoti rezultatą. Tokiu atveju funkcijos antraštėje prieš parametro pavadinimą galite naudoti pasirinktinį raktinį žodį. Galite naudoti savo kodo funkciją „IsMissing“(parametro_pavadinimas), kad nustatytumėte, ar parametrui priskirta vertė, ar ne.
      • Naudokite nepanaudotus pavadinimus kaip „Excel“funkcijas, kad jokios funkcijos nebūtų perrašytos ir ištrintos.
      • „Excel“turi daug integruotų funkcijų ir daugumą skaičiavimų galima atlikti naudojant šias integruotas funkcijas atskirai arba visas iš karto. Prieš pradėdami patys koduoti, būtinai peržiūrėkite galimų funkcijų sąrašą. Vykdymą galima atlikti greičiau, jei naudojate integruotas funkcijas.

      Įspėjimas

      • Saugumo sumetimais daugelis žmonių išjungia makrokomandas. Būtinai praneškite savo darbaknygės gavėjams, kad pateiktoje darbaknygėje yra makrokomandų ir kad šios makrokomandos nepakenks jų kompiuteriams.
      • Šiame straipsnyje naudojama funkcija nėra geriausias būdas išspręsti susijusią problemą. Pavyzdys naudojamas paaiškinti kalbos valdymo struktūrų naudojimą.
      • VBA, kaip ir kitos kalbos, turi keletą kitų valdymo struktūrų, išskyrus „Do“, „If“ir „For“. Čia aptartoje struktūroje aprašoma tik tai, ką galima padaryti funkcijos šaltinio kode. Internete yra daug vadovų, kurie gali padėti jums išmokti VBA.

Rekomenduojamas: