📁 ITDCESM - ہفتہ 8: پاور ٹولز – جدید ڈیٹا تجزیہ اور خودکاری کی مہارت


 

📁 ITDCESM - ہفتہ 8: پاور ٹولز – جدید ڈیٹا تجزیہ اور خودکاری کی مہارت

📅 تاریخ نشر: 21 فروری، 2026 (جمعہ، صبح 9 بجے)
⏱️ اندازہ شدہ مطالعہ کا وقت: 50 منٹ (پریکٹس کے ساتھ 80 منٹ)


🔍 پچھلے ہفتے کے چیلنج کا جواب

سوال تھا:

  1. کیا ایکسل کا میکرو والی فائل (.xlsx) ای میل سے بھیجنے پر دوسرا شخص بھی Ctrl+Shift+R سے فارمیٹنگ حاصل کر سکے گا؟

  2. کیا گوگل شیٹس کا Apps Script شیئر کردہ شیٹ میں دوسرے شخص کے لیے چلنے کے قابل ہوگا؟

جواب:

  1. ایکسل میکرو: عام طور پر نہیں۔ مقامی طور پر ریکارڈ شدہ میکرو اس مخصوص فائل کے اندر محفوظ ہوتا ہے۔ تاہم، اگر آپ کی فائل .xlsm (میکرو ایبل فارمیٹ) میں سیو ہو، اور دوسرے شخص نے میکرو چلانے کی سیکیورٹی سیٹنگز (Trust Center) میں اجازت دے رکھی ہو، تو وہ میکرو چلا سکتا ہے۔ لیکن اس کے لیے اسے ڈاؤن لوڈ کر کے اور میکروز کو ان ایبل کرنا پڑے گا۔ براہ راست آن لائن کوئی میکرو شیئر نہیں ہوتا۔

  2. گوگل شیٹس Apps Script: ہاں، لیکن شرائط کے ساتھ۔ شیئر کردہ شیٹ کا Apps Script کوڈ شیٹ کے ساتھ منسلک ہوتا ہے۔ جس کسی کے پاس شیٹ ایڈٹ کی اجازت ہوگی، وہ اسکرپٹ کو چلا سکے گا۔ تاہم، اگر اسکرپٹ کسی حساس Google سروس (جیسے Gmail بھیجنا، Drive میں فائل بنانا) تک رسائی مانگتا ہے، تو ہر نئے صارف کو پہلی بار اس کی علیحدہ اجازت دینی پڑے گی۔

خلاصہ: ایکسل میکرو زیادہ تر مقامی استعمال کے لیے ہے جبکہ شیٹس Apps Script تعاون (Collaboration) کے لیے زیادہ موزوں ہے، لیکن سیکورٹی کی وجہ سے ہر صارف کو اجازت دینا پڑتی ہے۔


🎯 اس ہفتے کا مقصد

ایکسل اور شیٹس کی آخری اور طاقتور ترین خصوصیات کو سمجھنا جو آپ کو ڈیٹا کی دنیا میں حقیقی ماہر بناتی ہیں۔ آپ سیکھیں گے کہ پاور کوئری (Power Query) کے ذریعے گندے ڈیٹا کو کیسے صاف کیا جاتا ہے، QUERY فنکشن سے کیسے ڈیٹابیس کی طرح تجزیہ کیا جاتا ہے، اور مکمل خودکاری کے پروجیکٹ کیسے بنائے جاتے ہیں۔

📖 بنیادی تصورات: آخری حدود عبور کرنا

  1. پاور کوئری (ایکسل) اور Apps Script (شیٹس) کا موازنہ:

    • پاور کوئری: ڈیٹا کو تبدیل کرنے، صاف کرنے اور یکجا کرنے کا بصری (Visual) اور طاقتور آلہ۔ یہ ڈیٹا کو ایک عبوری شکل میں لاتا ہے جسے بعد میں اپ ڈیٹ کرنا آسان ہوتا ہے۔

    • Apps Script: شیٹس کے لیے مکمل پروگرامنگ ماحول۔ یہ نہ صرف خودکاری کرتا ہے بلکہ دیگر Google سروسز (Gmail, Drive, Calendar) سے بھی مربوط ہو سکتا ہے۔

  2. QUERY فنکشن (شیٹس) کا فلسفہ: یہ فنکشن SQL (ڈیٹابیسی زبان) کی طرز پر کام کرتا ہے۔ آپ اسے "میرے ڈیٹا سے یہ بتاؤ..." کہہ کر سوال (Query) پوچھتے ہیں۔ مثال: "SELECT نام, پوسٹس WHERE پوسٹس > 100 ORDER BY پوسٹس DESC"۔ یہ بہت طاقتور ہے۔

  3. خودکاری کا مکمل چکر: کسی مسئلے کو ان پٹ (Input) > پراسیس (Process) > آؤٹ پٹ (Output) کے طور پر دیکھنا۔ مثلاً: ان پٹ (نیا ڈیٹا)، پراسیس (پاور کوئری میں صفائی)، آؤٹ پٹ (پائیوٹ ٹیبل اور چارٹ)۔

🛠️ عملی مشق: طاقتور ٹولز کی ورکشاپ

مرحلہ 1: پاور کوئری کے ساتھ ڈیٹا کو صاف کرنا (ایکسل)

📍 صرف ایکسل میں (Power Query):

  1. ایک نئی ورک بک میں گندے ڈیٹا کے طور پر مندرجہ ذیل ٹیبل بنائیں (A1 سے شروع):

    تاریخپروڈکٹفروخت
    01-01-2026A100
    نا معلومB150
    03-01-2026AN/A
  2. ڈیٹا کے کسی سیل پر کلک کریں۔ ڈیٹا ٹیب > "گیٹ اینڈ ٹرانسفارم ڈیٹا (Get & Transform Data)" گروپ > "فرم ٹیبل/رینج (From Table/Range)" پر کلک کریں۔

  3. پاور کوئری ایڈیٹر کھل جائے گا۔ "نا معلوم" والے سیل پر رائٹ کلک کریں > "ریپلیس ویلیوز..." (Replace Values) > "نا معلوم" کو "01-02-2026" سے بدلیں۔

  4. "فروخت" کالم کے ہیڈر پر موجود ABC/123 آئیکن پر کلک کریں اور "ویلیو کو غلطیوں کے طور پر تبدیل کریں (Replace Errors)" منتخب کریں، ویلیو 0 ڈالیں۔

  5. ہوم ٹیب > "کلوز اینڈ لوڈ (Close & Load)" پر کلک کریں۔

  6. دیکھیں! آپ کی اصل شیٹ کے بجائے ایک نئی شیٹ میں صاف شدہ ڈیٹا آ گیا ہے۔

مرحلہ 2: QUERY فنکشن سے ڈیٹا کی تلاش (شیٹس)

📍 صرف گوگل شیٹس میں (QUERY Function):

  1. مندرجہ ذیل ڈیٹا بنائیں (A1 سے C6):

    نامشعبہپوسٹس
    علیپروگرامنگ150
    سارہڈیزائن85
    احمدنیٹ ورکنگ200
    فاطمہپروگرامنگ175
    بلالڈیزائن95
  2. کسی خالی سیل (مثلاً E1) میں یہ QUERY فارمولا درج کریں:
    =QUERY(A1:C6, "SELECT A, C WHERE C > 100 ORDER BY C DESC", 1)

    • A1:C6: ڈیٹا کی حد۔

    • "SELECT A, C": کالم A (نام) اور C (پوسٹس) دکھاؤ۔

    • "WHERE C > 100": صرف وہ قطاریں جہاں پوسٹس 100 سے زیادہ ہوں۔

    • "ORDER BY C DESC": پوسٹس کے لحاظ سے اترتی (زیادہ سے کم) ترتیب میں۔

    • 1: یہ بتاتا ہے کہ پہلی قطار میں ہیڈرز موجود ہیں۔

  3. Enter دبائیں۔ نتیجہ صرف علی، احمد اور فاطمہ کے نام اور پوسٹس نظر آئیں گے، جو 100 سے زیادہ پوسٹس رکھتے ہیں اور زیادہ سے کم کے حساب سے ترتیب شدہ۔

مرحلہ 3: ایک بنیادی مکمل خودکاری پروجیکٹ (Apps Script - ای میل نوٹیفیکیشن)

📍 صرف گوگل شیٹس میں (Apps Script):

  1. Extensions > Apps Script کھولیں۔

  2. نیا اسکرپٹ فائل بنائیں اور مندرجہ ذیل کوڈ مکمل طور پر درج کریں۔ یہ اسکرپٹ ایک ٹرگر لگا کر خودکار ای میل بھیجے گا جب کسی نئے رکن کا ڈیٹا شامل ہو:

    javascript
    function onFormSubmitSendEmail(e) {
      // e.values میں فوم سے آنے والا نیا ڈیٹا ہوتا ہے
      var name = e.values[1]; // فرض کریں دوسرا کالم نام ہے
      var email = e.values[2]; // تیسرا کالم ای میل ہے
      var subject = "ITDCESM میں خوش آمدید!";
      var body = "عزیز " + name + "،\n\nITDCESM کورس میں آپ کی رجسٹریشن کی تصدیق ہو گئی ہے۔\nہمارے فورم پر آپ کا استقبال ہے۔\n\nشکریہ،\nITDarasgah ٹیم";
      
      // ای میل بھیجیں
      MailApp.sendEmail(email, subject, body);
    }
  3. سیو کریں اور پروجیکٹ کو "onFormSubmitSendEmail" کے نام سے سیو کریں۔

  4. ایک Google Form بنائیں جو اس شیٹ سے جڑا ہو۔ اس فارم سے جب کوئی نئی انٹری آئے گی تو Apps Script خود بخود یہ فنکشن چلائے گا اور ای میل بھیجے گا۔ (یہ ایک ایڈوانسڈ ٹرگر سیٹ اپ ہے، جس کے لیے Triggers سیکشن میں جا کر فنکشن کو "On form submit" پر سیٹ کرنا ہوگا)۔

💼 اسائنمنٹ: ITDarasgah بیرونی ڈیٹا اینالیٹکس سوئٹ

📋 مسئلہ کا بیان: فورم کی کارکردگی کا جائزہ لینے کے لیے مختلف ذرائع سے ڈیٹا جمع ہوتا ہے (مثلاً: فورم لاگ ایک فائل، سروے کے نتائج دوسری جگہ)۔ آپ کا کام ایک ایسا ماسٹر ڈیش بورڈ بنانا ہے جو:

  1. پاور کوئری (ایکسل) یا IMPORTRANGE + QUERY (شیٹس) کے ذریعے مختلف ذرائع کے ڈیٹا کو یکجا اور صاف کرے۔

  2. QUERY فنکشن (شیٹس) یا ایڈوانسڈ پائیوٹ (ایکسل) کے ذریعے ان یکجا ڈیٹا سے مخصوص سوالوں کے جواب (مثلاً: "ہر ماہ کے پہلے ہفتے میں سب سے زیادہ کون سا شعبہ فعال رہا؟") نکالے۔

  3. (اختیاری) ایک خودکار رپورٹ بنائے جو ہفتے کے آخر پر مخصوص نتائج کو پی ڈی ایف کی شکل میں یا ای میل کے ذریعے بھیجے۔

✅ حتمی نتیجہ:

  • ایک مرکزی ڈیش بورڈ جو مختلف ذرائع سے زندہ (Live) ڈیٹا کھینچتا ہے۔

  • ایک پاور کوئری ماڈل (ایکسل) یا QUERY فارمولا نیٹ ورک (شیٹس)۔

  • (اختیاری) ایک خودکار رپورٹنگ سسٹم کا بنیادی خاکہ۔

📥 ٹیمپلیٹ ڈاؤن لوڈ / کاپی کریں:

  • [ایکسل ٹیمپلیٹ ڈاؤن لوڈ کریں (ITDCESM_Week8_Template.xlsx)]

  • [شیٹس ٹیمپلیٹ کاپی کریں]

⚡ ہفتہ وار ٹرک: LET فنکشن (ایکسل) اور ARRAYFORMULA (شیٹس)

یہ ایڈوانسڈ فارمولے کو آسان بنانے والے ٹولز ہیں۔

  • LET فنکشن (ایکسل): لمبے فارمولوں میں وسطی قدریں (Variables) محفوظ کرنے کے لیے۔ مثال:
    =LET(x, A1*10, y, B1*5, x+y)۔ یہاں x اور y متغیر ہیں۔ یہ فارمولے کو پڑھنے میں آسانی پیدا کرتا ہے۔

  • ARRAYFORMULA (شیٹس): ایک ہی فارمولا پورے کالم پر لاگو کرنے کے لیے۔ مثال: اگر آپ D کالم میں ہر سیل کے لیے =A1*B1 کا فارمولا لگانا چاہتے ہیں، تو صرف D1 میں لکھیں:
    =ARRAYFORMULA(A1:A100 * B1:B100)۔ یہ پورے رینج کے لیے کام کر دے گا۔

✅ ہفتہ 8 کی سیلف چیک لسٹ

  • پاور کوئری/صفائی: کیا میں گندے ڈیٹا (Missing Values, Errors) کو پاور کوئری (ایکسل) یا بنیادی فنکشنز (شیٹس) کے ذریعے صاف کرنے کا تصور سمجھتا ہوں؟

  • QUERY فنکشن: کیا میں QUERY فنکشن (شیٹس) کا بنیادی سینٹیکس سمجھتا ہوں اور ایک سادہ SELECT...WHERE...ORDER BY سوال لکھ سکتا ہوں؟

  • خودکاری کا خاکہ: کیا میں ایک مکمل خودکاری پروجیکٹ (ان پٹ، پراسیس، آؤٹ پٹ) کے بنیادی ڈھانچے کو سمجھتا ہوں، چاہے وہ میکرو، Apps Script یا پاور کوئری کے ذریعے ہو؟

  • ایڈوانسڈ فارمولے: کیا میں LET (ایکسل) یا ARRAYFORMULA (شیٹس) جیسے ایڈوانسڈ فارمولے بلاک کی افادیت کو سمجھتا ہوں؟

📎 اضافی وسائل

  • [اختیاری ویڈیو لنک]: "Power Query for Beginners: Clean & Transform Data"

  • [اختیاری ویڈیو لنک]: "Google Sheets QUERY Function Tutorial"

❓ ہفتہ وار چیلنج سوال

آپ نے QUERY فنکشن استعمال کرتے ہوئے ایک ماسٹر ڈیش بورڈ بنایا ہے جو پورے فورم کا ڈیٹا دکھاتا ہے۔ فرض کریں آپ صرف ایک مخصوص فورم منتظم (مثلاً "احمد") کو وہی ڈیش بورڈ دینا چاہتے ہیں، لیکن صرف اس کے اپنے زیرِ انتظام شعبے کا ڈیٹا دکھانا چاہتے ہیں۔

  1. کیا آپ QUERY فنکشن کے علاوہ کوئی اور سادہ طریقہ بتا سکتے ہیں جس سے ڈیش بورڈ کو دیکھنے والا شخص (احمد) اپنی مرضی کا شعبہ منتخب کر سکے اور صرف وہی ڈیٹا دیکھ سکے؟ (ہنٹ: ہم نے یہ فیچر پہلے بھی سیکھا تھا)۔

  2. اگر آپ شیٹس استعمال کر رہے ہیں، اور آپ چاہتے ہیں کہ احمد کو بغیر کسی بٹن دبائے، شیٹ کھولتے ہی اس کا اپنا شعبہ فوراً نظر آ جائے، تو اس کے لیے آپ اسکرپٹ میں کس خاص معلومات کا استعمال کر سکتے ہیں؟ (ہنٹ: یہ اس کے Google اکاؤنٹ سے متعلق ہے)۔

(جواب اگلے ہفتے شروع میں دیا جائے گا!)


کوئی تبصرے نہیں:

ایک تبصرہ شائع کریں