VBA හි කාර්යය සොයන්න: එය භාවිතා කරන්නේ කෙසේද?

භාවිතා කරන ආකාරය ඉගෙන ගැනීමට අවශ්යයි VBA හි FIND කාර්යය🇧🇷 එසේනම් ඔබ නිවැරදි ස්ථානයේ සිටී!

Excel හි සෙවුම් විකල්පය නොදන්නේ කවුද? ඔබ යම් කාලයක් Excel සමඟ වැඩ කර ඇත්නම්, ඔබ ඔබේ සම්පූර්ණ වැඩ පත්‍රිකාව තුළ සෙවීමට අවශ්‍ය වචනයක් හෝ අන්තර්ගතයක් සොයා ගැනීමට සෙවුම් ශ්‍රිතය හෝ ජනප්‍රිය Ctrl + L කෙටිමං යතුර භාවිත කර ඇත. මුළු වැඩපොත වගේ.

ඒ වගේම VBA වල අපිට FIND කියල FIND එකක් තියෙනවා අපි හොයන අගය හොයාගන්න උදව් කරන්න.

ප්‍රායෝගික උදාහරණ හරහා මෙම විශේෂාංගය ගැන වැඩිදුර දැන ගැනීමට පහත විස්තර අනුගමනය කරන්න.

VBA හි FIND කාර්යය ක්‍රියා කරන්නේ කෙසේද?

Excel VBA FIND ශ්‍රිතය නිශ්චිත පරාසයක් තුළ නිශ්චිත අගයක් සොයයි. එම අගයේ පළමු සිදුවීම සොයන අතර, සොයාගතහොත්, ශ්‍රිතය එය අඩංගු සෛලය ආපසු ලබා දෙයි. කෙසේ වෙතත්, ගැළපීමක් සොයාගත නොහැකි නම්, ශ්‍රිතය කිසිවක් ලබා නොදේ. VBA FIND ශ්‍රිතයට නිශ්චිත හෝ අර්ධ ගැළපීමක් ලබා දිය හැක.

උදාහරණයක් ලෙස, පහත කේතය "පෙළ" සොයයිසැන් පැබ්ලෝ» පරතරය තුළ ඒ 1: ඒ 10 en «වැඩ පත්රිකාව1🇧🇷

පත්‍ර සමඟ("පත්‍ර 1"). පරාසය("A1:A10")
සකසන්න Rng = .සොයාගන්න(කුමක්ද:="São Paulo")

VBA හි FIND ශ්‍රිතය භාවිතා කිරීමේ අරමුණ වන්නේ දී ඇති දත්ත කට්ටලයක අපේක්ෂිත අගය සොයා ගැනීමයි. VBA කේතයක් සමඟ, ඔබට Excel හි අගයන් සෙවීමේ කාර්යය ස්වයංක්රීය කළ හැකිය.

VBA FIND කාර්යය වාක්‍ය ඛණ්ඩය

VBA FIND ශ්‍රිත වාක්‍ය ඛණ්ඩය පහත පරිදි ප්‍රකාශ කර ඇත:

ප්‍රකාශනය.සොයන්න(කුමක්ද, පසු, ලුක්ඉන්, ලුක්ඇට්, සෙවුම් අනුපිළිවෙල, සෙවුම් දිශානතිය, මැච්කේස්, මැච්බයිට්, සෙවුම් ආකෘතිය)

කොහේද:

ප්‍රකාශනය: VBA කේතයේ FIND ශ්‍රිතයට පෙර ඇති පරාසයක වස්තුව වේ. සෙවුම් පරාසය පේළි එකක් හෝ කිහිපයක්, තීරු, හෝ සම්පූර්ණ පැතුරුම්පත විය හැක. VBA FIND ශ්‍රිතය පහත තර්ක පිළිගනී:

  • කුමක්ද: සෙවිය යුතු වටිනාකම මෙයයි. එය සංඛ්‍යාත්මක, පාඨමය හෝ වෙනත් ඕනෑම Excel දත්ත වර්ගයක් විය හැක. මෙම තර්කය "" හි Find විකල්පයට සමාන වේ.සොයා ආදේශ කරන්න” Excel වෙතින්.
  • පසු: සෙවීම ආරම්භ වන කොටුව දක්වයි. එය තනි සෛල යොමුවක් ලෙස ඇතුළත් කර ඇත. මෙම තර්කය මඟ හරිනු ලැබුවහොත්, නිශ්චිත සෙවුම් පරාසයේ ඉහළ වම් කෙළවරේ ඇති කොටුවෙන් පසුව සෙවීම ආරම්භ වේ.
  • තුළ බලන්න: අගය සෙවිය යුතු ස්ථානය (හෝ දත්ත) මෙයයි. එය විවරණයක් (xlComments), සූත්‍රයක් (xlFormulas) හෝ අගයක් (xlValues) විය හැකිය. මෙම තර්කයේ පෙරනිමි අගය xlFormulas වේ. එසේම, මෙම තර්කය "" හි Find විකල්පයට සමාන වේ.සොයා ආදේශ කරන්න” Excel වෙතින්.
  • බලන්න: මෙම තර්කය මගින් සම්පූර්ණ සෛල අන්තර්ගතය (නිවැරදි ගැළපීම) හෝ සෛල අන්තර්ගතයේ කොටසක් (අර්ධ ගැලපීම) ගැළපෙන්නේද යන්න තීරණය කරයි. නියම සහ අර්ධ ගැලපීම් සඳහා නියතයන් xlWhole සහ xlPart වේ. මෙම තර්කයේ පෙරනිමි අගය xlPart වේ.
  • සෙවුම් ඇණවුම: මෙම තර්කය සෙවුම් අනුපිළිවෙල යෝජනා කරයි. සෙවුම පේළි (xlByRows) හෝ තීරු (xlByColumns) වලින්ද යන්න ඔබට සඳහන් කළ හැක. මෙම තර්කයේ පෙරනිමි අගය xlByRows වේ. එසේම, මෙම තර්කය "" හි Find විකල්පයට සමාන වේ.සොයා ආදේශ කරන්න” Excel වෙතින්.
  • සෙවුම් ලිපිනය: සෙවීම සිදු කරනු ලබන ලිපිනය දක්වයි. ඔබට xlNext නියතය සමඟ පහළට හෝ ඊළඟ කොටුවට සෙවිය හැක. විකල්පයක් ලෙස, ඔබට පසුපසට (ඉහළට) හෝ පෙර කොටුවේ xlPrevious නියතය සමඟ සෙවිය හැක. මෙම තර්කයේ පෙරනිමි අගය xlNext වේ.
  • තරඟ නඩුව: මෙම තර්කය සෙවුම කේස් සංවේදී විය යුතුද නැද්ද යන්න තීරණය කරයි. සෙවුම සිද්ධි සංවේදී නම්, මෙම තර්කය සත්‍ය (TRUE) ලෙස දක්වා ඇත, එසේ නොමැති නම් එය අසත්‍ය වේ (FALSE). මෙම තර්කයේ පෙරනිමි අගය False වේ.
  • MatchByte: යමෙකු ස්ථාපනය කර ඇත්නම් හෝ ද්විත්ව බයිට් භාෂා සහාය තෝරාගෙන තිබේ නම් මෙම තර්කය භාවිතා කළ යුතුය. ද්විත්ව බයිට් අක්ෂර ද්විත්ව බයිට් අනුලකුණුවලට ගැළපෙන්නේ නම් සත්‍ය ලෙස සඳහන් කළ යුතුය. ද්විත්ව බයිට් අනුලකුණු ඒවායේ තනි-බයිට සමානකම් සමඟ ගැලපීමට නම් අසත්‍ය ලෙස සඳහන් කළ යුතුය.
  • සෙවුම් ආකෘතිය: සෙවිය යුතු අගය නිශ්චිත ආකෘතියකින් (තද හෝ ඇල අකුරු වැනි) විය යුතුද නැද්ද යන්න පෙන්නුම් කරයි. සෙවීම් අගය හැඩතල ගැන්වීමේ තාක්ෂණයක් අනුගමනය කළ යුතු නම්, මෙම තර්කය සත්‍ය ලෙසත්, එසේ නොමැතිනම් අසත්‍ය ලෙසත් සඳහන් වේ. මෙම තර්කයේ පෙරනිමි අගය අසත්‍යයි (FALSE).

තර්කය පමණි මොකක්ද? අවශ්ය. අනෙකුත් තර්ක විකල්ප වේ.

FIND ශ්‍රිතය පහත ප්‍රතිඵලවලින් එකක් ලබා දෙයි:

  • ගැළපීමක් සොයාගතහොත්, ශ්‍රිතය අගය සොයාගත් පළමු කොටුව ලබා දෙයි.
  • ගැළපීමක් සොයාගත නොහැකි නම්, ශ්‍රිතය කිසිවක් ලබා නොදේ. මෙයට හේතුව ශ්‍රිත වස්තුව කිසිවක් නොමැති ලෙස සකසා තිබීමයි.

විකල්පයක් ලෙස, ගැළපීමක් සොයාගත නොහැකි නම්, අභිරුචි පණිවිඩයක් හරහා සඳහන් කර ඇත පණිවිඩ පෙට්ටියේ කාර්යය ආපසු ලබා දිය හැක (පහත කේත උදාහරණ බලන්න).

සටහන 1: තර්කයේ සඳහන් කර ඇති කොටුවෙන් පසුව සෙවීම ආරම්භ වේ. පසු සහ සෙවුම් පරාසයේ අවසාන කොටුව දක්වා ඉදිරියට යයි. මෙම අවසාන කොටුව දක්වා අගය සොයාගත නොහැකි නම්, සෙවුම් පරාසයේ පළමු කොටුවේ සිට තර්කයේ සඳහන් කර ඇති කොටුව දක්වා සෙවීම නැවත ආරම්භ වේ. පසු🇧🇷

එබැවින්, තර්කයේ සඳහන් කර ඇති කොටුව පසු එය සෙවුම් ක්‍රියාවලිය අවසානයේ සොයනු ලැබේ. තර්කයේ භාවිතය පිළිබඳ වැඩි විස්තර සඳහා පසුමෙම ලිපියේ දෙවන උදාහරණය බලන්න.

සටහන 2: VBA FIND ශ්‍රිතය භාවිතා කරන සෑම අවස්ථාවකම, ද තුළ බලන්න🇧🇷 බලන්න🇧🇷 සෙවුම් නියෝගය y MatchByte සුරකිනු ලැබේ.එබැවින්, ඊළඟ වතාවේ ශ්‍රිතය භාවිතා කරන විට මෙම අගයන් මඟ හැරියහොත්, Excel විසින් කලින් සුරකින ලද අගයන් භාවිතා කරනු ඇත. එබැවින්, VBA FIND ශ්‍රිතය භාවිතයෙන් සෙවුම සිදු කරන සෑම විටම සපයා ඇති තර්ක පැහැදිලිව ප්‍රකාශ කිරීම නිර්දේශ කෙරේ.

Excel VBA හි FIND කාර්යය භාවිතා කරන්නේ කෙසේද?

VBA හි FIND ශ්‍රිතයේ භාවිතය ඔබට අවබෝධ කර ගැනීම සඳහා, අපි පහත ප්‍රායෝගික උදාහරණ කිහිපයක් වෙන් කර ඇත.

උදාහරණ 1: සෙවුම් අගයේ පළමු සිදුවීම සමඟ සෛලය තේරීම

මෙම පළමු උදාහරණයේදී, පහත රූපයේ දැක්වෙන පරිදි සමහර නම් අඩංගු ලැයිස්තුවක් ඔබ සතුව ඇති අතර, ඔබට එම නම අඩංගු කොටුව බ්‍රවුස් කර තෝරා ගැනීමට අවශ්‍ය යැයි සිතන්න. පඩ්රෝ🇧🇷

එතැන් සිට, මෙම පියවර අනුගමනය කරන්න:

1. මාර්ගෝපදේශය වෙත පිවිසෙන්න සංවර්ධක 🇧🇷 දෘශ්ය මූලික🇧🇷 (ඔබේ එක්සෙල් හි සංවර්ධක ටැබ් එක සක්‍රීය කර නොමැති නම්, මෙහි පරීක්ෂා කරන්න පියවරෙන් පියවර).

සංවර්ධක මාර්ගෝපදේශය

දෙක. VBA තිරය මත, වම් පස ඇති මෙනුවෙන් අවශ්ය වැඩ පත්රිකාව තෝරන්න. මෙම උදාහරණයේ දී, අපි තෝරා ගනිමු වැඩ පත්රිකාව1 එනම් නම් ලැයිස්තුව අඩංගු වැඩ පත්‍රිකාවයි.

3. අපේක්ෂිත වැඩ පත්‍රිකාව තේරීමෙන් පසු, දකුණට ඇති ප්‍රදේශයේ, පහත කේතය ඇතුළත් කරන්න:

සෙවූ අගයේ පළමු සිදුවීම සහිත කොටුව තෝරන්න

උප ස්ථානයේ නම()
පරාසය("A1:A10").සොයන්න(කුමක්ද:="පීටර්").තෝරන්න
අවසන් උප
  • ඉහත කේතයේ අපි සොයන පරාසය සඳහන් කර ඇති බව සලකන්න (A1: A10🇧🇷
  • පරාසය සඳහන් කිරීමෙන් පසු, කාල සීමාවක් (.) තබා ටයිප් කරන්න සොයා ගන්න🇧🇷
  • අපගේ පළමු තර්කය අප සොයන්නේ කුමක්ද යන්නයි. තර්කය ඉස්මතු කිරීමට, අපට තර්කය සම්මත කළ හැකිය කුමක්ද: =අප සඳහන් කරන්නේ කුමන පරාමිතියද යන්න හඳුනා ගැනීමට මෙය ප්‍රයෝජනවත් වේ.
  • අවසාන කොටස තමයි අපිට කරන්න ඕන කියන වචනය හොයාගත්තට පස්සේ. අපි වචනය තෝරාගත යුතුයි, ඒ නිසා තර්කය ලෙස යන්න .තෝරන්න🇧🇷
  • ඉන්පසු යතුර භාවිතයෙන් මෙම කේතය ධාවනය කරන්න F5 හෝ නම අඩංගු පළමු කොටුව තේරීමට පහත රූපයේ පෙන්වා ඇති පරිදි අතින් පඩ්රෝ🇧🇷

VBA හි ස්ථානගත කරන්න

උදාහරණ 2: සෙවුම් අගයේ දෙවන සිදුවීම සහිත සෛලය තෝරන්න

මෙම දෙවන උදාහරණයේ දී, පහත රූපයේ A1:A10 පරාසයේ නම් කිහිපයක් ඇති බව සලකන්න. නම" බව සලකන්නපඩ්රෝ” A තීරුවේ දෙවරක් දිස්වේ.

දෙවන සිදුවීම සමඟ සෛලය තෝරන්න

මෙම අවස්ථාවේදී, අපි සෙවීමට සහ තෝරා ගැනීමට අවශ්ය වේ දෙවන සිදුවීම A තීරුවේ "පීටර්" යන නාමයෙන් (එනම්, සෛල A7). මෙය සිදු කිරීම සඳහා අපි පහත කේතය භාවිතා කරමු:

VBA හි දෙවන සිදුවීම සොයන්න

උප ස්ථානයේ නම()
පරාසය("A1:A10").සොයන්න(කුමක්ද:="පීටර්", පසු:=පරාසය("A2")).තෝරන්න
අවසන් උප

ඉහත කේතයෙහි සෙවුම A2 කොටුවෙන් පසුව ආරම්භ වී A තීරුවේ අවසාන කොටුව දක්වා පවතින බව සලකන්න. මෙයට හේතුව සෙවුම් පරාසය A තීරුව (A1:A10) ලෙස සඳහන් කර තිබීමයි.

එබැවින්, සෙවුම A3 කොටුවෙන් ආරම්භ වන බැවින්, අගය "පඩ්රෝ” සෛලයේ ඇත A7 දෙනවා"පැතුරුම්පත2🇧🇷 එබැවින්, කේතය ක්‍රියාත්මක කිරීමේදී FIND ශ්‍රිතය මඟින් සෛල A7 තෝරා ගනු ලැබේ.

නම නම් "පඩ්රෝ” A තීරුවේ අවසාන කොටුව තෙක් A3 කොටුවේ හමු වී නොතිබුණි, සෙවීම නැවතත් A1 කොටුවෙන් ආරම්භ වී මෙවර A2 කොටුවෙන් අවසන් වේ. එබැවින්, තර්කයේ සඳහන් කර ඇති කොටුව "පසු” යනුවෙන් සෙවුම් ක්‍රියාවලිය අවසානයේ සෙවුම් වේ.

උදාහරණ 3: එහි අක්ෂර කිහිපයක් සඳහන් කිරීමෙන් පෙළ සොයන්න

එහි කොටසක් පමණක් සඳහන් කිරීමෙන් පෙළ සෙවීමට, තර්කය ඇතුළත් කරන්න බලන්න Como xlPart නැතහොත් මෙම තර්කය මඟහරින්න. පෙරනිමියෙන්, FIND ශ්‍රිතය සෙවුම් අගයේ ඇති අක්ෂර සමඟ සම්පූර්ණ තන්තුවට ගැලපේ. එය පසුව මෙම සම්පූර්ණ තන්තුව අඩංගු සෛලය ආපසු ලබා දෙයි.

පහත උදාහරණය බලන්න:

උප ස්ථානයේ නම()
පරාසය("A1:A10").සොයාගන්න(කුමක්ද:="Ped", LookAt:=xlPart).තෝරන්න
අවසන් උප

මෙම කේතය අක්ෂර සඳහා සොයයි "ඇහුවා"Sheet1" හි A25:A3 පරාසය තුළ. අගය අඩංගු කොටුව ආපසු ලබා දෙනු ලැබේ, එය නම් කර ඇත අර්ධ ලිපි හුවමාරුව🇧🇷 එබැවින්, සෙවුම් අගය අක්ෂර තන්තුවේ ආරම්භයේ, මැද හෝ අවසානයේ තැබුවද, Excel VBA ගැළපීමක් ලබා දෙයි.

සටහන: නියතය xlPart එය FIND ශ්‍රිතයේ පෙරනිමි අගය වන බැවින් එය කේතයෙන් ඉවත් කළ හැක. නමුත් මෙම තර්කය නිශ්චිතව දක්වා තිබේ නම්, එය ද්විත්ව උද්ධෘතවල ඇතුළත් කර නොමැති බවට වග බලා ගන්න.

උදාහරණ 4: අදහස් දැක්වීමක් තුළ පෙළ සෙවීම

Excel හි සෛල විවරණයක් තුළ පෙළ සොයා ගැනීමට ඔබට VBA FIND ශ්‍රිතය භාවිතා කළ හැක.

වඩා හොඳ අවබෝධයක් සඳහා, අදහස් සහිත (රතු ත්‍රිකෝණවලින් දැක්වෙන) සෛල තුනක් අඩංගු වැඩ පත්‍රිකාවක් ඇති පහත උදාහරණය දෙස බලන්න. මෙයින් අපට පෙළ සොයා ගැනීමට අවශ්‍යයි "කොමිස් ගෙව්වා” එක් අදහස් දැක්වීමක් තුළ පිහිටා ඇත. මෙම අවස්ථාවේදී, අපි පහත කේතය භාවිතා කරමු:

Sub LocateComment()
පරාසය("A1:B10").සොයන්න(කුමක්ද:="කොමිස් ගෙවන්නේ", LookIn:=xlComments).තෝරන්න
අවසන් උප

අදහස් දැක්වීම තුළ පෙළ සොයන්න

එහි ප්‍රතිඵලයක් වශයෙන්, Excel විසින් තෝරාගනු ලබන්නේ අපගේ කේතයේ සඳහන් කර ඇති අදහස අඩංගු කොටුව පමණි.

උදාහරණ 5: VBA හි FIND ශ්‍රිතයේ හැසිරවීමේ දෝෂයකි

අප සොයන පෙළ ලබා දී ඇති පරාසය තුළ නොමැති නම්, VBA පහත දැක්වෙන පරිදි දෝෂයක් ලබා දෙනු ඇත:

දෝෂය 91

මෙම දෝෂය වළක්වා ගැනීම සඳහා, අපට පහත දැක්වෙන පරිදි කේතයක් භාවිතා කළ හැක:

උප ස්ථානයේ නම()
ප්‍රභේදය ලෙස අඳුරු ප්‍රතිඵලය

ඊලඟට සිදු වූ දෝෂයක් මත
පරාසය("A1:A10").සොයන්න(කුමක්ද:="ක්‍රිස්ටිනා").තෝරන්න
GoTo 0 දෝෂය මත

ප්‍රතිඵලය = ActiveCell.Value

ප්‍රතිඵලය = "" එසේ නම්
MsgBox "ඔබ සොයන අගය සපයා ඇති පරාසය තුළ නොමැත!"
උප පිටවීම
අවසානය නම්

අවසන් උප

VBA අගය සොයා ගන්නේ නම්, එය සොයාගත් අගය පෙන්වනු ඇති බව ඉහත කේතයේ සටහන් කරන්න, නැතහොත් එය " ලෙස පණිවිඩය පෙන්වනු ඇත.ඔබ සොයන අගය ලබා දී ඇති පරාසය තුළ නොමැත🇧🇷

VBA දෝෂ නිවැරදි කරන්නේ කෙසේද යන්න පිළිබඳ වැඩිදුර උපදෙස් සඳහා, ලිපිය බලන්න: Excel VBA දෝෂ: ඔබ දැනගත යුතු සියල්ල!

මතක තබා ගත යුතු විස්තර

  • FIND ශ්‍රිතය RANGE ගුණාංගයේ කොටසක් වන අතර ඔබ පරාසය පමණක් තේරීමෙන් පසුව FIND භාවිත කළ යුතුය.
  • FIND ශ්‍රිතයේ, පළමු තර්කය (මොකක්ද?), ප්ලස් අනෙක් සියල්ල විකල්ප වේ.
  • ඔබ නිශ්චිත සෛලයකට පසුව අගය සොයා ගන්නේ නම්, ඔබට පරාමිතිය තුළ සෛලය සඳහන් කළ හැකිය පසු සෙවුම් වාක්‍ය ඛණ්ඩයේ.

පැතුරුම්පත මෙතනින් බාගන්න මෙම නිබන්ධනයේ ඉදිරිපත් කර ඇති උදාහරණ අඩංගු වේ.

පහත එක්සෙල් ඉඟි ද පරීක්ෂා කරන්න:

ඉතින් VBA හි FIND කාර්යය ගැන ඔබ සිතන්නේ කුමක්ද? ඔබට කිසියම් ප්‍රශ්නයක් ඇත්නම්, ඔබේ අදහස පහතින් තබන්න. අපගේ වෙබ් අඩවියේ තවත් Excel සහ VBA ඉඟි ද බලන්න!

ටොමී බැංකු
ඔබ සිතන දේ ඇසීමට අපි සතුටු වන්නෙමු

පිළිතුරක් තබන්න

TechnoBreak | පිරිනැමීම් සහ සමාලෝචන
ලාංඡනය
සැකසුම් තුළ ලියාපදිංචි කිරීම සක්‍රීය කරන්න - සාමාන්‍යය
සාප්පු ට්රොලිය