Edukien taula
Gaur Excel funtzio pertsonalizatuak aztertzen jarraituko dugu. Dagoeneko UDFak sortzen dakizunez (eta, espero dut, zure Excel-en aplikatzen ere saiatu zarela), sakondu dezagun eta ikas dezagun Excel-en erabiltzaileak definitutako funtzioak nola erabiltzen eta gordetzen.
Gainera, zure funtzioak Excel gehigarri fitxategi batean erraz nola gorde erakutsiko dizugu, geroago erabiltzeko klik gutxi batzuetan.
Beraz, hona hemen zertaz hitz egingo dugun:
UDF Excel-en erabiltzeko modu desberdinak
UDFak lan-orrietan erabiltzea
Zure UDFak behar bezala funtzionatzen duela egiaztatu ondoren, Excel-en erabil ditzakezu formulak edo VBA kodean.
Excel lan-liburu batean funtzio pertsonalizatuak aplika ditzakezu funtzio arruntak erabiltzen dituzun moduan. Adibidez, idatzi gelaxka batean beheko formula:
= GetMaxBetween(A1:A6,10,50)
UDF funtzio arruntekin batera erabil daiteke. Adibidez, gehitu testua kalkulatutako balio maximoari:
= CONCATENATE("Maximum value between 10 and 50 is ", GetMaxBetween(A1: A6,10,50))
Emaitza beheko pantaila-argazkian ikus dezakezu:
Zuk gehienezkoa den eta 10 eta 50 arteko tartean dagoen zenbakia aurki dezake.
Egiazta dezagun beste formula bat:
= INDEX(A2:A9, MATCH(GetMaxBetween(B2:B9, F1, F2), B2:B9,0)), the
Funtzio pertsonalizatua GetMaxBetween B2:B9 barrutia egiaztatzen du eta 10 eta 50 arteko gehienezko kopurua aurkitzen du. Ondoren, INDEX + MATCH erabiliz, balio maximo honekin bat datorren produktuaren izena lortuko dugu:
Ikus dezakezunez, funtzio pertsonalizatuen erabilera ez da Excel arruntaren oso desberdinafuntzioak.
Hau egiterakoan, gogoratu erabiltzaileak definitutako funtzio batek balio bat soilik itzul dezakeela, baina ezin duela beste ekintzarik egin. Irakurri gehiago erabiltzaileak definitutako funtzioen murrizketei buruz.
UDF erabiltzea VBA prozedura eta funtzioetan
UDFak VBA makroetan ere erabil daitezke. Jarraian, 10etik 50era bitarteko baliorik handiena bilatzen duen makro-kodea ikus dezakezu gelaxka aktiboa duen zutabean.
Sub MacroWithUDF() Dim Rng As Range, maxcase, i As Long With ActiveSheet.Range( Gelaxkak (ActiveCell.CurrentRegion.Row, ActiveCell.Column), Cells (ActiveCell.CurrentRegion.Rows.Count _ + ActiveCell.CurrentRegion.Row - 1, ActiveCell.Column)) maxcase = GetMaxBetween(.Cells, 10, 50) Aplikazioa.Match(maxcase, .Cells, 0) .Cells(i).Interior.Color = vbRed End With End SubMakro-kodeak funtzio pertsonalizatua dauka
GetMaxBetween(.Cells, 10, 50)
It zutabe aktiboan gehienezko balioa aurkitzen du. Balio hori nabarmenduko da orduan. Makroaren emaitza beheko pantaila-argazkian ikus dezakezu.
Funtzio pertsonalizatu bat beste funtzio pertsonalizatu baten barruan ere erabil daiteke. Lehenago gure blogean, zenbaki bat testu bihurtzeko arazoa aztertu dugu SpellNumber izeneko funtzio pertsonalizatua erabiliz.
Bere laguntzarekin, barrutitik gehienezko balioa lor dezakegu eta berehala. idatzi testu gisa.
Horretarako, funtzio pertsonalizatu berri bat sortuko dugu eta bertan funtzioak erabiliko ditugu.Dagoeneko ezagunak zaizkigun GetMaxBetween eta SpellNumber .
Funtzioa SpellGetMaxBetween(rngCells As Range, MinNum, MaxNum) SpellGetMaxBetween = SpellNumber (GetMaxBetween (rngCells, MinNum))) FuntzioaIkus dezakezun bezala, GetMaxBetween funtzioa beste funtzio pertsonalizatu baten argumentua da, SpellNumber . Balio maximoa definitzen du, lehenago askotan egin dugun bezala. Zenbaki hau testu bihurtzen da.
Goiko pantaila-argazkian, SpellGetMaxBetween funtzioak 100 eta 500 arteko gehienezko zenbakia nola aurkitzen duen ikus dezakezu eta gero testu bihurtzen du.
Beste lan-liburuetatik UDF deitzea
Zure lan-liburuan UDF sortu baduzu, horrek, zoritxarrez, ez du esan nahi inolako arazorik izango ez duzunik.
Nire esperientziaren arabera, erabiltzaile gehienek goiz edo beranduago makro eta funtzio pertsonalizatuen bilduma pertsonala sortzen dute prozesu eta kalkulu indibidualak automatizatzeko. Eta hemen arazoa sortzen da: erabiltzaileak Visual Basic-en definitutako funtzioen kodea nonbait gorde behar da gero lanean erabiltzeko.
Funtzio pertsonalizatua aplikatzeko, gorde duzun lan-liburua irekita egon behar da. zure Excel-en. Hala ez bada, #IZENA lortuko duzu! errorea erabiltzen saiatzean. Errore honek adierazten du Excel-ek ez duela ezagutzen formulan erabili nahi duzun funtzioaren izena.
Ikus ditzagun moduak.Sortzen dituzun funtzio pertsonalizatuak erabil ditzakezu.
Metodoa 1. Gehitu lan-liburuaren izena funtzioari
Zuzen lan-liburuaren izena zehaztu dezakezu izenaren aurretik. funtzioa. Adibidez, GetMaxBetween() funtzio pertsonalizatu bat gorde baduzu My_Functions.xlsm izeneko lan-liburuan, orduan formula hau idatzi behar duzu:
= My_Functions.xlsm!GetMaxBetween(A1:A6,10,50)
2. metodoa. Gorde UDF guztiak fitxategi komun batean
Gorde funtzio pertsonalizatu guztiak lan-liburu berezi batean (adibidez, My_Functions.xlsm ) eta kopiatu nahi duzun funtzioa bertatik. uneko lan-koadernoa, beharrezkoa bada.
Funtzio pertsonalizatu berri bat sortzen duzun bakoitzean, haren kodea bikoiztu behar duzu erabiliko duzun lan-liburuan. Metodo honekin, hainbat eragozpen sor daitezke:
- Lan-fitxategi asko badaude, eta funtzioa nonahi behar bada, orduan kodea kopiatu beharko da liburu bakoitzean.
- Gogoratu lan-liburua makro-gaitutako formatuan gorde behar duzula (.xlsm edo .xlsb).
- Fitxategi hori irekitzean, makroen aurkako babesak abisu bat bistaratuko du aldi bakoitzean, eta hori berretsi behar da. Erabiltzaile asko beldurtu egiten dira makroak gaitzeko eskatzen dien barra horia abisu bat ikusten dutenean. Mezu hau ez ikusteko, Excel babesa guztiz desgaitu behar duzu. Hala ere, agian ez da beti zuzena eta segurua izango.
Uste dut ados egongo zarela nirekin denbora guztian bat irekitzearekin.fitxategia eta hortik erabiltzaileak definitutako funtzioen kodea kopiatzea edo fitxategi honen izena formula batean idaztea ez da irtenbiderik onena. horrela, hirugarren bidera iritsi ginen.
3. metodoa. Sortu Excel gehigarri fitxategi bat
Uste dut modurik onena maiz erabiltzen diren funtzio pertsonalizatuak Excel gehigarri fitxategi batean gordetzea dela. . Gehigarria erabiltzearen abantailak:
- Gehigarria Excel-era behin bakarrik konektatu behar duzu. Horren ondoren, bere prozedurak eta funtzioak ordenagailu honetako edozein fitxategitan erabil ditzakezu. Ez duzu zure lan-liburuak .xlsm eta .xlsb formatuetan gorde behar, iturburu-kodea ez baita horietan gordeko gehigarriko fitxategian baizik.
- Ez zaitu gehiago makroen babesarekin trabatuko. gehigarriek iturri fidagarriei egiten diete erreferentzia beti.
- Gehigarri bat fitxategi bereizia da. Erraza da ordenagailutik ordenagailura transferitzea, lankideekin partekatzeko.
Geroago hitz egingo dugu gehigarri bat sortzeari eta erabiltzeari buruz.
Gehigarriak erabiltzeari buruz. ins funtzio pertsonalizatuak gordetzeko
Nola sortzen dut nire gehigarria? Goazen prozesu hau urratsez urrats.
1. urratsa. Sortu gehigarri fitxategia
Ireki Microsoft Excel, sortu lan-liburu berri bat eta gorde ezazu edozein izen egokipean (adibidez, My_Functions) gehigarri formatuan. Horretarako, erabili menua Fitxategia - Gorde honela edo F12 tekla. Ziurtatu fitxategi mota Excel gehigarria zehazten duzula:
Zure gehigarriak .xlam luzapena izango du.
Aholkua. Kontuan izanlehenespenez, Excel-ek gehigarriak C:\Users\[Your_Name]\AppData\Roaming\Microsoft\AddIns karpetan gordetzen ditu. Kokapen lehenetsia onartzea gomendatzen dut. Nahi baduzu, beste edozein karpeta zehaztu dezakezu. Baina gero, gehigarria konektatzean, bere kokapen berria eskuz bilatu eta zehaztu beharko duzu. Karpeta lehenetsian gordetzen baduzu, ez duzu gehigarria zure ordenagailuan bilatu beharrik. Excel-ek automatikoki zerrendatuko du.
2. urratsa. Konektatu gehigarriaren fitxategia
Orain sortu dugun gehigarria Excel-era konektatu behar da. Ondoren, automatikoki kargatuko da programa hasten denean. Horretarako, erabili menua Fitxategia - Aukerak - Gehigarriak . Ziurtatu Excel gehigarriak hautatuta dagoela Kudeatu eremuan. Egin klik leihoaren behealdean dagoen Joan botoian. Agertzen den leihoan, markatu gure My_Functions gehigarria. Zerrendan ikusten ez baduzu, egin klik Arakatu botoian eta arakatu gehigarri-fitxategiaren kokapena.
Badazu. funtzio pertsonalizatuak gordetzeko gehigarri bat erabiltzen ari dira, jarraitu beharreko arau sinple bat dago. Lan-liburua beste pertsona bati transferitzen ari bazara, ziurtatu nahi dituzun funtzionalitateak dituen gehigarriaren kopia bat ere transferitzen duzula. Orain egin duzun modu berean konektatu beharko lukete.
3. urratsa. Gehitu funtzio pertsonalizatuak eta makroak gehigarrian
Gure gehigarria Excel-era konektatuta dago, baina ez du. ez dauka inolako funtzionalitaterikoraindik. UDF berriak gehitzeko, ireki Visual Basic editorea Alt + F11 sakatuz. Ondoren, VBA kodearekin modulu berriak gehi ditzakezu nire Sortu UDFak tutorialean azaltzen den moduan.
Hautatu zure gehigarri fitxategia ( My_Finctions.xlam ) hemen. VBAProject leihoa. Erabili Txertatu - Modulua menua modulu pertsonalizatu bat gehitzeko. Funtzio pertsonalizatuak idatzi behar dituzu bertan.
Erabiltzaileak definitutako funtzio baten kodea eskuz idatzi dezakezu edo nonbaitetik kopiatu.
Hori da guztia. Orain zure gehigarria sortu duzu, Excel-en gehitu eta bertan UDF erabil dezakezu. UDF gehiago erabili nahi badituzu, idatzi kodea VBA editoreko gehigarri-moduluan eta gorde.
Hori da gaurkoa. Erabiltzaileak definitutako funtzioak zure lan-koadernoan nola erabiltzen ikasi dugu. Benetan espero dugu jarraibide hauek lagungarriak izatea. Galderarik baduzu, idatzi artikulu honetako iruzkinetan.