Excel VBA: Array හි බහු නිර්ණායක සමඟ පෙරහන කරන්නේ කෙසේද (විධි 7)

  • මේක Share කරන්න
Hugh West

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

එබැවින්, අපි අපගේ ප්‍රධාන ලිපිය ආරම්භ කරමු.

වැඩපොත බාගන්න

බහු නිර්ණායක සමඟ පෙරහන් කරන්න.xlsm

Excel VBA භාවිතයෙන් Array හි බහු නිර්ණායක සමඟ පෙරීමට ක්‍රම 7

පහත දත්ත කට්ටලයේ, සිසුන්ගේ නමට සහ ඔවුන්ගේ හැඳුනුම්පතට අනුරූප වන ලකුණු පිළිබඳ වාර්තා කිහිපයක් අප සතුව ඇත. අපි සමහර කේත භාවිතා කරමින් විවිධ නිර්ණායක මත පදනම්ව මෙම දත්ත කට්ටලය අරාවක් ලෙස පෙරීමට උත්සාහ කරන්නෙමු.

අපි Microsoft Excel 365 අනුවාදය භාවිතා කර ඇත, ඔබ ඔබගේ පහසුව අනුව වෙනත් ඕනෑම අනුවාද භාවිතා කළ හැක.

ක්‍රමය-1: Array හි පෙළ ලෙස බහු නිර්ණායක සමඟ පෙරන්න

මෙහි, අපි පහත දත්ත කට්ටලය මත පදනම්ව පෙරීමට උත්සාහ කරමු. ශිෂ්‍ය නම තීරුව Emily , Daniel , සහ Gabriel <10 අඩංගු බහු නිර්ණායක සඳහා> අරාවක.

පියවර-01 :

සංවර්ධක වෙත යන්න ටැබ් >> දෘෂ්‍ය මූලික විකල්පය.

ඉන්පසු, දෘශ්‍ය මූලික සංස්කාරකය විවෘත වනු ඇත.

Insert Tab >> Module Option වෙත යන්න.

ඉන් පසු, Module එකක් වනු ඇතසාදන ලදී.

පියවර-02 :

➤ පහත කේතය ලියන්න

1367

මෙහි, අපි ප්‍රකාශ කළේ අපි පෙරහන යොදන B3:D3 පරාසයේ ශීර්ෂ නාම සහ ක්ෂේත්‍රය:=2 යනු මෙම පරාසයේ තීරු අංකය වන අතර එය මත පදනම්ව අපි මෙම පෙරීමේ ක්‍රියාවලිය සිදු කරන්නෙමු.

අවසාන වශයෙන්, අපි Emily , Daniel වැනි බහුවිධ සිසුන්ගේ නම් ප්‍රකාශ කිරීමේ නිර්ණායකයක් ලෙස සකසා ඇත. , සහ Gabriel .

F5 ඔබන්න.

එසේ නම්, ඔබ සිසුන්ගේ නම සහ ඔවුන්ගේ අනුරූප ID සහ ලකුණු සිසුන් පෙන්වීම සඳහා බහු නිර්ණායක සඳහා දත්ත කට්ටලය පෙරීමට ඇත. 1> Emily , Daniel , සහ Gabriel .

තවත් කියවන්න: Excel හි බහු නිර්ණායක පෙරන්න (සුදුසු ක්‍රම 4)

ක්‍රමය-2: Array භාවිතා කරමින් බහු සංඛ්‍යා නිර්ණායක සමඟ පෙරන්න Excel VBA

මෙහි, අපි 101135 , 10 ids සඳහා පහත දත්ත කට්ටලය පෙරීම කරන්නෙමු. 1137 , සහ 101138 මෙම සංඛ්‍යා අරාවක බහු නිර්ණායක ලෙස භාවිතා කිරීමෙන්.

පියවර :

පියවර-01 හි ක්‍රමය-1 .

➤ පහත කේතය ලියන්න

4965

මෙහි, අපි පෙරහන යොදන B3:D3 පරාසයේ ශීර්ෂ නාම ප්‍රකාශ කළ අතර ක්ෂේත්‍රය:=2 යනු අප පදනම් වූ පරාසයේ තීරු අංකයයි. මෙම පෙරීම සිදු කරනු ඇතක්‍රියාවලිය.

අවසාන වශයෙන්, අපි 101135 , 101137 වැනි බහු ශිෂ්‍ය හැඳුනුම්පත් ප්‍රකාශ කිරීමේ නිර්ණායකයක් ලෙස සකසා ඇත. , සහ 101138 සහ AutoFilter ක්‍රියා කරන්නේ තන්තු පෙළකට පමණක් බැවින් ඒවා තන්තු ලෙස සඳහන් කිරීමට අප ඒවා ප්‍රතිලෝම කොමා තුළ තබා ඇත.

F5 ඔබන්න.

ඉන්පසු, ඔබට id ඇති සිසුන්ගේ නම් සහ ලකුණු ලැබෙනු ඇත. 101135 , 101137 , සහ 101138 .

0> වැඩිදුර කියවන්න: VBA මඟින් තීරුවේ සිට Excel හි Array වෙත අද්විතීය අගයන් ලබා ගැනීමට (3 නිර්ණායක)

ක්‍රමය-3: භාවිතා කිරීම සඳහා පරාසයක බහු නිර්ණායක සැකසීම Array ලෙස

මෙහි, අපි List තීරුවෙහි නිර්ණායක ලැයිස්තුගත කර ඇත 101134 , 101135 , සහ 101136 මත පදනම්ව අපි අපගේ පෙරීමේ ක්‍රියාවලිය සිදු කරන්නෙමු.

පියවර :

ක්‍රමය-1 හි පියවර-01 අනුගමනය කරන්න.

➤ පහත කේතය ලියන්න

6760

මෙහි , අපිට decl තියෙනවා ared ID_range , k ප්‍රභේදය සහ ID_range යනු බහු නිර්ණායක ගබඩා කරන අරාව වන අතර k වේ මෙම අරාවේ පහළ සීමාවේ සිට ඉහළ සීමාව දක්වා වූ වර්ධකය. පහළ සීමාව සහ ඉහළ සීමාව තිබීම සඳහා අපි පිළිවෙලින් LBOUND ශ්‍රිතය සහ UBOUND ශ්‍රිතය භාවිත කළා.

FOR loop පරිවර්තනය කිරීම සඳහා භාවිතා වේ නූල් හැර අනෙකුත් අගයන්අරාව තුළ CStr ශ්‍රිතය ආධාරයෙන් තන්තු බවට. අවසාන වශයෙන්, අපි මෙම අරාව නිර්ණායක1 ලෙස භාවිතා කර ඇත.

F5 ඔබන්න.

පසුව, ඔබ id 101134 , 101135 , සහ 101136 ඇති සිසුන්ගේ නම් සහ ලකුණු ලැබෙනු ඇත. .

තවත් කියවන්න: Excel VBA හි බහු නිර්ණායක අනුව විවිධ තීරු පෙරහන් කරන්න

සමාන කියවීම්

  • Excel හි අද්විතීය අගයන් පෙරන ආකාරය (පහසු ක්‍රම 8)
  • Excel හි අභිරුචි පෙරහන ක්‍රියාත්මක කරන්න (5 ක්‍රම)
  • VBA (Macro, UDF, සහ UserForm) සමඟ Array එකක සාමාන්‍යය ගණනය කරන්න
  • Excel ෆිල්ටරය සඳහා කෙටිමං (ඉක්මන් භාවිත 3ක් උදාහරණ සමඟ)

ක්‍රමය-4: බහුවිධ නිර්ණායක සමඟ අරාව සෑදීම සඳහා SPLIT සහ JOIN කාර්යයන් භාවිතා කිරීම

මෙහි, අපි ලැයිස්තුවෙහි පහත ලැයිස්තුව භාවිතා කරමු තීරුව අරාවක් ලෙස සහ දත්ත කට්ටලය නිසි ලෙස පෙරීම සඳහා අපි SPLIT ශ්‍රිතය , JOIN ශ්‍රිතය , සහ TRANSPOSE ශ්‍රිතය භාවිතා කරන්නෙමු. VBA කේතය.

පියවර :

➤ Fol අඩු පියවර-01 හි ක්‍රමය-1 .

➤ පහත කේතය ලියන්න

1133

මෙහි, TRANSPOSE පරිවර්තනය වේ 2D array එක 1D array එකකට නැතිනම් AutoFilter ක්‍රියා නොකරනු ඇත, JOIN එක් එක් අගයන් තන්තු අරාවකට එක් කරයි, සහ අවසාන වශයෙන්, SPLIT ආදානය ලබා දීම සඳහා එක් එක් තන්තුව බිඳ දමයිදත්ත කට්ටලය පෙරීම සඳහා නිර්ණායක ලෙස ඒවා වෙන වෙනම.

F5 ඔබන්න.

අවසානයේ, ඔබට නම් සහ ලකුණු ලැබෙනු ඇත. 101134 , 101135 , සහ 101136 .

id සහිත සිසුන්

වැඩිදුර කියවන්න: VBA හි තන්තුවක් අරාවකට බෙදන්නේ කෙසේද (විධි 3)

ක්‍රමය-5 : VBA

අරා සඳහා ලූපයක් තුළ බහු නිර්ණායක සමඟ පෙරන්න, මෙම කොටසෙහි, අපි බහු සඳහා Student Id තීරුව මත පදනම්ව පහත දත්ත කට්ටලය පෙරීම කරන්නෙමු. ලැයිස්තුව තීරුවෙහි ලැයිස්තුගත කර ඇති නිර්ණායක.

පියවර :

පියවර- අනුගමනය කරන්න 01 of Method-1 .

➤ පහත කේතය ලියන්න

3089

මෙහි, අපි k integer ලෙස ප්‍රකාශ කර ඇත. , ID_range(100) String මෙහිදී ID_range යනු 100 අගයන් දක්වා ගබඩා කරන අරාවකි. මෙම අරාව සඳහා අගයන් තීරණය කිරීම සඳහා අපි මෙහි පේළි අංක ලෙස FOR loop සඳහා k 4 සිට 6 දක්වා භාවිතා කර ඇත. ලැයිස්තුව තීරුව සහ F තීරු නාමයයි.

අවසාන වශයෙන්, අපි මෙම අරාව Criteria1 AutoFilter සඳහා භාවිත කර ඇත. .

F5 ඔබන්න.

අවසානයේදී, ඔබට හැඳුනුම්පත් ඇති සිසුන්ගේ නම් සහ ලකුණු ලැබෙනු ඇත 101134 , 101135 , සහ 101136 .

තවත් කියවන්න: VBA සමඟ Excel හි බහු නිර්ණායක පෙරහන් කරන්න (හා සහ හෝ යන දෙකමවර්ග)

ක්‍රමය-6: බහු නිර්ණායක සඳහා නම් කළ පරාසය භාවිතා කිරීම

මෙහි, අපි ලැයිස්තුව තීරුවෙහි සිසුන්ගේ නම් කිහිපයක් ලැයිස්තුගත කර මෙය නම් කර ඇත. ශිෂ්‍ය ලෙස පරාසය. මෙම නම් කළ පරාසය භාවිතා කරමින් අපි AutoFilter විශේෂාංගය සඳහා බහු නිර්ණායක අඩංගු අරාවක් නිර්වචනය කරන්නෙමු.

පියවර :<3

ක්‍රමය-1 හි පියවර-01 අනුගමනය කරන්න.

➤ පහත කේතය ලියන්න

1871

මෙහි, අපි <ප්‍රකාශ කර ඇත. 1>Student_range , k විචල්‍යයක් ලෙස , සහ TRANSPOSE ශ්‍රිතය 2D නම් කළ පරාසයේ අරාව පරිවර්තනය කිරීමට භාවිතා කළේය. ශිෂ්‍ය 1D අරාවක් තුළට ගෙන එය Student_range තුළ ගබඩා කර ඇත. ඉන්පසුව, එය AutoFilter ක්‍රමය සඳහා Criteria1 ලෙස භාවිතා වේ.

F5 ඔබන්න.

ඉන්පසු, සිසුන්ගේ නම සහ ඔවුන්ගේ අනුරූප ID සහ ලකුණු <10 පෙන්වීමට බහු නිර්ණායක සඳහා දත්ත කට්ටලය පෙරීමට ඔබට ඇත. සිසුන් සඳහා Jefferson , Emily , සහ Sara .

අදාළ අන්තර්ගතය: VBA එක්සෙල් හි අරාව මාරු කිරීමට (ක්‍රම 3)

ක්‍රමය-7: Array එකක බහු නිර්ණායක සහිත වගුව පෙරහන් කරන්න

මෙහි, අපට පහත වගුව ඇත, එහි නම Table1 සහ Excel VBA භාවිතා කරයි අපි Emily , Daniel , සහ යන නම් මත පදනම්ව මෙම වගුව පෙරීමට උත්සාහ කරමු Gabriel අරාවක බහු නිර්ණායක ලෙස.

පියවර :

ක්‍රමය-1 හි පියවර-01 අනුගමනය කරන්න.

➤ පහත කේතය ලියන්න

3532

මෙහි, ListObjects(“Table1”) වගුව නිර්වචනය කිරීම සඳහා වගුව1 , ක්ෂේත්‍රය:=2 මෙම පරාසයේ දෙවන තීරුව පෙරීමේ ක්‍රියාවලියේ පදනමක් ලෙස සැකසීම සඳහා භාවිතා කරන අතර අවසානයේ අපි අරාවක් නිර්වචනය කර ඇත. නිර්ණායක1 සඳහා බහු නම් අඩංගු වේ.

F5 ඔබන්න.

අවසානයේදී, ඔබට දත්ත කට්ටලය ලැබෙනු ඇත. සිසුන්ගේ නම සහ ඔවුන්ගේ අනුරූප ID සහ ලකුණු පෙන්වීම සඳහා බහු නිර්ණායක සඳහා පෙරා ඇත Emily , Daniel , සහ Gabriel .

තවත් කියවන්න: Excel VBA: සෛල අගය මත පදනම්ව පෙරහන් වගුව (පහසු ක්‍රම 6)

අභ්‍යාස කොටස

ප්‍රායෝගිකව සිදු කිරීම සඳහා ඔබ විසින්ම අපි අභ්‍යාස නම් පත්‍රයක පහත පරිදි අභ්‍යාස කොටස සපයා ඇත. කරුණාකර එය ඔබම කරන්න.

නිගමනය

මෙම ලිපියෙන්, අපි Excel <1 භාවිතයෙන් අරාවක් ලෙස බහු නිර්ණායක සමඟ පෙරීමේ ක්‍රම ආවරණය කිරීමට උත්සාහ කළෙමු>VBA පහසුවෙන්. ඔබට එය ප්‍රයෝජනවත් වනු ඇතැයි බලාපොරොත්තු වෙනවා. ඔබට කිසියම් යෝජනා හෝ ප්‍රශ්න ඇත්නම්, ඒවා අදහස් දැක්වීමේ කොටසෙහි බෙදා ගැනීමට නිදහස් වන්න.

Hugh West යනු ක්ෂේත්‍රයේ වසර 10කට වැඩි පළපුරුද්දක් ඇති ඉතා පළපුරුදු Excel පුහුණුකරුවෙකු සහ විශ්ලේෂකයෙකි. ඔහු ගිණුම්කරණය සහ මූල්‍ය පිළිබඳ ශාස්ත්‍රවේදී උපාධියක් සහ ව්‍යාපාර පරිපාලනය පිළිබඳ ශාස්ත්‍රපති උපාධියක් ලබා ඇත. හියු ඉගැන්වීම සඳහා දැඩි ආශාවක් ඇති අතර අනුගමනය කිරීමට සහ තේරුම් ගැනීමට පහසු වන අද්විතීය ඉගැන්වීම් ප්‍රවේශයක් වර්ධනය කර ඇත. ඔහුගේ Excel පිළිබඳ විශේෂඥ දැනුම ලොව පුරා සිටින දහස් ගණනක් සිසුන්ට සහ වෘත්තිකයන්ට ඔවුන්ගේ කුසලතා වැඩිදියුණු කිරීමට සහ ඔවුන්ගේ වෘත්තීය ජීවිතය තුළ විශිෂ්ටත්වයට පත් කිරීමට උපකාර කර ඇත. ඔහුගේ බ්ලොගය හරහා, හියු ඔහුගේ දැනුම ලෝකය සමඟ බෙදා ගනී, නොමිලේ එක්සෙල් නිබන්ධන සහ පුද්ගලයන්ට සහ ව්‍යාපාරවලට ඔවුන්ගේ පූර්ණ හැකියාවන් කරා ළඟා වීමට උපකාර කිරීමට මාර්ගගත පුහුණුව ලබා දෙයි.