Kuidas kasutada funktsiooni Exceli LAMBDA -

Lang L: none (table-of-contents)

Kokkuvõte

Funktsioon Exceli LAMBDA loob võimaluse luua kohandatud funktsioone, mida saab kogu töövihikus uuesti kasutada, ilma VBA või makrodeta.

Eesmärk

Loo kohandatud funktsioon

Tagastusväärtus

Nagu on määratletud valemiga

Süntaks

= LAMBDA (parameeter,…, arvutus)

Argumendid

  • parameeter - funktsiooni sisendväärtus.
  • arvutus - funktsiooni tulemusena teostatav arvutus. Peab olema viimane argument.

Versioon

Excel 365

Kasutusjuhised

Arvutiprogrammides viitab LAMBDA anonüümsele funktsioonile või avaldisele. Anonüümne funktsioon on funktsioon, mis on määratletud ilma nimeta. Excelis pakub LAMBDA funktsioon viisi valemi funktsionaalsuse määratlemiseks ja kapseldamiseks, umbes nagu Exceli funktsioon. Kui see on määratletud, saab funktsiooni LAMBDA nimetada ja taaskasutada töövihikus. Teisisõnu, funktsioon LAMBDA on viis kohandatud funktsioonide loomiseks.

Kohandatud LAMBDA-funktsiooni üks peamisi eeliseid on see, et valemis sisalduv loogika eksisteerib ainult ühes kohas. See tähendab, et probleemide lahendamisel või funktsionaalsuse värskendamisel on värskendatav ainult üks koopia koodist ja muudatused levivad automaatselt töövihiku kõigis funktsiooni LAMBDA eksemplarides. Funktsioon LAMBDA ei vaja VBA-d ega makrosid.

Näide 1 | Näide 2 | Näide 3

Funktsiooni LAMBDA loomine

LAMBDA funktsioonid luuakse ja silutakse tavaliselt töölehe valemiribal, seejärel viiakse nad nimehaldurisse, et määrata nimi, mida saab kasutada töövihikus kõikjal.

Funktsioonil LAMBDA põhineva kohandatud valemi loomiseks ja kasutamiseks on neli peamist sammu:

  1. Kontrollige kasutatavat loogikat standardvalemiga
  2. Looge ja katsetage valemi üldist (nimetut) LAMBDA versiooni
  3. Nimetage ja määrake nimehalduriga LAMBDA valem
  4. Testige uut kohandatud funktsiooni määratletud nime abil

Allpool toodud näidetes käsitletakse neid samme üksikasjalikumalt.

Näide 1

Alustame LAMBDA toimimise illustreerimiseks väga lihtsa valemiga:

=x*y // multiple x and y

Excelis kasutaks see valem tavaliselt selliseid lahtriviiteid:

=B5*C5 // with cell references

Nagu näete, töötab valem hästi, nii et oleme valmis liikuma üldise LAMBDA valemi (nimetu versioon) loomise juurde. Kõigepealt tuleb arvestada sellega, kas valem nõuab sisendeid (parameetreid). Sellisel juhul on vastus "jah" - valem nõuab väärtust x ja y väärtust. Kui see on loodud, alustame funktsiooniga LAMBDA ja lisame kasutaja sisendiks vajalikud parameetrid:

=LAMBDA(x,y // begin with input parameters

Järgmisena peame lisama tegeliku arvutuse, x * y:

=LAMBDA(x,y,x*y)

Kui sisestate selles punktis valemi, saate #CALC! viga. See juhtub, kuna valemil pole sisendväärtusi, millega töötada, kuna lahtriviiteid enam pole. Valemi testimiseks peame kasutama sellist spetsiaalset süntaksit:

=LAMBDA(x,y,x*y)(B5,C5) // testing syntax

See süntaks, kus parameetrid esitatakse LAMBDA funktsiooni lõpus eraldi sulgudes, on ainulaadne LAMBDA funktsioonidele. See võimaldab valemit enne LAMBDA nimetamist testida otse töölehel. Alloleval ekraanil näete, et F5 üldine funktsioon LAMBDA tagastab täpselt sama tulemuse kui algne valem E5-s:

Nüüd oleme valmis nimetama funktsioonile LAMBDA koos nimehalduriga. Kõigepealt valige valem, * ei sisalda * testimisparameetreid lõpus. Seejärel avage otseteega Control + F3 nimehaldur ja klõpsake nuppu Uus.

Sisestage dialoogis Uus nimi nimi "XBYY", jätke ulatus töövihikule ja kleepige kopeeritud valem sisestuspiirkonda "Viitab".

Veenduge, et valem algab võrdusmärgiga (=). Nüüd, kui LAMBDA valemil on nimi, saab seda töövihikus kasutada nagu iga teist funktsiooni. Allpool oleval ekraanil on G5 valemi allpool kopeeritud:

Uus kohandatud funktsioon tagastab sama tulemuse kui ülejäänud kaks valemit.

Näide 2

Selles näites teisendame sfääri mahu arvutamiseks valemi kohandatud funktsiooniks LAMBDA. Üldine Exceli valem sfääri mahu arvutamiseks on:

=4/3*PI()*A1^3 // volume of sphere

kus A1 tähistab raadiust. Alloleval ekraanil kuvatakse see valem toimimises:

Pange tähele, et see valem nõuab helitugevuse arvutamiseks ainult ühte sisendit (raadiust), seega vajab meie funktsioon LAMBDA ainult ühte parameetrit (r), mis kuvatakse esimese argumendina. Siin on valem teisendatud LAMBDA-ks:

=LAMBDA(r,4/3*PI()*r^3) // generic lambda

Töölehel olles oleme algse valemi asendanud üldise LAMBDA versiooniga. Pange tähele, et kasutame testimise süntaksit, mis võimaldab meil raadiuse jaoks ühendada B5:

Üldise LAMBDA valemi tulemused on täpselt samad, mis algsel valemil, nii et järgmine samm on selle LAMBDA valemi määratlemine ja nimetuse nimehalduriga nimetamine, nagu eespool selgitatud. LAMBDA funktsiooni jaoks kasutatav nimi võib olla mis tahes kehtiv Exceli nimi. Sellisel juhul nimetame valemi "SphereVolume".

Töölehel oleme tagasi asendanud üldise (nimetu) LAMBDA valemi nimelise LAMBDA versiooniga ja sisestanud r5 väärtuseks B5. Pange tähele, et kohandatud funktsiooni SphereVolume tagastatud tulemused on täpselt samad kui eelmised tulemused.

Näide 3

Selles näites loome sõnade loendamiseks funktsiooni LAMBDA. Excelis pole selleks otstarbeks funktsiooni, kuid saate sõnu loendada lahtriga kohandatud valemiga, mis põhineb funktsioonidel LEN ja SUBSTITUTE järgmiselt:

=LEN(TRIM(A1))-LEN(SUBSTITUTE(A1," ",""))+1

Täpsemat selgitust saate lugeda siit. Töölehel on järgmine valem:

Pange tähele, et kui valemile antakse tühi lahter (B10), saame vale arvu 1. Me käsitleme seda probleemi allpool.

See valem nõuab ainult ühte sisendit, mis on sõnu sisaldav tekst. Funktsioonis LAMBDA nimetame seda argumenti tekstiks. Siin on valem teisendatud LAMBDA-ks:

=LAMBDA(text,LEN(TRIM(text))-LEN(SUBSTITUTE(text," ",""))+1)

Esimese argumendina kuvatakse teade "tekst" ja arvutus on teine ​​ja viimane argument. Alloleval ekraanil oleme asendanud algse valemi üldise LAMBDA versiooniga. Pange tähele, et kasutame testimise süntaksit, mis võimaldab meil teksti B5 ühendada:

=LAMBDA(text,LEN(TRIM(text))-LEN(SUBSTITUTE(text," ",""))+1)(B5)

Üldise LAMBDA valemi tulemused on samad mis algsel valemil, nii et järgmine samm on selle LAMBDA valemi määratlemine ja nimehaldamine nimehalduriga, nagu eelnevalt selgitatud. Nimetame selle valemi nimeks "CountWords".

Allpool oleme asendanud üldise (nimetu) LAMBDA valemi nimelise LAMBDA versiooniga ja sisestanud teksti B5. Pange tähele, et saame täpselt samad tulemused.

Nimehalduris CountWordsi määratlemiseks kasutatud valem on sama, mis ülal, ilma testimissüntaksita:

=LAMBDA(text,LEN(TRIM(text))-LEN(SUBSTITUTE(text," ",""))+1)

Tühja lahtri probleemi lahendamine

Nagu eespool mainitud, tagastab ülaltoodud valem vale arvu 1, kui lahter on tühi. Selle probleemi saab lahendada, asendades +1 alloleva koodiga:

=LEN(TRIM(B5))-LEN(SUBSTITUTE(B5," ",""))+(LEN(TRIM(B5))>0)

Täielik selgitus siin. Olemasoleva nimelise LAMDA valemi värskendamiseks peame jällegi kasutama nimehaldurit:

  1. Avage nimehaldur
  2. Valige nimi "CountWords" ja klõpsake nuppu "Muuda"
  3. Asendage kood "Viitab" selle valemiga:

=LAMBDA(text,LEN(TRIM(text))-LEN(SUBSTITUTE(text," ",""))+(LEN(TRIM(text))>0))

Kui nimehaldur on suletud, töötab CountWords tühjadel lahtritel õigesti, nagu allpool näha:

Märkus. Nimehalduris koodi üks kord värskendades värskendatakse kõiki CountWordsi valemi eksemplare korraga. See on LAMBDA-valemiga loodud kohandatud funktsioonide peamine eelis - vormeli värskendusi saab hallata ühes kohas.

Huvitavad Artiklid...