Excel VBA හි 2D Array නැවත ඩිම් කරන්නේ කෙසේද (පහසු මාර්ග 2)

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

අරාවක් යනු එකම ආකාරයේ දත්ත තබා ගන්නා විචල්‍යයකි. දත්ත එක් පේළියක් හෝ එක් තීරුවක් පමණක් තිබේ නම්, එය ඒකමාන අරාවක් ලෙස හැඳින්වේ. කෙසේ වෙතත්, පේළි සහ තීරු එකකට වඩා ඇති විට, එය 2D අරාවක් ලෙස හැඳින්වේ. VBA හි අරාවක ප්‍රමාණය වෙනස් කිරීමට අපි ReDim භාවිත කරමු. මීට අමතරව, පැරණි දත්ත නොවෙනස්ව තබා ගැනීමට අපි Preserve මූලපදය ReDim සමඟ භාවිතා කරමු. මෙම ලිපිය ඔබට 2 ඉක්මන් ක්‍රම පෙන්වයි Excel VBA<හි 2D array ReDim Preserv ” 3> .

පුහුණු වැඩපොත බාගන්න

Macro to ReDim Preserv 2D.xlsm

2 පහසු ප්‍රවේශයන් ReDim Preserv 2D Array in Excel VBA

මෙය පේළි තුනක් සහ තීරු දෙකක් සහිත 2D array කින් සාදන ලද මූලික දත්ත කට්ටලයයි. මුලින්ම අපි මේ array එක හදමු. ඉන්පසුව, අපි මෙම අරාවට තවත් තීරුවක් එකතු කරමු. අපි එසේ කිරීමට “ ReDim Preserv ” භාවිත කරන්නෙමු. මීට අමතරව, අපි මෙය භාවිතා නොකරන්නේ නම් කුමක් සිදුවේද යන්න අපි නිරූපණය කරන්නෙමු.

පෙරනිමියෙන්, අපට ප්‍රතිප්‍රමාණය කළ හැක්කේ අරාවේ අවසාන මානය (එනම් තීරු හෝ ඉහළ මායිම) පමණි. අපි අරාව මාරු කරන්නෙමු, පසුව අවසාන මානය වෙනස් කරන්නෙමු, ඉන්පසු Excel VBA හි 2D array හි මානයන් දෙකම ප්‍රතිප්‍රමාණ කිරීමට නැවත මාරු කරන්නෙමු.

1 ReDim Preserv Last Dimension 2D Array

අපි මුලින්ම 2D array ගතික ලෙස අර්ථ දක්වන්නෙමු. ඉන්පසුව, ReDim ප්‍රකාශය භාවිතයෙන්, අපි නිර්මාණය කරන්නෙමුපේළි තුනක් සහ තීරු දෙකක් සහිත අරාව. අවසාන වශයෙන්, අපි නැවතත් ReDim ප්‍රකාශය Preserve මූලපදය ට භාවිතා කරමු ද්විමාන අරාවේ ඉහළ සීමාව වැඩි කරන්න.

පියවර:

  • ආරම්භ කිරීමට, ALT+F11 ඔබන්න VBA Module කවුළුව ගෙන ඒමට. විකල්පයක් ලෙස, ඔබට මෙය සංවර්ධක ටැබය වෙතින් කළ හැක → දෘශ්‍ය මූලික තෝරන්න.
  • ඉන්පසු, <වෙතින් 1> ඇතුළු කරන්න tab → මොඩියුලය තෝරන්න. අපි මෙහි VBA කේතය ටයිප් කරන්නෙමු.

  • ඊළඟට මොඩියුලයේ පහත කේතය ටයිප් කරන්න. window.
1263

VBA කේත බිඳවැටීම

  • පළමුව, අපි අමතන්නෙමු උප පටිපාටිය Redim_Preserve_2D_Array_Row ”.
  • ඉන්පසු, අපි Our_Array විචල්‍යය ගතික අරාවක් ලෙස ප්‍රකාශ කරමු.
  • ඊළඟට, අපි අරාවේ ප්‍රමාණය නිර්වචනය කරමු. පහළ මායිම 3 , ඉහළ මායිම 2 , සහ දෙකම ආරම්භ වන්නේ 1 .
  • ඉන්පසු, අපි අරාවට අගයන් පවරමු. .
  • ඉන් පසුව, අපි C6:D8 සෛල පරාසයට අගයන් ඇතුළත් කරමු.
  • ඉන් පසුව, අපි කේතය ක්‍රියාත්මක කරනු ඇත.
  • එබැවින්, මොඩියුලය සුරකින්න සහ ධාවනය<ඔබන්න .

  • ප්‍රතිඵලයක් ලෙස, එය අගයන් අර්ථ දක්වා ඇති කොටු පරාස වෙත ආපසු ලබාදේ. " Rachel " පේළිය 1 සහ තීරුව 1 ස්ථානයේ ඇති බව අපට දැකිය හැක,එය VBA කේතයේ ( 1,1 ) ලෙස අර්ථ දක්වා ඇත.

  • දැන්, අපි අරාව ප්‍රමාණය වෙනස් කරන්නෙමු.
  • ඉතින්, මෙය පෙර කේතයට එකතු කර පළමු පරාසය.අගය ප්‍රකාශය ඉවත් කරන්න. එපමනක් නොව, පහත ඡායාරූපයෙන් ඔබට පෙනෙන පරිදි කේතය පෙනෙන්නේ කෙසේද.
4892

  • මෙහි, අපි ( සිට ඉහළ සීමාව වැඩි කර ඇත. 1 සිට 2 ) සිට ( 1 සිට 3 ) 1 .
  • ඉන්පසු, අපි අරාවට අගයන් එකතු කර ඇත.
  • දැන් අපි මෙම කේතය ක්‍රියාත්මක කළහොත්, පෙර අගයන් සංරක්ෂණය කර නොමැති බව අපට පෙනෙනු ඇත. එය පෙර අගයන් සඳහා හිස්ව ආපසු එනු ඇත.

  • දැන්, Preserve keyword වෙත එකතු කිරීමෙන් අපට මෙය නිවැරදි කළ හැක. 1>ReDim ප්‍රකාශය .
  • අවසාන වශයෙන්, අපගේ සම්පූර්ණ කේතය මෙය වනු ඇත.
7234

  • දැන්, අපි නම් Run මේ code එක, එතකොට output එක මේ වගේ වෙයි. මේ අනුව, අපි Excel VBA හි 2D array ක අවසාන මානය “ ReDim Preserv ” කරන්නෙමු.. දැන්, ඊළඟ ක්‍රමය මඟින් ඔබට “ ReDim කරන්නේ කෙසේදැයි පෙන්වනු ඇත. ” සංරක්ෂණය කර අරාවේ මානයන් දෙකම ප්‍රමාණය වෙනස් කරන්න.

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

සමාන කියවීම්

  • Excel හි වගු අරාවක් නම් කරන්නේ කෙසේද (සමග පහසු පියවර)
  • CSV ගොනුව අරාවට කියවීමට Excel VBA (පරමාදර්ශී උදාහරණ 4)
  • එක්සෙල් හි පරාසය අරාවට පරිවර්තනය කරන්නේ කෙසේදVBA (ක්‍රම 3ක්)
  • Excel VBA: Array එකකින් අනුපිටපත් ඉවත් කරන්න (උදාහරණ 2)

2. ReDim Preserve Dimensions දෙකම 2D Array in Excel VBA

මෙම අවසාන ක්‍රමයේදී, අපි ඔබට ප්‍රමාණය වෙනස් කිරීමට සහ 2D array ReDim Preserv ” සඳහා පියවර පෙන්වමු. මෙන්න, අපි අරාවේ පහළ මායිම ප්‍රතිප්‍රමාණ කිරීමට VBA Transpose ශ්‍රිතය භාවිතා කරන්නෙමු. අපි පළමු ක්‍රමයේදී අරාවේ පහළ මායිම ප්‍රතිප්‍රමාණ කිරීමට උත්සාහ කළහොත්, එවිට අපට “ උපසිද්ධිය පරාසයෙන් පිටත ” දෝෂය පෙනෙනු ඇත. දැන්, වැඩි කතා නැතුව, අපි බලමු කොහොමද මේක හදාගෙන අපේ ඉලක්කය සපුරා ගන්නේ කියලා.

පියවර:

  • පළමුව, පළමු ක්‍රමයේ පෙන්වා ඇති පරිදි , මොඩියුලය කවුළුව ගෙන එන්න.
  • දෙවනුව, පහත කේත රේඛා එකට එක් කරන්න. පළමු කේතය.
2532
  • තවද, අවසාන ක්‍රමය සඳහා කේතය මෙලෙස දිස්වේ.
2865

VBA කේත බිඳවැටීම

  • පළමුව, අපි උප ක්‍රියා පටිපාටිය ReDim_Preserve_2D_Array_Both_Dimensions ” ලෙස හඳුන්වමු. .
  • ඉන්පසු, VBA Transpose ශ්‍රිතය දක්වා ඇති ඉතිරි කේත පළමු කේතයේ ඇති ආකාරයටම වේ.
  • මෙහි, අපි අරාව මාරු කරනවා.
  • ඉන්පසු, අපි අරාවේ ඉහළ මායිම වැඩි කරනවා.
  • ඊට පස්සේ, අපි නැවතත් අරාව මාරු කරනවා. එබැවින්, අවසානයේ එය පහළ සීමාව වෙනස් කරනු ඇත.
  • ඊළඟට, අපි ප්‍රමාණය වෙනස් කළ අරාව සඳහා අගයන් ඇතුළත් කරමු.පැරණි දත්ත සංරක්ෂණය කිරීම.
  • අවසාන වශයෙන්, අපි සෛල පරාසයට අගයන් ලියන්නෙමු C6:E9 .
  • පසු එය, පළමු ක්‍රමයේ පෙන්වා ඇති පරිදි , ධාවනය කරන්න මෙම කේතය.
  • මේ අනුව, කේතය සංරක්ෂණය කරන ආකාරය අපට දෘශ්‍යමාන කළ හැක. 2D array ReDim Preserv ” සහ VBA Transpose ශ්‍රිතය භාවිතයෙන්.

වැඩිදුර කියවන්න: VBA to Transpose Array in Excel (ක්‍රම 3)

මතක තබා ගත යුතු දේවල්

    14> ReDim Preserv හට අරාවේ පහළ සීමාව වෙනස් කළ නොහැක. එසේ කිරීමට, අපට Transpose ශ්‍රිතය භාවිත කිරීමට අවශ්‍ය වේ.
  • අපට භාවිතා කළ හැක්කේ ගතික අරා මත ReDim පමණි.

නිගමනය

අපි ඔබට Excel VBA හි 2D array ReDim Preserv ” කිරීමට ඉක්මන් ක්‍රම දෙකක් පෙන්වා ඇත. ඔබට මෙම ක්‍රම සම්බන්ධයෙන් කිසියම් ගැටළුවක් ඇත්නම් හෝ මා සඳහා කිසියම් ප්‍රතිපෝෂණයක් ඇත්නම්, පහත අදහස් දැක්වීමට නිදහස් වන්න. තවද, ඔබට තවත් Excel සම්බන්ධ ලිපි සඳහා අපගේ වෙබ් අඩවිය ExcelWIKI වෙත පිවිසිය හැක. කියවීමට ස්තූතියි, දිගටම විශිෂ්ට වන්න!

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