وی بی اے کاؤنٹر | ایکسل وی بی اے میں کاؤنٹر کیسے بنائیں؟ (مثالوں کے ساتھ)

ایکسل وی بی اے کاؤنٹر

ایم ایس ایکسل میں اقدار کی گنتی کے لئے مختلف فنکشن موجود ہیں چاہے وہ اسٹرنگ ، نمبرز ہوں۔ گنتی کچھ معیار کی بنیاد پر کی جاسکتی ہے۔ افعال میں ایکسل میں COUNT ، COUNTA ، COUNTBLANK ، COUNTIF ، اور COUNTIFS شامل ہیں۔ تاہم ، یہ افعال کچھ کام نہیں کرسکتے ہیں جیسے خلیوں کو ان کے رنگ کی بنیاد پر گننا ، صرف جرات مندانہ قدروں کی گنتی کرنا وغیرہ۔ اسی وجہ سے ہم وی بی اے میں ایک کاؤنٹر بنائیں گے تاکہ ہم اس طرح کے کاموں کو ایکسل میں گن سکتے ہیں۔

آئیے ایکسل وی بی اے میں کچھ کاؤنٹر بنائیں۔

ایکسل وی بی اے کاؤنٹر کی مثالیں

آپ یہ وی بی اے کاؤنٹر ایکسل سانچہ ڈاؤن لوڈ کرسکتے ہیں۔ وی بی اے کاؤنٹر ایکسل ٹیمپلیٹ

ذیل میں وی بی اے میں کاؤنٹر کی مثالیں ہیں۔

مثال # 1

فرض کریں ، ہمارے پاس 32 قطاروں کے ل for اعداد و شمار کی طرح ہے۔ ہم ایک وی بی اے کاؤنٹر بنائیں گے ، جو اقدار کی گنتی کرے گا ، جو 50 سے زیادہ ہیں اور اقدار کی گنتی کے لئے ایک اور کاؤنٹر ، جو 50 سے کم ہیں۔ ہم اس طرح سے وی بی اے کوڈ بنائیں گے تاکہ صارف کو ڈیٹا حاصل ہوسکے۔ ایکسل میں لامحدود قطاریں۔

ایسا کرنے کے لئے ، اقدامات یہ ہوں گے:

یقینی بنائیں کہ ڈویلپر ٹیب ایکسل نظر آتا ہے۔ ٹیب کو مرئی بنانے کے ل ((اگر نہیں) تو ، اقدامات یہ ہیں:

پر کلک کریں ‘فائل’ ربن میں ٹیب اور منتخب کریں ‘آپشن’ فہرست سے

منتخب کریں ‘حسب ضرورت ربن ’ فہرست میں سے ، باکس کو چیک کریں ‘ڈویلپر’، اور پر کلک کریں ٹھیک ہے.

اب ‘ڈویلپر’ ٹیب دکھائی دے رہا ہے

استعمال کرتے ہوئے کمانڈ بٹن داخل کریں ‘داخل کریں’ میں دستیاب کمانڈ ’کنٹرول‘ گروپ میں ‘ڈویلپر’ ٹیب.

دبانے کے دوران ALT کلید ، ماؤس کے ساتھ کمانڈ بٹن تشکیل دیں۔ اگر ہم دباؤ ڈالتے رہیں ALT کی، پھر کمانڈ بٹن کے کناروں سیلوں کی سرحد کے ساتھ خود بخود چلے جاتے ہیں۔

سیاق و سباق کے مینو کو کھولنے کے لئے کمانڈ کے بٹن پر دائیں کلک کریں (یقینی بنائیں ‘ڈیزائن وضع’ چالو ہے ورنہ ہم سیاق و سباق کے مینو کو نہیں کھول پائیں گے)۔

منتخب کریں ’’ پراپرٹیز ‘‘ مینو سے

کمانڈ بٹن کی خصوصیات یعنی نام ، عنوان اور فونٹ وغیرہ کو تبدیل کریں۔

دوبارہ دائیں کلک کریں اور منتخب کریں ‘کوڈ دیکھیں’ سیاق و سباق کے مینو سے

اب بصری بنیادی ایڈیٹر کھول دیا گیا ہے اور پہلے سے طے شدہ طور پر ، کمانڈ بٹن کے لئے پہلے سے ہی ایک سبروٹائن تیار کی گئی ہے۔

اب ہم کوڈ لکھیں گے۔ ہم 3 متغیرات کا اعلان کریں گے۔ لوپ مقصد کے ل One ایک ، گننے کے ل and ایک اور آخری قطار کے ل the قیمت کو ذخیرہ کرنے کے لئے۔

ہم کوڈ کا استعمال سیل A1 اور پھر سیل A1 کے موجودہ خطے کو منتخب کرنے کے لئے کریں گے اور پھر آخری بھری ہوئی قطار نمبر حاصل کرنے کے لئے آخری بھرے ہوئے قطار میں اتریں گے۔

ہم چلائیں گے a ‘کے لئے’ A کالم میں A2 سیل میں آخری بھرے سیل تک لکھی ہوئی اقدار کی جانچ کرنے کے لئے VBA میں لوپ کریں۔ ہم کی قیمت میں اضافہ کریں گے ‘کاؤنٹر’ اگر قیمت 50 سے زیادہ ہے اور سیل کے فونٹ کا رنگ تبدیل کردے گا تو 1 کے ذریعہ متغیر کریں ‘نیلا’ اور اگر قیمت 50 سے کم ہے تو سیل کا فونٹ رنگ ہوگا ’سرخ‘.

جانچ پڑتال اور گنتی کے بعد ، ہمیں اقدار کو ظاہر کرنے کی ضرورت ہے۔ ایسا ہی کرنے کے ل we ، ہم استعمال کریں گے ‘VBA MsgBox‘۔

کوڈ:

 پرائیویٹ سب کاؤنٹیگینگ سیلزبیلو_کلک () دائم i ، انٹیجر ڈیم لاسٹرو جیسا لانگ لاسٹرو = رینج ("A1") کاؤنٹر کریں۔ کرینٹریجن۔ ایینڈ (xlDown). I = 2 کے لیرو کرنے کے لئے اگر سیل (i، 1). قیمت> 50 پھر کاؤنٹر = کاؤنٹر + 1 سیل (i ، 1). فونٹ کالر انڈیکس = 5 دوسرے سیل (i، 1). فونٹ کلور انڈیکس = 3 ختم ہوتا ہے اگر اگلا i MsgBox "وہاں" & "کاؤنٹر &" ویلیوز ہیں جو 50 سے زیادہ ہیں " & _ vbCrLf & "یہاں" & آخری / انسداد اور "اقدار جو 50 سے کم ہیں" آخر سب 

غیر فعال کریں ‘ڈیزائن وضع’ اور پر کلک کریں ‘کمانڈ بٹن’. نتیجہ اس طرح ہوگا۔

مثال # 2

فرض کریں کہ ہم ایکسل وی بی اے کا استعمال کرتے ہوئے ٹائم کاؤنٹر تشکیل دینا چاہتے ہیں۔

اگر ہم پر کلک کریں ’اسٹارٹ‘ بٹن ، ٹائمر شروع ہوتا ہے اور اگر ہم پر کلک کریں ‘رکو’ بٹن ، ٹائمر رک جاتا ہے۔

ایسا کرنے کے لئے ، اقدامات یہ ہوں گے:

ایکسل شیٹ میں اس طرح کا فارمیٹ بنائیں۔

سیل A2 کی شکل کو بطور تبدیل کریں ‘ح: ملی میٹر: ایس ایس’.

ضم کریں اور سنٹر ایکسل کا استعمال کرکے سیل C3 میں G7 ملا دیں میں کمانڈ ‘صف بندی’ گروپ میں ‘ہوم’ ٹیب.

صرف ضم شدہ سیل کے لئے سیل A2 کا حوالہ دیں اور پھر فارمیٹنگ کریں جیسے فونٹ کو طرز بنائیں ‘باسکرویل’، فونٹ کا سائز 60 ، وغیرہ۔

کمانڈ کے دو بٹن بنائیں ’اسٹارٹ‘ اور ‘رکو’ کا استعمال کرتے ہوئے ’داخل کریں‘ کمانڈ میں دستیاب ہے ’کنٹرول‘ گروپ میں ‘ڈویلپر’ ٹیب.

کا استعمال کرتے ہوئے ’’ پراپرٹیز ‘‘ کا حکم میں دستیاب ہے ’کنٹرول‘ گروپ میں ‘ڈویلپر’ ٹیب، خصوصیات تبدیل کریں۔

ایک ایک کرکے کمانڈ کے بٹن کو منتخب کریں اور منتخب کریں ‘کوڈ دیکھیں’ سے کمانڈ ‘کنٹرولز’ میں گروپ ‘ڈویلپر’ مندرجہ ذیل کوڈ کو لکھنے کے لئے ٹیب.

ڈراپ ڈاؤن سے مناسب کمانڈ بٹن میں سے انتخاب کریں۔

میں ایک ماڈیول داخل کریں ‘اس ورک بک‘ پر دائیں کلک کرکے ‘اس ورک بک’ اور پھر منتخب کریں ‘داخل کریں’ اور پھر ‘ماڈیول’.

ماڈیول میں درج ذیل کوڈ لکھیں۔

کوڈ:

 سب اسٹارٹ ٹائم () ایپلیکیشن.اوائم ٹائم + ٹائم ویلیو ("00:00:01") ، "اگلا_ لمحے" اختتام سب سب ٹائم_ٹائم () ایپلی کیشن۔ ابھی ٹائم ویلیو ("00:00:01") ، "اگلے_ لمحے" ، ، جھوٹی اختتام سب سب اگلے_ لمحے () اگر ورکشیٹس ("ٹائم کاؤنٹر"). حد ("A2"). قدر = 0 پھر سب ورکشیٹ ("وقت کاؤنٹر") سے باہر نکلیں۔ حد ("A2"). قیمت = ورک شیٹس ("وقت کاؤنٹر ")۔ حد (" A2 ")۔ قیمت - ٹائم ویلیو (" 00:00:01 ") شروع_ٹائم اختتام سب 

ہم نے استعمال کیا ہے ‘وقت پرکے طریقہ کار درخواست آبجیکٹ ، جو ایک مقررہ وقت پر عمل کو چلانے کے لئے استعمال ہوتا ہے۔ طریقہ کار ، جس کو ہم چلانے کے لئے طے کر چکے ہیں ، ہے "اگلے_ لمحے".

کوڈ کو محفوظ کریں۔ A2 سیل میں وقت لکھیں اور پر کلک کریں ’اسٹارٹ‘ وقت کاؤنٹر شروع کرنے کے لئے بٹن.

مثال # 3

فرض کیج. ، ہمارے پاس طلباء کی ایک فہرست موجود ہے جس کے ساتھ ان کے پاس کردہ نمبر ہیں۔ ہم ان طلباء کی گنتی کرنا چاہتے ہیں جو پاس ہوئے اور کون ناکام ہوئے۔

ایسا کرنے کے ل we ، ہم VBA کوڈ لکھیں گے۔

اقدامات یہ ہوں گے:

دبانے سے بصری بنیادی ایڈیٹر کھولیں ایکسل ALT + F11 میں شارٹ کٹ اور ڈبل پر کلک کریں ‘شیٹ 3 (طلباء کی گنتی کی تعداد)’ شیٹ 3 میں واقعہ کی بنیاد پر ایک سبروٹین داخل کرنا۔

منتخب کریں ‘ورکشیٹ’ ڈراپ ڈاؤن سے

جیسا کہ ہم چنتے ہیں ‘ورکشیٹ’ فہرست سے ، ہم دیکھ سکتے ہیں ، ملحقہ ڈراپ ڈاؤن میں مختلف واقعات ہوتے ہیں۔ ہمیں منتخب کرنے کی ضرورت ہے ‘سلیکشن چینج’ فہرست سے

ہم VBA متغیر کا اعلان کریں گے ‘پچھلا’ آخری قطار نمبر کو اسٹور کرنے کے ل students جو طلباء کی فہرست میں اضافہ ہوسکتا ہے ، ‘پاس’ پاس کرنے والے متعدد طلباء کو اسٹور کرنے اور ‘ناکام‘ ناکام ہونے والے متعدد طلباء کو اسٹور کرنا۔

ہم آخری قطار نمبر کی قیمت کو اندر اسٹور کریں گے ‘لاسٹرو’۔

ہم تخلیق کریں گے ‘for’ لوپ شرط پر مبنی گنتی کے لئے۔

ہم نے یہ شرط رکھی ہے کہ اگر کل نمبر 99 سے زیادہ ہیں تو 1 کی قدر میں اضافہ کریں ‘پاس’ متغیر اور 1 کی قیمت میں شامل کریں ‘ناکام‘ متغیر اگر حالت ناکام ہوجاتی ہے۔

آخری بیان سرخی بناتا ہے ‘خلاصہ’ بولڈ

شیٹ میں اقدار کو پرنٹ کرنے کے لئے ، کوڈ یہ ہوگا:

کوڈ:

 پرائیویٹ سب ورکشیٹ_سلیکشنچینج (بذریعہ وال ٹارگٹ رینج بطور) لمب لمب جب تک انٹیجر ڈیم پاس ہوتا ہے انٹیجر ڈیروم = رینج ("A1") کی حیثیت سے ناکام ہوجاتا ہے۔ کرنٹ ریزن.انڈ (ایکس ایل ڈاون) )> 99 پھر پاس = پاس +1 دوسری فیل = فیل + 1 ختم اگر سیل (1 ، 7)۔ فونٹ۔ بولڈ = ٹرسٹ اگلا I رینج ("جی 1")۔ ویلیو = "خلاصہ" حد ("جی 2")۔ ویلیو = "پاس ہونے والے طلبا کی تعداد" & پاس کی حد ("G3") ہے۔ ویلیو = "ناکام ہونے والے طلبا کی تعداد" ہے اور اختتام سب 

اب جب بھی سلیکشن میں کوئی تبدیلی ہوگی ، اقدار کا دوبارہ نیچے حساب سے حساب کیا جائے گا:

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

  1. VBS میں .xlsm ایکسل توسیع کے ساتھ کوڈ لکھنے کے بعد فائل کو محفوظ کریں ورنہ میکرو کام نہیں کرے گا۔
  2. جب '' فار '' لوپ کا استعمال پہلے ہی طے کرلیا جائے کہ کتنی بار وی بی اے لوپ میں کوڈ چلے گا۔