අන්තර්ගත වගුව
අද අපි අභිරුචි Excel කාර්යයන් ගවේෂණය කිරීම දිගටම කරගෙන යන්නෙමු. UDF නිර්මාණය කරන ආකාරය ඔබ දැනටමත් දන්නා පරිදි (සහ, ඔබ ඒවා ඔබේ Excel තුළ යෙදීමට උත්සාහ කර ඇති බව මම බලාපොරොත්තු වෙමි), අපි ටිකක් ගැඹුරට හාරා Excel හි පරිශීලක-නිර්වචනය කළ කාර්යයන් භාවිතා කරන සහ ගබඩා කරන ආකාරය ඉගෙන ගනිමු.
එපමනක් නොව, අපි ක්ලික් කිරීම් කිහිපයකින් පසුව භාවිතා කිරීම සඳහා Excel ඇඩෝන ගොනුවක ඔබගේ කාර්යයන් පහසුවෙන් සුරැකිය හැකි ආකාරය අපි ඔබට පෙන්වන්නෙමු.
ඉතින්, මෙන්න අපි කතා කරන්න යන්නේ:
Excel හි UDF භාවිත කිරීමේ විවිධ ක්රම
වැඩපත්රවල UDF භාවිත කිරීම
ඔබේ UDF නිවැරදිව ක්රියාකරන බව ඔබ තහවුරු කරගත් පසු, ඔබට ඒවා Excel හි භාවිත කළ හැක. සූත්ර හෝ VBA කේතයෙන්.
ඔබට සාමාන්ය කාර්යයන් භාවිතා කරන ආකාරයටම Excel වැඩපොතක අභිරුචි ශ්රිත යෙදිය හැක. උදාහරණයක් ලෙස, පහත සූත්රය කොටුවක ලියන්න:
= GetMaxBetween(A1:A6,10,50)
UDF නිත්ය ශ්රිත සමඟ ඒකාබද්ධව භාවිතා කළ හැක. උදාහරණයක් ලෙස, ගණනය කළ උපරිම අගයට පෙළ එක් කරන්න:
= CONCATENATE("Maximum value between 10 and 50 is ", GetMaxBetween(A1: A6,10,50))
ඔබට ප්රතිඵලය පහත තිර රුවෙහි දැකිය හැක:
ඔබ උපරිම සහ 10 සිට 50 දක්වා පරාසයක ඇති අංකය සොයාගත හැක.
වෙනත් සූත්රයක් පරීක්ෂා කරමු:
= INDEX(A2:A9, MATCH(GetMaxBetween(B2:B9, F1, F2), B2:B9,0)), the
අභිරුචි ශ්රිතය GetMaxBetween B2:B9 පරාසය පරීක්ෂා කර 10 සහ 50 අතර උපරිම සංඛ්යාව සොයා ගනී. ඉන්පසු, INDEX + MATCH භාවිතයෙන්, මෙම උපරිම අගයට ගැළපෙන නිෂ්පාදන නාමය අපට ලැබේ:
ඔබට පෙනෙන පරිදි, අභිරුචි කාර්යයන් භාවිතය සාමාන්ය Excel වලට වඩා වෙනස් නොවේfunctions.
මෙය කරන විට, පරිශීලක-නිර්වචනය කළ ශ්රිතයකට අගයක් පමණක් ආපසු ලබා දිය හැකි නමුත් වෙනත් ක්රියා සිදු කළ නොහැකි බව මතක තබා ගන්න. පරිශීලක-නිර්වචනය කරන ලද ශ්රිතවල සීමා කිරීම් පිළිබඳ වැඩිදුර කියවන්න.
VBA ක්රියා පටිපාටි සහ ශ්රිතවල UDF භාවිතා කිරීම
UDFs VBA macros තුළද භාවිතා කළ හැක. සක්රීය සෛලය අඩංගු තීරුවේ 10 සිට 50 දක්වා පරාසයේ උපරිම අගය සොයන මැක්රෝ කේතය ඔබට පහතින් දැකිය හැක.
Sub MacroWithUDF() Dim Rng As Range, maxcase, i As Long With ActiveSheet.Range( Cells(ActiveCell.CurrentRegion.Row, ActiveCell.Column), Cells(ActiveCell.CurrentRegion.Rows.Count _ + ActiveCell.CurrentRegion.Row - 1, ActiveCell.Column)) maxcase = GetMaxBetween,0) i) 1C,0. Application.Match(maxcase, .Cells, 0) .Cells(i).Interior.Color = vbRed End With End Subමැක්රෝ කේතයේ අභිරුචි ශ්රිතය අඩංගු වේ
GetMaxBetween(.Cells, 10, 50)
එය ක්රියාකාරී තීරුවේ උපරිම අගය සොයා ගනී. එවිට මෙම අගය ඉස්මතු වනු ඇත. ඔබට පහත තිර රුවක් තුළ මැක්රෝවේ ප්රතිඵලය දැකිය හැක.
අභිරුචි ශ්රිතයක් වෙනත් අභිරුචි ශ්රිතයක් තුළද භාවිතා කළ හැක. පෙර අපගේ බ්ලොග් අඩවියේ, අපි SpellNumber නම් අභිරුචි ශ්රිතය භාවිතයෙන් අංකයක් පෙළ බවට පරිවර්තනය කිරීමේ ගැටලුව දෙස බැලුවෙමු.
එහි උපකාරයෙන්, අපට පරාසයෙන් උපරිම අගය ලබා ගත හැක. එය පෙළ ලෙස ලියන්න.
මෙය සිදු කිරීම සඳහා, අපි නව අභිරුචි ශ්රිතයක් සාදනු ලබන අතර එහිදී අපි ශ්රිත භාවිතා කරමු. GetMaxBetween සහ SpellNumber ඒවා දැනටමත් අපට හුරුපුරුදුය.
කාර්යය SpellGetMaxBetween(rngCells පරාසය ලෙස, MinNum, MaxNum) SpellGetMaxBetween = SpellNumber(GetMaxBetsween, (MrangNumber, MaxN) ශ්රිතයඔබට පෙනෙන පරිදි, GetMaxBetween ශ්රිතය වෙනත් අභිරුචි ශ්රිතයකට තර්කයකි, SpellNumber . අප මීට පෙර බොහෝ වාරයක් කර ඇති පරිදි එය උපරිම අගය නිර්වචනය කරයි. මෙම අංකය පසුව පෙළ බවට පරිවර්තනය වේ.
ඉහත තිර රුවෙහි, SpellGetMaxBetween ශ්රිතය 100 සහ 500 අතර උපරිම සංඛ්යාව සොයා ගන්නා ආකාරය සහ පසුව එය පෙළ බවට පරිවර්තනය කරයි.
වෙනත් වැඩපොත් වලින් UDF ඇමතීම
ඔබ ඔබේ වැඩපොතේ UDF නිර්මාණය කර ඇත්නම්, අවාසනාවකට මෙන්, ඔබ කිසිඳු ගැටලුවකට මුහුණ නොදෙන බව මෙයින් අදහස් නොවේ.
මගේ අත්දැකීම අනුව, බොහෝ පරිශීලකයින් ඉක්මනින් හෝ පසුව තනි ක්රියාවලීන් සහ ගණනය කිරීම් ස්වයංක්රීය කිරීම සඳහා ඔවුන්ගේ පුද්ගලික මැක්රෝ සහ අභිරුචි ශ්රිත එකතුවක් නිර්මාණය කරයි. තවද මෙහිදී ගැටළුව පැන නගී - විෂුවල් බේසික් හි පරිශීලක නිර්වචනය කරන ලද ශ්රිතවල කේතය පසුව වැඩ කිරීමේදී භාවිතා කිරීම සඳහා කොතැනක හෝ ගබඩා කර තැබිය යුතුය.
අභිරුචි ශ්රිතය යෙදීමට, ඔබ එය සුරැකි වැඩපොත විවෘතව තිබිය යුතුය. ඔබගේ Excel හි. එය එසේ නොවේ නම්, ඔබට #NAME ලැබෙනු ඇත! එය භාවිතා කිරීමට උත්සාහ කිරීමේදී දෝෂයකි. මෙම දෝෂය පෙන්නුම් කරන්නේ Excel විසින් ඔබට සූත්රයේ භාවිතා කිරීමට අවශ්ය ශ්රිතයේ නම නොදන්නා බවයි.
අපි එහි ඇති ක්රම දෙස බලමු.ඔබට ඔබ විසින් සාදන ලද අභිරුචි ශ්රිත භාවිතා කළ හැක.
ක්රමය 1. ශ්රිතයට වැඩපොත නම එක් කරන්න
ඔබට එහි නමට පෙර එය පිහිටා ඇති වැඩපොතේ නම සඳහන් කළ හැක. කාර්යය. උදාහරණයක් ලෙස, ඔබ My_Functions.xlsm නම් වැඩපොතක GetMaxBetween() අභිරුචි ශ්රිතයක් සුරැකුවේ නම්, ඔබ පහත සූත්රය ඇතුළත් කළ යුතුය:
= My_Functions.xlsm!GetMaxBetween(A1:A6,10,50)
ක්රමය 2. සියලුම UDF එක පොදු ගොනුවක ගබඩා කරන්න
සියලු අභිරුචි කාර්යයන් එක් විශේෂ වැඩපොතක සුරකින්න (උදාහරණයක් ලෙස, My_Functions.xlsm ) සහ එයින් අපේක්ෂිත ශ්රිතය පිටපත් කරන්න අවශ්ය නම් වත්මන් වැඩපොත.
ඔබ නව අභිරුචි ශ්රිතයක් සාදන සෑම අවස්ථාවකම, ඔබ එය භාවිතා කරන වැඩපොතෙහි එහි කේතය අනුපිටපත් කිරීමට අවශ්ය වේ. මෙම ක්රමය සමඟින්, අපහසුතාවයන් කිහිපයක් මතු විය හැකිය:
- වැඩ කරන ගොනු විශාල ප්රමාණයක් තිබේ නම්, සහ කාර්යය සෑම තැනකම අවශ්ය නම්, කේතය එක් එක් පොතට පිටපත් කිරීමට සිදුවේ. 14>වැඩපොත මැක්රෝ-සක්රීය ආකෘතියකින් සුරැකීමට මතක තබා ගන්න (.xlsm හෝ .xlsb).
- එවැනි ගොනුවක් විවෘත කරන විට, මැක්රෝවලට එරෙහිව ආරක්ෂාව සෑම අවස්ථාවකදීම අනතුරු ඇඟවීමක් පෙන්වනු ඇත, එය තහවුරු කළ යුතුය. මැක්රෝස් සක්රීය කරන ලෙස ඉල්ලා සිටින කහ තීරු අනතුරු ඇඟවීමක් දුටු විට බොහෝ පරිශීලකයින් බියට පත් වේ. මෙම පණිවිඩය දැකීම වළක්වා ගැනීම සඳහා, ඔබ Excel ආරක්ෂාව සම්පූර්ණයෙන්ම අක්රිය කළ යුතුය. කෙසේ වෙතත්, මෙය සැමවිටම නිවැරදි සහ ආරක්ෂිත නොවිය හැක.
ඔබ මා සමඟ එකඟ වනු ඇතැයි මම සිතමි.ගොනු කිරීම සහ එයින් පරිශීලක-නිර්වචනය කරන ලද ශ්රිතවල කේතය පිටපත් කිරීම හෝ මෙම ගොනුවේ නම සූත්රයක ලිවීම හොඳම විසඳුම නොවේ. මේ අනුව, අපි තුන්වන මාර්ගයට පැමිණියෙමු.
ක්රමය 3. එක්සෙල් ඇඩෝන ගොනුවක් සාදන්න
හොඳම ක්රමය ලෙස මම සිතන්නේ නිතර භාවිතා කරන අභිරුචි ශ්රිතයන් එක්සෙල් ඇඩෝන ගොනුවක ගබඩා කිරීමයි. . ඇඩෝනය භාවිතා කිරීමේ වාසි:
- ඔබට එක් වරක් පමණක් එක්සෙල් වෙත ඇඩෝනය සම්බන්ධ කළ යුතුය. ඊට පසු, ඔබට මෙම පරිගණකයේ ඕනෑම ගොනුවක එහි ක්රියා පටිපාටි සහ කාර්යයන් භාවිතා කළ හැකිය. ඔබට ඔබේ වැඩපොත් .xlsm සහ .xlsb ආකෘතිවලින් සුරැකීමට අවශ්ය නැත, මන්ද ප්රභව කේතය ඒවායේ නමුත් ඇඩෝන ගොනුවේ ගබඩා නොකරනු ඇත.
- ඔබට තවදුරටත් මැක්රෝස් ආරක්ෂාවෙන් කරදරයක් නොවනු ඇත. add-ins සැමවිටම විශ්වාසදායක මූලාශ්ර වෙත යොමු වේ.
- ඇඩෝන යනු වෙනම ගොනුවකි. එය පරිගණකයෙන් පරිගණකයට මාරු කිරීම, එය සගයන් සමඟ බෙදා ගැනීම පහසුය.
අපි පසුව add-in එකක් සෑදීම සහ භාවිතා කිරීම ගැන වැඩි විස්තර කතා කරමු.
Add-භාවිතා කිරීම අභිරුචි කාර්යයන් ගබඩා කිරීමට ins
මම මගේම ඇඩෝනයක් සාදා ගන්නේ කෙසේද? අපි පියවරෙන් පියවර මෙම ක්රියාවලිය හරහා යමු.
පියවර 1. ඇඩෝන ගොනුව සාදන්න
Microsoft Excel විවෘත කරන්න, නව වැඩපොතක් සාදන්න, සහ සුදුසු නමක් යටතේ එය සුරකින්න (උදාහරණයක් ලෙස, My_Functions) ඇඩෝන ආකෘතියෙන්. මෙය සිදු කිරීම සඳහා, මෙනුව ගොනුව - ලෙස සුරකින්න හෝ F12 යතුර භාවිතා කරන්න. ගොනු වර්ගය සඳහන් කිරීමට වග බලා ගන්න Excel Add-in :
ඔබගේ add-in ට .xlam දිගුව ඇත.
ඉඟිය. බව කරුණාවෙන් සලකන්නපෙරනිමියෙන් Excel C:\Users\[Your_Name]\AppData\Roaming\Microsoft\AddIns ෆෝල්ඩරය තුළ ඇඩෝන ගබඩා කරයි. ඔබ පෙරනිමි ස්ථානය පිළිගන්නා ලෙස මම නිර්දේශ කරමි. ඔබ කැමති නම්, ඔබට වෙනත් ඕනෑම ෆෝල්ඩරයක් නියම කළ හැක. නමුත් පසුව, ඇඩෝනය සම්බන්ධ කරන විට, ඔබට එහි නව ස්ථානය අතින් සොයා ගැනීමට සහ නියම කිරීමට අවශ්ය වනු ඇත. ඔබ එය පෙරනිමි ෆෝල්ඩරයේ සුරැකුවහොත්, ඔබේ පරිගණකයේ ඇඩෝනය සොයා බැලිය යුතු නැත. Excel එය ස්වයංක්රීයව ලැයිස්තුගත කරනු ඇත.
පියවර 2. ඇඩෝන ගොනුව සම්බන්ධ කරන්න
දැන් අපි නිර්මාණය කර ඇති ඇඩෝනය Excel වෙත සම්බන්ධ කළ යුතුය. එවිට වැඩසටහන ආරම්භ වන විට එය ස්වයංක්රීයව පටවනු ලැබේ. මෙය සිදු කිරීම සඳහා, ගොනුව - විකල්ප - ඇඩෝන මෙනුව භාවිතා කරන්න. Manage ක්ෂේත්රය තුළ Excel Add-Ins තෝරාගෙන ඇති බවට වග බලා ගන්න. කවුළුවේ පතුලේ ඇති Go බොත්තම ක්ලික් කරන්න. දිස්වන කවුළුවෙහි, අපගේ ඇඩෝන My_Functions සලකුණු කරන්න. ඔබට එය ලැයිස්තුවේ නොපෙනේ නම්, බ්රවුස් බොත්තම ක්ලික් කර ඔබගේ ඇඩෝන ගොනුව ඇති ස්ථානයට බ්රවුස් කරන්න.
ඔබ නම් අභිරුචි කාර්යයන් ගබඩා කිරීමට ඇඩෝනයක් භාවිතා කරයි, අනුගමනය කිරීමට එක් සරල රීතියක් ඇත. ඔබ වැඩපොත වෙනත් පුද්ගලයින් වෙත මාරු කරන්නේ නම්, ඔබට අවශ්ය ක්රියාකාරීත්වය අඩංගු ඇඩෝනයේ පිටපතක් ද මාරු කිරීමට වග බලා ගන්න. ඔවුන් එය ඔබ දැන් කළ ආකාරයටම සම්බන්ධ කළ යුතුය.
පියවර 3. ඇඩෝනයට අභිරුචි ශ්රිත සහ මැක්රෝ එක් කරන්න
අපගේ ඇඩෝනය Excel වෙත සම්බන්ධ කර ඇත, නමුත් එය එසේ නොවේ. කිසිදු ක්රියාකාරීත්වයක් නොමැතතවම. එයට නව UDF එකතු කිරීමට, Alt + F11 එබීමෙන් Visual Basic Editor එක විවෘත කරන්න. එවිට ඔබට මගේ Create UDFs නිබන්ධනයේ විස්තර කර ඇති පරිදි VBA කේතය සමඟ නව මොඩියුල එක් කළ හැක.
ඔබගේ ඇඩෝන ගොනුව තෝරන්න ( My_Finctions.xlam ) VBAProject කවුළුව. අභිරුචි මොඩියුලයක් එක් කිරීමට ඇතුළු කරන්න - මොඩියුලය මෙනුව භාවිතා කරන්න. ඔබ එයට අභිරුචි ශ්රිත ලිවීමට අවශ්යයි.
ඔබට එක්කෝ පරිශීලක නිර්වචනය කළ ශ්රිතයක කේතය අතින් ටයිප් කිරීමට හෝ එය කොතැනකින් හෝ පිටපත් කිරීමට හැකිය.
එපමණයි. දැන් ඔබ ඔබේම ඇඩෝනයක් සාදා, එය එක්සෙල් වෙත එකතු කර ඇති අතර ඔබට එහි යූඩීඑෆ් භාවිතා කළ හැකිය. ඔබට තවත් UDF භාවිතා කිරීමට අවශ්ය නම්, VBA සංස්කාරකයේ ඇඩෝන මොඩියුලයේ කේතය ලියා එය සුරකින්න.
අදට එච්චරයි. අපි ඔබගේ වැඩපොතෙහි පරිශීලක නිර්වචනය කරන ලද කාර්යයන් භාවිතා කරන ආකාරය ඉගෙන ගත්තෙමු. මෙම මාර්ගෝපදේශ ඔබට ප්රයෝජනවත් වනු ඇතැයි අපි සැබවින්ම බලාපොරොත්තු වෙමු. ඔබට කිසියම් ප්රශ්නයක් ඇත්නම්, මෙම ලිපියට අදහස් දැක්වීමේදී ලියන්න.