Excel ۾ ڪسٽم فنڪشن جا فائدا ۽ نقصان

  • هن کي شيئر ڪريو
Michael Brown

اسان يوزر جي مقرر ڪيل ڪمن بابت سبقن جو سلسلو جاري ڪري رهيا آهيون. اسان جي پوئين مضمونن ۾، اسان حسب ضرورت ڪمن سان واقف ٿي چڪا آهيون ۽ سکيو ته انهن کي ڪيئن ٺاهيو ۽ استعمال ڪجي. هن مينوئل ۾ اسان انهن ڪمن کي استعمال ڪرڻ جي خصوصيتن تي نظر وجهنداسين ۽ UDFs ۽ VBA ميڪرو جي وچ ۾ فرق ڏسنداسين.

هن سبق ۾، اسين هيٺيون ڄاڻنداسين:

    اسان کي اميد آهي ته هي آرٽيڪل توهان جي UDF جي ڄاڻ کي وڌائيندو ۽ توهان جي ايڪسل ورڪ بڪ ۾ انهن کي اڃا به وڌيڪ اثرائتو استعمال ڪرڻ ۾ مدد ڪندو.

    ڇا UDF ۽ ميڪرو هڪ ئي شيءِ آهي؟

    ٻئي استعمال ڪندڙ مقرر ڪيل افعال ۽ VBA ميڪرو ٺاهيا ويا آهن VBA ايڊيٽر استعمال ڪندي. انهن ۾ ڪهڙو فرق آهي ۽ ڪهڙي شيءِ کي ترجيح ڏني وڃي؟

    سڀ کان اهم فرق اهو آهي ته فنڪشن حساب ڪري ٿو، ۽ ميڪرو ڪجهه عمل ڪري ٿو. ھڪڙو صارف بيان ڪيل فنڪشن، ھڪڙو باقاعده Excel فنڪشن وانگر، ھڪڙي سيل ۾ لکيل ھجڻ گھرجي. ان جي عمل جي نتيجي ۾، سيل کي ڪجهه قدر موٽائي ٿو. ساڳئي وقت، ٻين سيلن جي قدرن کي تبديل ڪرڻ ناممڪن آهي، انهي سان گڏ موجوده سيل جي ڪجهه ملڪيت (خاص طور تي، فارميٽنگ). تنهن هوندي، توهان مشروط فارميٽنگ فارمولن ۾ ڪسٽم فنڪشن استعمال ڪري سگهو ٿا.

    UDF ۽ VBA ميڪرو مختلف طريقن سان ڪم ڪن ٿا. مثال طور، جڏهن توهان Visual Basic Editor ۾ هڪ UDF ٺاهيندا آهيو، توهان هڪ بيان سان شروع ڪندا آهيو فنڪشن ۽ ختم ڪندا آهيو فنڪشن جي آخر سان. جڏهن توهان هڪ ميڪرو رڪارڊ ڪيو ٿا، توهان هڪ سان شروع ڪريوبيان Sub ۽ هڪ سان ختم ڪريو End Sub.

    سڀئي Visual Basic آپريٽرس UDFs ٺاهڻ لاءِ استعمال نٿا ڪري سگھجن. انهي سبب لاء، هڪ ميڪرو هڪ وڌيڪ ورسٽائل حل آهي.

    هڪ ميڪرو استعمال ڪندڙ کي ڪنهن به دليل کي پاس ڪرڻ جي ضرورت ناهي (نه ئي اهو ڪنهن به دليل کي قبول ڪري سگهي ٿو)، صارف جي بيان ڪيل فنڪشن جي برعڪس.

    نقطو اهو آهي ته ميڪروس جا ڪجهه حڪم سيل ايڊريس يا فارميٽنگ عناصر استعمال ڪري سگهن ٿا (مثال طور، رنگ). جيڪڏھن توھان سيلز کي منتقل ڪريو، قطار ۽ ڪالمن کي شامل ڪريو يا ختم ڪريو، سيلز جي شڪل کي تبديل ڪريو، پوء توھان آساني سان پنھنجي ميڪروز کي "بريڪ" ڪري سگھو ٿا. اهو خاص طور تي ممڪن آهي جيڪڏهن توهان پنهنجي فائل انهن ساٿين سان شيئر ڪريو جيڪي نٿا ڄاڻن ته توهان جا ميڪرو ڪيئن ڪم ڪن ٿا.

    مثال طور، توهان وٽ هڪ فائيل آهي مڪمل طور تي ڪم ڪندڙ ميڪرو سان. هي فارمولا سيل A1 کان A4 جو سيڪڙو حساب ڪري ٿو. ميڪرو انهن سيلن جو رنگ پيلو ۾ تبديل ڪري ٿو. هڪ فيصد فارميٽ فعال سيل ۾ مقرر ڪيو ويو آهي.

    جيڪڏهن توهان يا ڪو ٻيو فيصلو ڪيو ته نئين قطار داخل ڪرڻ جو، ميڪرو A4 سيل ۾ قيمت ڳولڻ جاري رکندو ( توهان جي UDF ۾ 4,1 پيٽرولر، ناڪام ٿيو ۽ هڪ غلطي واپس آڻيو:

    هن صورت ۾، غلطي پيدا ٿي وئي ورهائڻ جي ڪري صفر سان (نئين شامل ڪيل ۾ ڪابه قيمت ناهي قطار). صورت ۾ ميڪرو انجام ڏئي ٿو، اچو ته چئو، مجموعو، پوء توهان صرف هڪ غلط نتيجو حاصل ڪندا. پر توهان ان جي باري ۾ نه ڄاڻندا.

    ميڪرو جي برعڪس، صارف جي وضاحت ڪيل فنڪشن اهڙي ناپسنديده صورتحال پيدا نه ڪري سگهي ٿي.

    هيٺ توهان جي ڪارڪردگي ڏسو.ساڳيو حساب هڪ UDF استعمال ڪندي. هتي توهان ورڪ شيٽ ۾ ڪٿي به ان پٽ سيلز جي وضاحت ڪري سگهو ٿا ۽ ان کي تبديل ڪرڻ وقت توهان کي ڪنهن به غير متوقع مسئلي کي منهن نه ڏيڻو پوندو.

    مون هيٺ ڏنل فارمولا C3 ۾ لکيو:

    =UDF_vs_Macro(A1,A4)

    پوءِ مون هڪ خالي قطار داخل ڪئي، ۽ فارمولا تبديل ٿي ويو جيئن توهان مٿي ڏنل اسڪرين شاٽ ۾ ڏسي سگهو ٿا.

    هاڻي اسان هڪ ان پٽ سيل يا سيل کي ڪنهن فنڪشن سان ڪٿي به منتقل ڪري سگهون ٿا. نتيجو هميشه صحيح هوندو.

    UDFs استعمال ڪرڻ جو هڪ اضافي فائدو اهو آهي ته اهي خودڪار طور تي اپڊيٽ ٿي ويندا آهن جڏهن ان پٽ سيل ۾ قيمت تبديل ٿي ويندي آهي. macros استعمال ڪرڻ وقت، توھان کي ھميشه پڪ ڪرڻ گھرجي ته سمورو ڊيٽا تازه ترين آھي.

    ھن مثال کي ذهن ۾ رکندي، مان جتي به ممڪن ھو UDFs استعمال ڪرڻ کي ترجيح ڏيندس ۽ صرف ٻين غير حسابي سرگرمين لاءِ macros استعمال ڪريو.

    UDF استعمال ڪرڻ جون حدون ۽ نقصان

    مون اڳ ۾ ئي مٿي UDF جي فائدن جو ذڪر ڪيو آهي. ڊگھي ڪهاڻي مختصر، اهو حساب ڪري سگھي ٿو جيڪي معياري Excel افعال سان ممڪن نه آهن. ان کان سواء، اهو محفوظ ڪري سگهي ٿو ۽ ڊگھو ۽ پيچيده فارمول استعمال ڪري ٿو، انهن کي هڪ واحد فنڪشن ۾ تبديل ڪري ٿو. ۽ توهان کي بار بار پيچيده فارمولا لکڻ جي ضرورت نه پوندي.

    هاڻي اچو ته وڌيڪ تفصيل سان ڳالهايون UDF جي خامين بابت:

    • UDFs ٺاهڻ لاءِ VBA جي استعمال جي ضرورت آهي. ان جي چوڌاري ڪو رستو ناهي. هن جو مطلب اهو آهي ته صارف يو ڊي ايف کي ساڳئي طريقي سان رڪارڊ نٿو ڪري سگهي جيئن ايڪسل ميڪرو. توهان کي پنهنجو پاڻ کي UDF ٺاهڻو پوندو. بهرحال، توهان ڪاپي ڪري سگهو ٿا ۽اڳئين رڪارڊ ٿيل ميڪرو ڪوڊ جا حصا پنھنجي فنڪشن ۾ پيسٽ ڪريو. توهان کي صرف حسب ضرورت ڪمن جي حدن کان آگاهي ٿيڻ جي ضرورت آهي.
    • UDF جي هڪ ٻي خرابي اها آهي ته ڪنهن ٻئي ايڪسل فنڪشن وانگر اهو صرف هڪ واحد قيمت يا قدرن جي هڪ صف کي سيل ۾ واپس ڪري سگهي ٿو. اهو صرف حسابن کي انجام ڏئي ٿو، وڌيڪ ڪجھ به نه.
    • جيڪڏهن توهان پنهنجي ڪم بڪ کي پنهنجن ساٿين سان حصيداري ڪرڻ چاهيو ٿا، پڪ ڪريو ته توهان جي UDFs کي ساڳئي فائل ۾ محفوظ ڪريو. ٻي صورت ۾، توهان جا ڪسٽم فنڪشن انهن لاءِ ڪم نه ڪندا.
    • VBA ايڊيٽر سان ٺاهيل حسب ضرورت افعال باقاعده افعال کان سست هوندا آهن. اهو خاص طور تي وڏي ٽيبل ۾ قابل ذڪر آهي. بدقسمتي سان، VBA اڃا تائين تمام سست پروگرامنگ ٻولي آهي. تنهن ڪري، جيڪڏهن توهان وٽ تمام گهڻو ڊيٽا آهي، جڏهن به ممڪن هجي معياري فنڪشن استعمال ڪرڻ جي ڪوشش ڪريو، يا LAMBDA فنڪشن استعمال ڪندي UDFs ٺاهيو.

    ڪسٽم فنڪشن جون حدون:

    • UDFs آهن ڳڻپيوڪر انجام ڏيڻ ۽ قيمت واپس ڪرڻ لاء ٺهيل. اهي ميڪرو جي جاءِ تي استعمال نٿا ڪري سگهجن.
    • اهي ڪنهن ٻئي سيل (صرف فعال سيل) جي مواد کي تبديل نٿا ڪري سگهن.
    • فنڪشن جا نالا ڪجهه ضابطن تي عمل ڪرڻ گهرجن. مثال طور، توھان ھڪڙو نالو استعمال نٿا ڪري سگھو جيڪو مقامي Excel فنڪشن جي نالي يا سيل ايڊريس سان ملندو آھي، جھڙوڪ AB123.
    • توھان جي ڪسٽم فنڪشن نالي ۾ خالن تي مشتمل نه ٿي سگھي، پر اھو انڊر اسڪور ڪردار شامل ڪري سگھي ٿو. بهرحال، ترجيحي طريقو اهو آهي ته هر نئين جي شروعات ۾ سرمائي اکر استعمال ڪرڻلفظ (مثال طور، GetMaxBetween).
    • هڪ UDF سيلز کي ڪاپي ۽ پيسٽ نٿو ڪري سگهي ورڪ شيٽ جي ٻين علائقن ڏانهن.
    • اهي فعال ورڪ شيٽ کي تبديل نٿا ڪري سگهن.
    • UDFs ڪري سگهن ٿا. فعال سيل ۾ فارميٽنگ تبديل نه ڪريو. جيڪڏھن توھان چاھيو ٿا ته سيل جي فارميٽنگ کي تبديل ڪرڻ وقت مختلف قدرن کي ڏيکاريندي، توھان کي مشروط فارميٽنگ استعمال ڪرڻ گھرجي.
    • اھي اضافي ڪتاب نه کولي سگھن ٿيون.
    • اھي کي ايپليڪيشن استعمال ڪندي ميڪرو هلائڻ لاءِ استعمال نه ٿو ڪري سگھجي.OnTime .
    • هڪ صارف جو بيان ڪيل فنڪشن ميڪرو رڪارڊر استعمال ڪري نه ٿو ٺاهي سگهجي.
    • فنڪشنز ۾ ظاهر نه ٿيندا آهن ڊولپر > Macros dialog.
    • توهان جا افعال ڊائلاگ باڪس ۾ ظاهر ٿيندا ( Insert > Function ) ۽ فنڪشن جي لسٽ ۾ صرف ان صورت ۾ جڏهن انهن کي عوامي<7 قرار ڏنو وڃي> (هي ڊفالٽ آهي، جيستائين ٻي صورت ۾ نوٽ نه ڪيو وڃي).
    • ڪنهن به فنڪشن جو اعلان ڪيو ويو آهي پرائيويٽ فيچر لسٽ ۾ ظاهر نه ٿيندو.

    ڪافي سست آپريشن , انهي سان گڏ استعمال ۾ ڪجهه پابنديون، شايد توهان کي سوچڻ تي مجبور ڪري سگهون ٿا: "انهن رواجي ڪمن جو استعمال ڇا آهي؟"

    اهي ڪم ۾ اچي سگهن ٿا، ۽ ڪندا جيڪڏهن اسان انهن تي لاڳو ڪيل پابندين کي ياد رکون ٿا. جيڪڏهن توهان سکو ته ڪيئن صحيح طريقي سان ٺاهيو ۽ استعمال ڪيو UDFs، توهان لکي سگهو ٿا پنهنجي لائبريري جي افعال جي. اهو Excel ۾ ڊيٽا سان ڪم ڪرڻ جي توهان جي صلاحيت کي تمام گهڻو وڌائيندو.

    جيئن ته منهنجي لاءِ، ڪسٽم فنڪشن بهترين وقت بچائيندڙ آهن. ۽ توهان ڪيئن آهيو؟ ڇا توھان اڳ ۾ ئي ڪوشش ڪئي آھي پنھنجو UDF ٺاھيو؟ ڇا توهان ان کي پسند ڪيوبنيادي Excel افعال کان بهتر؟ اچو ته ان تي تبصرن ۾ بحث ڪريون :)

    مائيڪل براون هڪ سرشار ٽيڪنالاجي جوش آهي جيڪو سافٽ ويئر اوزار استعمال ڪندي پيچيده عملن کي آسان ڪرڻ جي جذبي سان. ٽيڪنيڪي صنعت ۾ ڏهاڪن کان وڌيڪ تجربي سان، هن پنهنجي صلاحيتن کي Microsoft Excel ۽ Outlook، گڏوگڏ Google Sheets ۽ Docs ۾ ساراهيو آهي. مائيڪل جو بلاگ وقف ڪيو ويو آهي پنهنجي علم ۽ مهارت کي ٻين سان شيئر ڪرڻ لاءِ، پيداوار ۽ ڪارڪردگي کي بهتر ڪرڻ لاءِ آسان پيروي ڪرڻ واريون صلاحون ۽ سبق مهيا ڪرڻ لاءِ. چاهي توهان هڪ تجربيڪار پيشه ور آهيو يا شروعاتي، مائيڪل جو بلاگ انهن ضروري سافٽ ويئر اوزارن مان وڌ کان وڌ فائدو حاصل ڪرڻ لاءِ قيمتي بصيرتون ۽ عملي صلاحون پيش ڪري ٿو.