مواد جي جدول
هڪ صف هڪ متغير آهي جيڪو ساڳئي قسم جي ڊيٽا کي رکي ٿو. جيڪڏهن ڊيٽا جي صرف هڪ قطار يا هڪ ڪالمن آهي، پوء ان کي هڪ-dimensional صف طور سڃاتو وڃي ٿو. جڏهن ته، جڏهن هڪ کان وڌيڪ قطار ۽ ڪالمن آهي، ان کي 2D صف سڏيو ويندو آهي. اسان استعمال ڪريون ٿا ReDim VBA ۾ هڪ صف کي ٻيهر ڪرڻ لاءِ. اضافي طور تي، اسان پراڻي ڊيٽا کي برقرار رکڻ لاءِ محفوظ ڪريو ڪي ورڊ ريڊيم سان استعمال ڪريون ٿا. هي آرٽيڪل توهان کي ڏيکاريندو 2 تڪڙو طريقا “ ReDim Preserve ” a 2D array in Excel VBA .
مشق ورڪ بڪ ڊائون لوڊ ڪريو
Macro to ReDim Preserve 2D.xlsm
2 آسان طريقا ReDim Preserve 2D Array in Excel VBA
هي بنيادي ڊيٽا سيٽ آهي جيڪو هڪ 2D صف مان ٺاهيو ويو آهي ٽن قطارن ۽ ٻن ڪالمن سان. سڀ کان پهريان، اسان هي صف ٺاهينداسين. ان کان پوء، اسان هن صف ۾ هڪ ٻيو ڪالم شامل ڪنداسين. ائين ڪرڻ لاءِ اسان ” ReDim Preserve “ استعمال ڪنداسين. اضافي طور تي، اسان ڏيکارينداسين ته ڇا ٿيندو جيڪڏهن اسان هي استعمال نه ڪندا آهيون.
ڊفالٽ طور، اسان صرف صف جي آخري طول و عرض (يعني ڪالمن يا اپر بائونڊ) کي تبديل ڪري سگھون ٿا. اسان آري کي منتقل ڪنداسين، پوءِ آخري طول و عرض کي تبديل ڪنداسين، ۽ پوءِ ايڪسل VBA ۾ 2D array جي ٻنهي طول و عرض کي ٻيهر تبديل ڪرڻ لاءِ.
1 ReDim Preserve Last Dimension 2D Array
اسان سڀ کان پهريان 2D array کي متحرڪ طور بيان ڪنداسين. پوء، استعمال ڪندي ReDim بيان، اسان هڪ ٺاهينداسينٽن قطارن ۽ ٻن ڪالمن سان صف. آخر ۾، اسان استعمال ڪنداسين ReDim بيان ٻيهر محفوظ ڪريو ڪي ورڊ سان ٻه طرفي صف جي مٿئين بائونڊ کي وڌايو.
Steps:
- شروع ڪرڻ لاءِ، دٻايو ALT+F11 آڻڻ لاءِ VBA ماڊل ونڊو. متبادل طور تي، توھان ھي ڪري سگھو ٿا ڊولپر ٽئب → منتخب ڪريو Visual Basic .
- پوءِ، مان Insert tab → منتخب ڪريو Module . اسان هتي VBA ڪوڊ ٽائيپ ڪنداسين.
- اڳيون، هيٺ ڏنل ڪوڊ ٽائيپ ڪريو ماڊيول window.
9086
VBA ڪوڊ بريڪ ڊائون 5>
- پهريون، اسان سڏي رهيا آهيون ذيلي طريقيڪار “ Redim_Preserve_2D_Array_Row “.
- پوءِ، اسان variable Our_Array کي متحرڪ صف طور بيان ڪريون ٿا.
- اڳيون، اسان صف جي سائيز جي وضاحت ڪريون ٿا. هيٺيون بائونڊ 3 آهي، مٿئين بائونڊ 2 آهي، ۽ ٻئي 1 کان شروع ٿين ٿا.
- پوءِ، اسان صفن کي قدر ڏيون ٿا. .
- ان کان پوءِ، اسان قيمتون داخل ڪريون ٿا C6:D8 سيل رينج ۾.
- ان کان پوءِ، اسان ڪوڊ تي عمل ڪندو.
- تنهنڪري، محفوظ ڪريو ماڊيول ۽ دٻايو چلايو .
19>
- نتيجي طور، اهو قدر واپس ڪندو سيل جي مقرر ڪيل حدن ڏانهن. اسان ڏسي سگهون ٿا ته " Rachel " قطار ۾ آهي 1 ۽ ڪالمن 1 پوزيشن،جنهن جي وضاحت ڪئي وئي ( 1,1 ) VBA ڪوڊ ۾.
- هاڻي، اسان صف کي ري سائز ڪنداسين.
- تنهنڪري، هن کي پوئين ڪوڊ ۾ شامل ڪريو ۽ پهرين Range.Value بيان کي هٽايو. ان کان علاوه، ڪوڊ ڪيئن ڏسڻ ۾ اچي ٿو توھان ھيٺ ڏنل سنيپ شاٽ مان ڏسي سگھو ٿا.
6353
- 14>هتي، اسان مٿيون حدون وڌايون آھن ( 1 To 2 ) to ( 1 To 3 ) by 1 .
- پوءِ، اسان آري ۾ ويلز شامل ڪيون آهن.
- هاڻي جيڪڏهن اسان هن ڪوڊ کي عمل ۾ آڻينداسين ته پوءِ ڏسنداسين ته اڳيون قيمتون محفوظ نه آهن. اهو پوئين قدرن لاءِ خالي موٽندو.
- هاڻي، اسان ان کي درست ڪري سگھون ٿا محفوظ لفظ کي شامل ڪري ريڊيم بيان .
- آخرڪار، اسان جو پورو ڪوڊ هي هوندو.
2473
23>
- هاڻي، جيڪڏهن اسان رن هي ڪوڊ، پوءِ آئوٽ پٽ هن طرح ٿيندو. ان ڪري، اسان ايڪسل VBA ۾ 2D array جي آخري ڊيمينشن کي ” ReDim Preserve “ ڪنداسين. هاڻي، ايندڙ طريقو توهان کي ڏيکاريندو ته ڪيئن ڪجي “ ReDim“ محفوظ ڪريو ” ۽ صف جي ٻنهي طول و عرض کي تبديل ڪريو.
وڌيڪ پڙهو: منفرد حاصل ڪرڻ لاءِ VBA ايڪسل ۾ ڪالمن کان آري ۾ قدر (3 معيار)
ساڳيا پڙھڻ
- سليم ۾ ٽيبل ايري کي ڪيئن نالو ڏيو (ساتھ آسان قدم)
- Excel VBA CSV فائل کي صف ۾ پڙهڻ لاءِ (4 مثالي مثال)
- ڪيئن بدلجي رينج کي ايڪسل ۾ ايري ۾VBA (3 طريقا)
- Excel VBA: هڪ صف مان نقل ڪڍو (2 مثال)
2. ريڊم ٻنهي طول و عرض کي 2D صف ۾ محفوظ ڪريو Excel VBA
هن آخري طريقي ۾، اسان توهان کي ري سائز ڪرڻ جا قدم ڏيکارينداسين ۽ “ ReDim Preserve ” 2D array . هتي، اسان استعمال ڪنداسين VBA ٽرانسپوز فنڪشن کي آري جي هيٺين بائونڊ کي ٻيهر ڪرڻ لاءِ. جيڪڏهن اسان پهرين طريقي ۾ آري جي هيٺين بائونڊ کي ري سائز ڪرڻ جي ڪوشش ڪئي ته پوءِ اسان ڏسنداسين “ Subscript out of range ” غلطي. ھاڻي، وڌيڪ اُداس کانسواءِ، اچو ته ڏسون ته ڪيئن اسان ان کي درست ڪري سگھون ٿا ۽ پنھنجو مقصد حاصل ڪري سگھون ٿا. پهريون، جيئن پهرين طريقي ۾ ڏيکاريو ويو آهي ، مٿي آڻيو ماڊيول ونڊو.
2525
- ان کان علاوه، آخري طريقي جو ڪوڊ هن طرح نظر اچي ٿو.
8714
VBA ڪوڊ بريڪ ڊائون
- سڀ کان پهريان، اسان ڪال ڪري رهيا آهيون ذيلي طريقيڪار " ReDim_Preserve_2D_Array_Both_Dimensions " .
- پوءِ، باقي ڪوڊ VBA ٽرانسپوز فنڪشن تائين ساڳيا آهن جيئن پهرين ڪوڊ ۾.
- هتي، اسان آري کي منتقل ڪري رهيا آهيون.
- پوءِ، اسان صف جي مٿئين حد کي وڌائي رهيا آهيون.
- ان کان پوءِ، اسان ٻيهر صف کي منتقل ڪريون ٿا. تنهن ڪري، آخرڪار اهو هيٺئين بائونڊ کي تبديل ڪندو.
- اڳيون، اسان ان پٽ ڪريون ٿا قدرن کي ريزائز ٿيل صف لاءِ جڏهنپراڻي ڊيٽا کي محفوظ ڪرڻ.
- آخر ۾، اسان سيل جي حد تائين قيمت لکون ٿا C6:E9 .
- بعد ۾ اهو، جيئن پهرين طريقي ۾ ڏيکاريو ويو آهي ، چلايو هي ڪوڊ.
- ان ڪري، اسان تصور ڪري سگهون ٿا ته ڪوڊ ڪيئن محفوظ ڪري ٿو 2D array استعمال ڪندي “ ReDim Preserve ” ۽ VBA Transpose فنڪشن.
وڌيڪ پڙهو: VBA to Transpose Array in Excel (3 طريقا)
ياد رکڻ جون شيون
- > ريڊم محفوظ 4> صف جي هيٺين حد کي تبديل نٿو ڪري سگهي. ائين ڪرڻ لاءِ، اسان کي استعمال ڪرڻ جي ضرورت پوندي Transpose فنڪشن.
- اسان صرف استعمال ڪري سگهون ٿا ReDim متحرڪ صفن تي.
نتيجو
اسان توهان کي ڏيکاريا آهن ٻه تڪڙو طريقا “ ReDim Preserve ” a 2D array Excel VBA ۾. جيڪڏهن توهان انهن طريقن جي حوالي سان ڪنهن به مسئلن کي منهن ڏيو يا مون لاء ڪا راءِ آهي، هيٺ تبصرو ڪرڻ لاء آزاد محسوس ڪريو. ان کان علاوه، توھان ڏسو اسان جي سائيٽ ExcelWIKI وڌيڪ Excel سان لاڳاپيل مضمونن لاءِ. پڙهڻ لاءِ مهرباني، شاندار رهو!