ایکسل VBA (2 آسان طریقے) میں 2D اری کو دوبارہ سے کیسے محفوظ کیا جائے

  • اس کا اشتراک
Hugh West

ایک صف ایک متغیر ہے جو ایک ہی قسم کا ڈیٹا رکھتا ہے۔ اگر ڈیٹا کی صرف ایک قطار یا ایک کالم ہے، تو اسے ایک جہتی صف کے طور پر جانا جاتا ہے۔ تاہم، جب ایک سے زیادہ قطار اور کالم ہوتے ہیں، تو اسے 2D صف کہا جاتا ہے۔ ہم VBA میں ایک صف کا سائز تبدیل کرنے کے لیے ReDim کا استعمال کرتے ہیں۔ مزید برآں، ہم پرانے ڈیٹا کو برقرار رکھنے کے لیے محفوظ کریں کی ورڈ ReDim کے ساتھ استعمال کرتے ہیں۔ یہ مضمون آپ کو Excel VBA<میں 2 " ReDim Preserve " a 2D array کے فوری طریقے دکھائے گا۔ 3> .

پریکٹس ورک بک ڈاؤن لوڈ کریں

میکرو ٹو ریڈیم پریزرو 2D.xlsm

2 آسان طریقہ ایکسل VBA میں ReDim Preserve 2D Array

یہ بنیادی ڈیٹاسیٹ ہے جو تین قطاروں اور دو کالموں کے ساتھ 2D array سے بنایا گیا ہے۔ سب سے پہلے، ہم یہ صف بنائیں گے۔ پھر، ہم اس صف میں ایک اور کالم شامل کریں گے۔ ایسا کرنے کے لیے ہم " ReDim Preserve " کا استعمال کریں گے۔ مزید برآں، ہم یہ ظاہر کریں گے کہ اگر ہم اسے استعمال نہیں کرتے ہیں تو کیا ہوتا ہے۔

بطور ڈیفالٹ، ہم صرف صف کی آخری جہت (یعنی کالم یا اوپری باؤنڈ) کا سائز تبدیل کر سکتے ہیں۔ ہم صف کو منتقل کریں گے، پھر آخری جہت کو تبدیل کریں گے، اور پھر ایکسل VBA میں 2D array کے دونوں جہتوں کا سائز تبدیل کرنے کے لیے دوبارہ منتقل کریں گے۔

1 ReDim Preserve Last Dimension 2D Array

ہم پہلے 2D array کو ڈائنامک کے طور پر بیان کریں گے۔ پھر، ReDim بیان کا استعمال کرتے ہوئے، ہم ایک بنائیں گے۔تین قطاروں اور دو کالموں کے ساتھ صف۔ آخر میں، ہم ReDim بیان کو دوبارہ محفوظ کریں کی ورڈ کے ساتھ استعمال کریں گے۔ دو جہتی صف کی اوپری حد کو بڑھائیں۔

مرحلہ:

  • شروع کرنے کے لیے، دبائیں ALT+F11 VBA ماڈیول ونڈو کو لانے کے لیے۔ متبادل طور پر، آپ یہ ڈیولپر ٹیب سے کر سکتے ہیں →  منتخب کریں Visual Basic .
  • پھر، سے داخل کریں ٹیب → منتخب کریں ماڈیول ۔ ہم یہاں VBA کوڈ ٹائپ کریں گے۔

  • اس کے بعد، درج ذیل کوڈ کو ماڈیول میں ٹائپ کریں۔ window.
2988

VBA کوڈ کی خرابی

  • سب سے پہلے، ہم کال کر رہے ہیں ذیلی طریقہ کار " Redim_Preserve_2D_Array_Row
  • پھر، ہم متغیر Our_Array کو ایک متحرک صف کے طور پر قرار دیتے ہیں۔
  • اگلا، ہم صف کے سائز کی وضاحت کرتے ہیں۔ نچلی حد 3 ہے، اوپری باؤنڈ 2 ہے، اور دونوں کا آغاز 1 سے ہوتا ہے۔
  • پھر، ہم صف کو قدریں تفویض کرتے ہیں۔ .
  • اس کے بعد، ہم اقدار کو C6:D8 سیل رینج میں داخل کرتے ہیں۔
  • اس کے بعد، ہم کوڈ پر عمل درآمد کرے گا۔
  • تو، محفوظ کریں ماڈیول اور دبائیں چلائیں ۔

  • نتیجتاً، یہ قدروں کو سیل رینجز میں واپس کر دے گا۔ ہم دیکھ سکتے ہیں کہ " Rachel " قطار 1 اور کالم 1 پوزیشن میں ہے،جس کی تعریف VBA کوڈ میں ( 1,1 ) کے طور پر کی گئی تھی۔

  • اب، ہم صف کا سائز تبدیل کریں گے۔
  • لہذا، اسے پچھلے کوڈ میں شامل کریں اور پہلے Range.Value اسٹیٹمنٹ کو ہٹا دیں۔ مزید یہ کہ، کوڈ کیسا لگتا ہے آپ نیچے اسنیپ شاٹ سے دیکھ سکتے ہیں۔
7620

  • یہاں، ہم نے اوپری باؤنڈ کو ( ) سے بڑھا دیا ہے۔ 1 To 2 ) to ( 1 To 3 ) بذریعہ 1 .
  • پھر، ہم نے اری میں ویلیو شامل کر دی ہے۔
  • اب اگر ہم اس کوڈ کو چلاتے ہیں، تو ہم دیکھیں گے کہ پچھلی قدریں محفوظ نہیں ہیں۔ یہ پچھلی قدروں کے لیے خالی واپس آئے گا۔

  • اب، ہم کی ورڈ محفوظ کریں کو <میں شامل کرکے اسے ٹھیک کرسکتے ہیں۔ 1>ریڈیم اسٹیٹمنٹ ۔
  • آخر میں، ہمارا مکمل کوڈ یہ ہوگا۔
8026

  • اب، اگر ہم چلائیں اس کوڈ کو، پھر آؤٹ پٹ اس طرح ہوگا۔ اس طرح، ہم ایکسل VBA میں 2D ارے کی آخری جہت کو " ReDim Preserve " کریں گے۔. اب اگلا طریقہ آپ کو دکھائے گا کہ کیسے " ReDim کرنا ہے۔ " کو محفوظ رکھیں اور صف کے دونوں جہتوں کا سائز تبدیل کریں۔

مزید پڑھیں: منفرد حاصل کرنے کے لیے VBA ایکسل میں کالم سے صف میں قدریں (3 معیار)

اسی طرح کی ریڈنگز

  • ایکسل میں ٹیبل ارے کو کیسے نام دیا جائے (کے ساتھ) آسان اقدامات)
  • سی ایس وی فائل کو صف میں پڑھنے کے لیے ایکسل VBA (4 مثالی مثالیں)
  • ایکسل میں رینج کو صف میں کیسے تبدیل کیا جائےVBA (3 طریقے)
  • Excel VBA: ایک صف سے ڈپلیکیٹس کو ہٹا دیں (2 مثالیں)

2. ReDim دونوں ڈائمینشنز 2D ارے کو محفوظ رکھیں ایکسل VBA

اس آخری طریقہ میں، ہم آپ کو سائز تبدیل کرنے کے اقدامات اور " ReDim Preserve " 2D array دکھائیں گے۔ یہاں، ہم VBA Transpose فنکشن کا استعمال کریں گے تاکہ ارے کی نچلی حد کا سائز تبدیل کیا جاسکے۔ اگر ہم نے پہلے طریقہ میں صف کی نچلی حد کا سائز تبدیل کرنے کی کوشش کی، تو ہمیں " سب اسکرپٹ آؤٹ آف رینج " کی خرابی نظر آئے گی۔ اب، مزید اڈو کے بغیر، آئیے دیکھتے ہیں کہ ہم اسے کیسے ٹھیک کر سکتے ہیں اور اپنا مقصد کیسے حاصل کر سکتے ہیں۔ سب سے پہلے، جیسا کہ پہلے طریقہ میں دکھایا گیا ہے ، ماڈیول ونڈو کو سامنے لائیے۔

  • دوسرے طور پر، کوڈ کی درج ذیل لائنیں کوڈ میں شامل کریں۔ پہلا کوڈ۔
  • 2686
    • مزید برآں، حتمی طریقہ کا کوڈ اس طرح لگتا ہے۔
    8922

    VBA کوڈ کی خرابی

    • سب سے پہلے، ہم ذیلی طریقہ کار " ReDim_Preserve_2D_Array_Both_Dimensions " کو کال کر رہے ہیں۔ .
    • پھر، VBA ٹرانسپوز فنکشن تک کے باقی کوڈ پہلے کوڈ کی طرح ہی ہیں۔
    • یہاں، ہم ارے کو منتقل کر رہے ہیں۔
    • پھر، ہم ارے کی اوپری باؤنڈ کو بڑھا رہے ہیں۔
    • اس کے بعد، ہم ارے کو دوبارہ منتقل کرتے ہیں۔ لہذا، بالآخر یہ نچلی حد کو تبدیل کر دے گا۔
    • اس کے بعد، ہم سائز تبدیل کیے گئے سرنی کے لیے اقدار داخل کرتے ہیں جبپرانے ڈیٹا کو محفوظ کرنا۔
    • آخر میں، ہم سیل رینج C6:E9 میں اقدار لکھتے ہیں۔
    • بعد کہ، جیسا کہ پہلے طریقہ میں دکھایا گیا ہے ، چلائیں اس کوڈ کو۔
    • اس طرح، ہم تصور کر سکتے ہیں کہ کوڈ کس طرح کو محفوظ رکھتا ہے۔ 2D array " ReDim Preserve " اور VBA Transpose فنکشن کا استعمال کرتے ہوئے۔

    مزید پڑھیں: ایکسل میں سرنی کو منتقل کرنے کے لیے VBA (3 طریقے)

    یاد رکھنے کی چیزیں

    • ReDim Preserve صف کی نچلی حد کو تبدیل نہیں کرسکتا۔ ایسا کرنے کے لیے، ہمیں Transpose فنکشن استعمال کرنے کی ضرورت ہے۔
    • ہم صرف ReDim کو متحرک صفوں پر استعمال کرسکتے ہیں۔
    • <16

      نتیجہ

      ہم نے آپ کو ایکسل VBA میں " ReDim Preserve " a 2D array کے دو فوری طریقے دکھائے ہیں۔ اگر آپ کو ان طریقوں سے متعلق کوئی پریشانی کا سامنا کرنا پڑتا ہے یا میرے لئے کوئی رائے ہے تو نیچے تبصرہ کرنے کے لئے آزاد محسوس کریں۔ مزید برآں، آپ ایکسل سے متعلق مزید مضامین کے لیے ہماری سائٹ ExcelWIKI ملاحظہ کر سکتے ہیں۔ پڑھنے کے لیے شکریہ، شاندار رہیں!

    ہیو ویسٹ ایک انتہائی تجربہ کار ایکسل ٹرینر اور تجزیہ کار ہے جس کا انڈسٹری میں 10 سال سے زیادہ کا تجربہ ہے۔ انہوں نے اکاؤنٹنگ اور فنانس میں بیچلر کی ڈگری اور بزنس ایڈمنسٹریشن میں ماسٹر کی ڈگری حاصل کی۔ ہیو کو پڑھانے کا جنون ہے اور اس نے ایک منفرد تدریسی نقطہ نظر تیار کیا ہے جس کی پیروی کرنا اور سمجھنا آسان ہے۔ ایکسل کے بارے میں ان کے ماہرانہ علم نے دنیا بھر میں ہزاروں طلباء اور پیشہ ور افراد کو اپنی صلاحیتوں کو بہتر بنانے اور اپنے کیریئر میں بہترین کارکردگی دکھانے میں مدد کی ہے۔ اپنے بلاگ کے ذریعے، ہیو اپنے علم کو دنیا کے ساتھ بانٹتا ہے، مفت Excel سبق اور آن لائن تربیت کی پیشکش کرتا ہے تاکہ افراد اور کاروبار کو ان کی مکمل صلاحیت تک پہنچنے میں مدد ملے۔