Excel: ڳولھيو ۽ ھڪڙي ئي وقت ۾ گھڻن قدرن کي تبديل ڪريو

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

هن سبق ۾، اسين گھڻن لفظن، اسٽرنگ، يا انفرادي اکرن کي ڳولڻ ۽ بدلائڻ جا ڪيترائي طريقا ڏسنداسين، ته جيئن توھان ھڪڙو چونڊي سگھوٿا جيڪو توھان جي ضرورتن لاءِ بھترين مناسب آھي.

ماڻهو عام طور تي Excel ۾ ڪيئن ڳوليندا آهن؟ گهڻو ڪري، استعمال ڪندي ڳوليو ۽ amp؛ خصوصيت کي تبديل ڪريو، جيڪو اڪيلو قدرن لاءِ ٺيڪ ڪم ڪري ٿو. پر ڇا جيڪڏهن توهان وٽ ڏهه يا سوين شيون تبديل ڪرڻ لاءِ آهن؟ يقينن، ڪو به نه چاهيندو ته اهي سڀئي متبادل دستي طور تي هڪ هڪ ڪري، ۽ پوء اهو سڀ ڪجهه ٻيهر ڪريو جڏهن ڊيٽا تبديل ٿي وڃي. خوشقسمتيءَ سان، ايڪسل ۾ وڏي پئماني تي متبادل ڪرڻ لاءِ ڪجھ وڌيڪ اثرائتو طريقا آھن، ۽ اسين انھن مان ھر ھڪ کي تفصيل سان جاچڻ وارا آھيون.

    گھڻن قدرن کي ڳولھيو ۽ مٽايو nested SUBSTITUTE

    Excel ۾ گھڻن داخلائن کي ڳولڻ ۽ تبديل ڪرڻ جو آسان طريقو SUBSTITUTE فنڪشن استعمال ڪرڻ آھي.

    فارمولا جي منطق تمام سادو آھي: توھان ڪجھ انفرادي فنڪشن لکندا آھيو ھڪڙي پراڻي قدر کي نئين سان تبديل ڪرڻ لاءِ . ۽ پوءِ، توهان انهن ڪمن کي هڪ ٻئي ۾ نسٽ ڪريو ٿا، ته جيئن هر ايندڙ SUBSTITUTE اڳئين SUBSTITUTE جي آئوٽ پٽ کي استعمال ڪري ايندڙ قدر ڳولڻ لاءِ.

    SUBSTITUTE(SUBSTITUTE(SUBSTITUTE( text, old_text1, new_text1), old_text2, new_text2), old_text3, new_text3)

    A2:A10 ۾ جڳهن جي لسٽ ۾، فرض ڪريو ته توهان مختصر ٿيل ملڪ جا نالا مٽائڻ چاهيو ٿا (جهڙوڪ FR ، UK ۽ USA ) مڪمل سان. MassReplace فنڪشن صرف ڪم بڪ ۾ ڪم ڪندو جنهن ۾ توهان ڪوڊ داخل ڪيو آهي. جيڪڏهن توهان کي پڪ ناهي ته اهو صحيح طريقي سان ڪيئن ڪجي، مهرباني ڪري بيان ڪيل قدمن تي عمل ڪريو ته ڪيئن داخل ڪجي VBA ڪوڊ Excel ۾.

    جڏهن توهان جي ورڪ بڪ ۾ ڪوڊ شامل ڪيو ويندو، فنڪشن فارمولا intellisense ۾ ظاهر ٿيندو - صرف. فنڪشن جو نالو، نه دلائل! جيتوڻيڪ، مان سمجهان ٿو ته نحو کي ياد رکڻ ڪا وڏي ڳالهه ناهي:

    MassReplace(input_range, find_range, replace_range)

    ڪٿي:

    • Input_range - ذريعن جي حد جتي توهان قدرن کي مٽائڻ چاهيو ٿا.
    • Find_range - اکر، اسٽرنگ، يا لفظ ڳولڻ لاءِ.
    • Replace_range - اکر، تار، يا لفظن سان مٽائڻ لاءِ.

    Excel 365 ۾، متحرڪ صفن جي سپورٽ جي ڪري، هي هڪ عام فارمولا طور ڪم ڪري ٿو، جنهن کي صرف مٿين سيل (B2) ۾ داخل ٿيڻ جي ضرورت آهي:

    =MassReplace(A2:A10, D2:D4, E2:E4)

    پري-ڊينامڪ ايڪسل ۾، اهو ڪم ڪري ٿو هڪ پراڻي طرز جي CSE صفي فارمولا: توهان چونڊيو پوري ماخذ جي حد (B2:B10)، ٽائپ ڪريو فارمولا، ۽ دٻايو Ctrl + Shift + Enter ڪنجيون ان کي مڪمل ڪرڻ لاءِ هڪ ئي وقت ۾.

    فائدا : Excel 2019 ۾ ڪسٽم LAMBDA فنڪشن جو هڪ مهذب متبادل , Excel 2016 ۽ اڳئين ورزن

    خرابيون : ورڪ بڪ کي لازمي طور تي محفوظ ڪيو وڃي macro-enabled .xlsm فائل

    VBA macro سان Excel ۾ بلڪ مٽايو

    جيڪڏھن توھان کي پسند آھي آٽو عام ڪمن کي ميڪرو سان ملائڻ، پوءِ توهانھيٺ ڏنل VBA ڪوڊ استعمال ڪري سگھو ٿا ھڪڙي حد ۾ گھڻن قدرن کي ڳولڻ ۽ تبديل ڪرڻ لاءِ.

    Sub BulkReplace() Dim Rng As Range, SourceRng As Range, ReplaceRng As Range On Error Resume Next Set SourceRng = Application.InputBox( "ذريعو ڊيٽا: "، "بلڪ تبديل ڪريو" , ايپليڪيشن. سليڪشن. ايڊريس، قسم:=8) غلطي صاف ڪريو جيڪڏهن SourceRng ناهي ڪجھ به نه آهي پوء سيٽ ڪريو ReplaceRng = Application.InputBox ("رينج کي تبديل ڪريو:" , "بلڪ تبديل ڪريو" , قسم :=8) Err.Clear If not ReplaceRng ڪجھ به ناهي ته پوءِ Application.ScreenUpdating = False for each Rng in ReplaceRng.Columns(1).Cells SourceRng.Replace what:=Rng.Value, replacement:=Rng.Offset(0, 1).Value next Application.ScreenUpdating = True End If End If End Sub

    سڄي ئي ميڪرو استعمال ڪرڻ لاءِ، توھان ڊائون لوڊ ڪري سگھو ٿا اسان جو نمونو ڪم بڪ ڪوڊ تي مشتمل. يا توهان پنهنجي ڪم بڪ ۾ ڪوڊ داخل ڪري سگهو ٿا.

    ميڪرو ڪيئن استعمال ڪجي

    ميڪرو کي هلائڻ کان اڳ، پراڻي ۽ نئين قدرن کي ٽائپ ڪريو ٻن ڀرسان ڪالمن ۾ جيئن هيٺ ڏنل تصوير ۾ ڏيکاريل آهي ( C2:D4).

    ۽ پوءِ، پنھنجو ماخذ ڊيٽا چونڊيو، Alt + F8 کي دٻايو، چونڊيو BulkReplace macro، ۽ ڪلڪ ڪريو رن .

    <0

    جيئن ذريعو غضب اڳ ۾ چونڊيو ويو آهي، صرف ريفرنس جي تصديق ڪريو، ۽ ڪلڪ ڪريو ٺيڪ:

    25>

    ان کان پوء، منتخب ڪريو رينج تبديل ڪريو ، ۽ ڪلڪ ڪريو OK:

    Done!

    فائدا : هڪ ڀيرو سيٽ اپ ڪريو، ڪنهن به وقت ٻيهر استعمال ڪريو

    خرابيون : ميڪرو کي هر ڊيٽا سان هلائڻ جي ضرورت آهيتبديلي

    سبسٽرنگ ٽول سان Excel ۾ گھڻن ڳولھيو ۽ تبديل ڪريو

    پھرين مثال ۾، مون ذڪر ڪيو آھي ته nested SUBSTITUTE Excel ۾ گھڻن ويلز کي تبديل ڪرڻ جو آسان طريقو آھي. مان اعتراف ڪريان ٿو ته مان غلط هئس. اسان جو الٽيميٽ سوٽ شين کي اڃا به آسان بڻائي ٿو!

    توهان جي ورڪ شيٽ ۾ وڏي پئماني تي تبديل ڪرڻ لاءِ، مٿي وڃو Ablebits Data ٽئب ۽ ڪلڪ ڪريو Substring Tools > بدلايو سبسٽرنگ .

    The تبديل سبسٽرنگ ڊائلاگ باڪس ظاهر ٿيندو توهان کي وضاحت ڪرڻ لاءِ ذريعو رينج ۽ Substrings range.

    ٻن حدن سان چونڊيل، ڪلڪ ڪريو تبديل ڪريو بٽڻ ۽ نتيجن کي ڳوليو نئين ڪالمن ۾ ساڄي پاسي داخل ڪيو ويو اصل ڊيٽا جو. ها، اهو بلڪل آسان آهي!

    ٽپ. تبديل تي ڪلڪ ڪرڻ کان اڳ، توھان لاءِ غور ڪرڻ لاءِ ھڪڙي اھم شيءِ آھي - ڪيس-حساس باڪس. پڪ ڪريو ته ان کي چونڊيو جيڪڏھن توھان چاھيو ٿا اپر ڪيس ۽ لوئر ڪيز اکر کي مختلف اکرن وانگر. هن مثال ۾، اسان هن آپشن کي چيڪ ڪريون ٿا ڇو ته اسان صرف سرمائيدار اسٽرنگ کي مٽائڻ چاهيون ٿا ۽ ٻين لفظن ۾ "fr"، "uk"، يا "ak" کي برقرار رکڻ چاهيون ٿا.

    جيڪڏهن توهان کي اهو ڄاڻڻ جو شوق آهي ته اسٽرنگ تي ٻيون بلڪ آپريشن ڪهڙا ٿي سگهن ٿا، اسان جي الٽيميٽ سوٽ ۾ شامل ٻيا سبسٽرنگ ٽولز ڏسو. يا ان کان به بهتر، هيٺ ڏنل تشخيصي نسخو ڊائون لوڊ ڪريو ۽ ڪوشش ڪريو!

    اهڙيءَ طرح ڳولهي ۽ مٽائڻExcel ۾ هڪ ئي وقت ڪيترائي لفظ ۽ اکر. مان توهان جي پڙهڻ لاءِ مهرباني ڪريان ٿو ۽ اميد اٿم ته توهان کي ايندڙ هفتي اسان جي بلاگ تي ڏسڻ لاءِ!

    دستياب ڊائون لوڊ

    Excel (.xlsm فائل) ۾ گھڻا ڳولھيو ۽ تبديل ڪريو

    Ultimate Suite 14 -ڏينهن مڪمل طور تي ڪم ڪندڙ ورزن (.exe فائل)

    نالا.

    ان کي ڪرڻ لاءِ، پراڻا قدر داخل ڪريو D2:D4 ۾ ۽ نيون قيمتون E2:E4 ۾ داخل ڪريو جيئن هيٺ ڏنل اسڪرين شاٽ ۾ ڏيکاريل آهي. ۽ پوءِ ھيٺ ڏنل فارمولا کي B2 ۾ وجھو ۽ Enter کي دٻايو:

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2:A10, D2, E2), D3, E3), D4, E4)

    …۽ توھان کي ھڪ ئي وقت ۾ سڀ تبديليون ڪيون وينديون:

    مهرباني ڪري نوٽ ڪريو، مٿي ڏنل طريقو صرف Excel 365 ۾ ڪم ڪري ٿو جيڪو متحرڪ صفن کي سپورٽ ڪري ٿو.

    Excel 2019، Excel 2016 ۽ اڳئين جي اڳئين متحرڪ ورزن ۾، فارمولا ٿيڻ جي ضرورت آهي. مٿين سيل (B2) لاءِ لکيو ويو، ۽ پوءِ هيٺ ڏنل سيلز ۾ نقل ڪيو ويو:

    =SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A2, $D$2, $E$2), $D$3, $E$3), $D$4, $E$4)

    مهرباني ڪري ڌيان ڏيو ته، هن صورت ۾، اسان متبادل قدرن کي مطلق سيل حوالن سان بند ڪريون ٿا، تنهنڪري فارمولا کي نقل ڪرڻ وقت اهي شفٽ نه ٿيندا.

    نوٽ. SUBSTITUTE فنڪشن case-sensitive آهي، مطلب ته توهان کي پراڻا قدر ٽائپ ڪرڻ گهرجن ( old_text ) ساڳئي خط جي صورت ۾ جيئن اهي اصل ڊيٽا ۾ ظاهر ٿين ٿا.

    جيترو آسان ٿي سگهي ٿو، هن طريقي ۾ هڪ اهم خرابي آهي - جڏهن توهان وٽ متبادل لاءِ درجنين شيون آهن، nested فنڪشن کي منظم ڪرڻ ڪافي ڏکيو ٿي پوي ٿو.

    فائدا : آسان -لاڳو ڪرڻ؛ سڀني ايڪسل ورزن ۾ سپورٽ ڪئي وئي

    خرابيون : بهترين استعمال ڪرڻ لاءِ محدود تعداد ۾ ڳولهڻ/بدلڻ جي قدرن لاءِ

    XLOOKUP سان گھڻن داخلن کي ڳولھيو ۽ تبديل ڪريو

    <0 ان حالت ۾ جڏهن توهان سڄو سيل مواد کي تبديل ڪرڻ جي ڪوشش ڪري رهيا آهيو، ان جو حصو نه، XLOOKUP فنڪشن ڪم ۾ اچي ٿو.

    اچوچئو ته توهان وٽ ڪالم A ۾ ملڪن جي هڪ فهرست آهي ۽ مقصد آهي سڀني مخففات کي لاڳاپيل مڪمل نالن سان تبديل ڪرڻ. پوئين مثال وانگر، توھان شروع ڪريو "ڳولڻ" ۽ "تبديل" شيون الڳ ڪالمن ۾ داخل ڪرڻ سان (ترتيب D ۽ E)، ۽ پوء ھن فارمولا کي B2 ۾ داخل ڪريو:

    =XLOOKUP(A2, $D$2:$D$4, $E$2:$E$4, A2)

    Excel ٻولي مان انساني ٻولي ۾ ترجمو ڪيو ويو، ھتي آھي فارمولا ڇا ڪندو آھي:

    D2:D4 (lookup_array) ۾ A2 قدر (lookup_value) ڳولھيو ۽ E2:E4 (return_array) مان ميچ واپس ڪريو. جيڪڏهن نه ملي ته اصل قدر A2 مان ڪڍو.

    فارمولا کي هيٺ ڏنل سيلز ۾ نقل ڪرڻ لاءِ فل هينڊل تي ڊبل ڪلڪ ڪريو، ۽ نتيجو توهان کي انتظار نه ڪندو:

    جيئن ته XLOOKUP فنڪشن صرف Excel 365 ۾ موجود آهي، مٿي ڏنل فارمولا اڳئين ورزن ۾ ڪم نه ڪندو. بهرحال، توهان آساني سان هن رويي کي IFERROR يا IFNA ۽ VLOOKUP جي ميلاپ سان نقل ڪري سگهو ٿا:

    =IFNA(VLOOKUP(A2, $D$2:$E$4, 2, FALSE), A2)

    13>

    نوٽ. SUBSTITUTE جي برعڪس، XLOOKUP ۽ VLOOKUP فنڪشن ڪيس-حساس نه هوندا آهن ، مطلب ته اهي ليٽر ڪيس کي نظر انداز ڪري ڏسندڙ قدر ڳوليندا آهن. مثال طور، اسان جو فارمولا FR ۽ fr ٻنهي کي فرانس سان تبديل ڪندو.

    فائدا : معمولي ڪمن جو غير معمولي استعمال؛ سڀني ايڪسل ورزن ۾ ڪم ڪري ٿو

    خرابيون : سيل جي سطح تي ڪم ڪري ٿو، سيل جي مواد جو حصو تبديل نٿو ڪري سگھي

    مثلا متبادل LAMBDA فنڪشن استعمال ڪندي

    Microsoft لاءِ365 سبسڪرائبر، Excel هڪ خاص فنڪشن مهيا ڪري ٿو جيڪو روايتي فارمولا ٻولي استعمال ڪندي ڪسٽم فنڪشن ٺاهڻ جي اجازت ڏئي ٿو. ها، مان LAMBDA بابت ڳالهائي رهيو آهيان. هن طريقي جي خوبي اها آهي ته اهو هڪ تمام ڊگهو ۽ پيچيده فارمولا کي تمام سادي ۽ سادي نموني ۾ تبديل ڪري سگهي ٿو. ان کان علاوه، اهو توهان کي توهان جي پنهنجي فنڪشن ٺاهڻ جي اجازت ڏئي ٿو جيڪي Excel ۾ موجود نه آهن، جيڪو ڪجهه اڳ ۾ ئي ممڪن هو صرف VBA سان.

    تفصيلي معلومات لاءِ ڪسٽم LAMBDA افعال ٺاهڻ ۽ استعمال ڪرڻ بابت، مهرباني ڪري هي سبق ڏسو: ڪيئن Excel ۾ LAMBDA افعال لکڻ لاءِ. هتي، اسان ڪجهه عملي مثالن تي بحث ڪنداسين.

    فائدا : نتيجو هڪ خوبصورت ۽ حيرت انگيز طور تي آسان آهي فنڪشن کي استعمال ڪرڻ لاءِ، ڪنهن به صورت ۾ متبادل جوڑوں جو تعداد

    خرابيون : موجود صرف Excel 365 ۾؛ ورڪ بڪ لاءِ مخصوص ۽ مختلف ورڪ بڪ ۾ ٻيهر استعمال نه ٿو ڪري سگهجي

    مثال 1. هڪ ئي وقت ۾ گھڻن لفظن/ اسٽرنگ کي ڳولھيو ۽ مٽايو

    ھڪڙي ئي لفظن يا متن کي مٽائڻ لاءِ، اسان ھڪ ڪسٽم ٺاھيو آھي LAMBDA فنڪشن، جنهن جو نالو MultiReplace آهي، جيڪو انهن مان هڪ فارم وٺي سگهي ٿو:

    =LAMBDA(text, old, new, IF(old"", MultiReplace(SUBSTITUTE(text, old, new), OFFSET(old, 1, 0), OFFSET(new, 1, 0)), text))

    يا

    =LAMBDA(text, old, new, IF(old="", text, MultiReplace(SUBSTITUTE(text, old, new), OFFSET(old, 1, 0), OFFSET(new, 1, 0))))

    ٻئي بار بار آهن فنڪشن جيڪي پاڻ کي سڏين ٿا. فرق صرف ان ۾ آهي ته نڪرڻ واري نقطي کي ڪيئن قائم ڪيو ويو آهي.

    پهرين فارمولا ۾، IF فنڪشن چيڪ ڪري ٿو ته ڇا پراڻي فهرست خالي نه آهي (پراڻي ""). جيڪڏهن صحيح آهي، ته MultiReplace فنڪشن سڏيو ويندو آهي. جيڪڏهن FALSE، فنڪشنواپس ڪري ٿو text ان جو موجوده فارم ۽ نڪرندو آهي.

    ٻيو فارمولا استعمال ڪري ٿو ريورس منطق: جيڪڏهن پراڻو خالي آهي (old="")، ته واپس text ۽ نڪرڻ؛ ٻي صورت ۾ ڪال ڪريو MultiReplace .

    سڀ کان مشڪل حصو پورو ٿيو! توھان جي لاءِ باقي ڇا بچيو ويو آھي نالو مئنيجر ۾ MultiReplace فنڪشن کي جيئن ھيٺ ڏنل اسڪرين شاٽ ۾ ڏيکاريل آھي. تفصيلي ھدايتن لاءِ، مھرباني ڪري ڏسو LAMBDA فنڪشن کي ڪيئن نالو ڏيو.

    جڏھن فنڪشن کي نالو ملي ٿو، توھان ان کي استعمال ڪري سگھو ٿا ڪنھن ٻئي ان بلٽ فنڪشن وانگر.

    توهان ٻن فارمولين مان ڪنهن به قسم جي تبديلي کي چونڊيو، آخري استعمال ڪندڙ جي نقطه نظر کان، نحو بلڪل سادو آهي جيئن هن:

    MultiReplace(text, old, new)

    ڪٿي:

    • ٽيڪسٽ - ماخذ ڊيٽا
    • پراڻو - ڳولڻ لاءِ قدر
    • نئون - قيمت سان تبديل ڪرڻ لاءِ

    اڳئين مثال کي ٿورو اڳتي کڻندي، اچو ته نه رڳو ملڪي مخفف پر رياستي مخفف کي به بدلايون. ان لاءِ، ڪالم D ۾ مخففات ( پراڻا قدر) ٽائپ ڪريو D2 ۾ شروع ٿي ۽ مڪمل نالا ( نئين قدر) ڪالم E ۾ شروع ڪريو E2 ۾.

    ان ۾. B2، MultiReplace فنڪشن داخل ڪريو:

    =MultiReplace(A2:A10, D2, E2)

    انٽر کي دٻايو ۽ نتيجن جو مزو وٺو :)

    19>

    هي فارمولا ڪيئن ڪم ڪندو آهي

    فارمولا کي سمجھڻ جو اشارو ورجائي کي سمجھڻ آھي. اهو شايد پيچيده لڳي، پر اصول بلڪل سادو آهي. هر هڪ سانiteration، هڪ recursive فنڪشن هڪ وڏي مسئلي جو هڪ ننڍڙو مثال حل ڪري ٿو. اسان جي حالت ۾، MultiReplace فنڪشن پراڻن ۽ نئين قدرن جي ذريعي ڦري ٿو ۽، هر لوپ سان، هڪ متبادل انجام ڏئي ٿو:

    MultiReplace (SUBSTITUTE(text, old, new), OFFSET(old, 1, 0), OFFSET(new, 1, 0))

    جيئن nested SUBSTITUTE افعال سان، پوئين SUBSTITUTE جو نتيجو ٿيندو text پيرا ميٽر ايندڙ SUBSTITUTE لاءِ. ٻين لفظن ۾، MultiReplace جي هر ايندڙ ڪال تي، SUBSTITUTE فنڪشن اصل ٽيڪسٽ اسٽرنگ کي نه، پر پوئين ڪال جي آئوٽ تي عمل ڪري ٿو.

    سڀني شين کي سنڀالڻ لاءِ <1 تي> پراڻي فهرست، اسان مٿين سيل سان شروع ڪريون ٿا، ۽ OFFSET فنڪشن کي استعمال ڪريون ٿا 1 قطار کي هر رابطي سان هيٺ ڪرڻ لاءِ:

    OFFSET(old, 1, 0)

    ساڳيو لاءِ ڪيو ويندو آهي. نئين فهرست:

    OFFSET(new, 1, 0)

    اهم شيءِ مهيا ڪرڻ آهي هڪ نڪرڻ جو نقطو بار بار ڪالن کي هميشه لاءِ اڳتي وڌڻ کان روڪڻ لاءِ. اهو IF فنڪشن جي مدد سان ڪيو ويندو آهي - جيڪڏهن پراڻو سيل خالي آهي، فنڪشن واپس ڪري ٿو text ان جي موجوده شڪل ۽ ٻاهر نڪري ٿو:

    =LAMBDA(text, old, new, IF(old="", text, MultiReplace(…)))

    يا

    =LAMBDA(text, old, new, IF(old"", MultiReplace(…), text))

    مثال 2. ايڪسل ۾ گھڻن اکرن کي تبديل ڪريو

    اصولي طور، MultiReplace فنڪشن اڳئين مثال ۾ بحث ڪيو ويو آهي انفرادي ڪردارن کي پڻ سنڀاليو، بشرطيڪ هر پراڻو ۽ نئون ڪردار الڳ سيل ۾ داخل ڪيو ويو هجي، بلڪل جيئن مٿي ڏنل اسڪرين شاٽس ۾ مختصر ۽ مڪمل نالن سان.

    جيڪڏهن توهان پراڻن کي داخل ڪرڻ چاهيو ٿااکرن کي ھڪڙي سيل ۾ ۽ نوان اکر ٻئي سيل ۾، يا انھن کي سڌو فارمولا ۾ ٽائيپ ڪريو، پوء توھان ھڪڙو ٻيو ڪسٽم فنڪشن ٺاھي سگھو ٿا، جنھن جو نالو آھي ReplaceChars ، انھن مان ھڪڙو فارمولو استعمال ڪندي:

    =LAMBDA(text, old_chars, new_chars, IF(old_chars"", ReplaceChars(SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars)), RIGHT(old_chars, LEN(old_chars)-1), RIGHT(new_chars, LEN(new_chars)-1)), text))

    يا

    =LAMBDA(text, old_chars, new_chars, IF(old_chars="", text, ReplaceChars(SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars)), RIGHT(old_chars, LEN(old_chars)-1), RIGHT(new_chars, LEN(new_chars)-1))))

    پنهنجي نئين Lambda فنڪشن کي نالو ڏيڻ لاءِ ياد رکجو نالو مئنيجر ۾ معمول مطابق:

    ۽ توھانجو نئون ڪسٽم فنڪشن استعمال لاءِ تيار آھي:

    ReplaceChars(text, old_chars, new_chars)

    جتي:

      17> ٽيڪسٽ - اصل اسٽرنگ
    • پراڻا - اکر ڳولڻ لاءِ
    • نئون - اکر جيڪي بدلائڻ لاءِ

    ان کي فيلڊ ٽيسٽ ڏيڻ لاءِ، اچو ته ڪجهه ڪريون جيڪو اڪثر درآمد ٿيل ڊيٽا تي ڪيو ويندو آهي - سمارٽ اقتباس ۽ سمارٽ اپاسٽروفي کي سڌا اقتباس ۽ سڌي اپاسٽروفيس سان تبديل ڪريو.

    پهريون، اسان D2 ۾ سمارٽ اقتباس ۽ سمارٽ اپاسٽروفي داخل ڪريون ٿا، سڌو اقتباس ۽ E2 ۾ سڌو اپاسٽروفي ، بهتر پڙهڻ جي قابليت لاءِ ڪردارن کي خالن سان الڳ ڪرڻ. (جيئن اسان ٻنهي سيلن ۾ ساڳيو ڊيليميٽر استعمال ڪندا آهيون، ان جو نتيجو تي ڪو به اثر نه پوندو - ايڪسل صرف هڪ اسپيس کي اسپيس سان تبديل ڪندو.)

    ان کان پوءِ، اسان هي فارمولا B2 ۾ داخل ڪريون ٿا:

    =ReplaceChars(A2:A4, D2, E2)

    ۽ بلڪل اهي نتيجا حاصل ڪريو جيڪي اسان ڳولي رهيا هئاسين:

    21>

    اهو پڻ ممڪن آهي ته اکر کي سڌو فارمولا ۾ ٽائيپ ڪريو. اسان جي حالت ۾، صرف "نقل" ڪرڻ ياد رکو سڌا حوالا هن طرح:

    =ReplaceChars(A2:A4, "“ ” ’", """ "" '")

    هي فارمولا ڪيئن ڪم ڪندو آهي

    The ReplaceChars فنڪشن cycles ذريعي old_chars ۽ new_chars اسٽرنگ ۽ هڪ وقت ۾ هڪ متبادل ٺاهي ٿو کاٻي پاسي جي پهرين ڪردار کان شروع ٿئي ٿو. هي حصو SUBSTITUTE فنڪشن جي ذريعي ڪيو ويو آهي:

    SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars))

    هر ورجائي سان، RIGHT فنڪشن ٻنهي old_chars ۽ جي کاٻي پاسي کان هڪ اکر بند ڪري ٿو. new_chars strings، ته جيئن LEFT متبادل لاءِ ايندڙ اکرن جو جوڙو آڻي سگھي:

    ReplaceChars(SUBSTITUTE(text, LEFT(old_chars), LEFT(new_chars)), RIGHT(old_chars, LEN(old_chars)-1), RIGHT(new_chars, LEN(new_chars)-1))

    ھر ھڪ بار بار ڪال ڪرڻ کان اڳ، IF فنڪشن old_chars اسٽرنگ جو جائزو وٺي ٿو . جيڪڏهن اهو خالي نه آهي، فنڪشن پاڻ کي سڏيندو آهي. جيئن ئي آخري اکر کي تبديل ڪيو ويو آهي، ورهاڱي وارو عمل ختم ٿي ويندو آهي، فارمولا واپس اچي ٿو text اهو ان جي موجوده شڪل ۽ نڪرندو آهي.

    نوٽ. ڇاڪاڻ ته اسان جي بنيادي فارمولين ۾ استعمال ٿيل SUBSTITUTE فنڪشن ڪيس-حساس آهي، ٻئي Lambdas ( MultiReplace ۽ ReplaceChars ) وڏي ۽ ننڍي اکر کي مختلف اکر سمجھندا آهن.

    UDF سان ماس ڳولھيو ۽ تبديل ڪريو

    جيڪڏھن توھان جي Excel ۾ LAMBDA فنڪشن موجود نه آھي، توھان VBA استعمال ڪندي روايتي طريقي سان ملٽي ريپليس لاءِ استعمال ڪندڙ مقرر ڪيل فنڪشن لکي سگھو ٿا.

    UDF کي LAMBDA-defined MultiReplace فنڪشن کان ڌار ڪرڻ لاءِ، اسان ان کي مختلف نالو ڏيڻ وارا آھيون، چئو MassReplace . فنڪشن جو ڪوڊ هن ريت آهي:

    Function MassReplace(InputRng As Range، FindRng As Range، ReplaceRng As Reng) جيئن مختلف () DimarRes() As Variant' array to save the results Dim arSearchReplace(), sTmp As String 'array جتي ذخيرو ڪرڻ لاءِ ڳولھيو/جڙيو جوڙو، عارضي اسٽرنگ Dim iFindCurRow، cntFindRows As Long 'انڊيڪس جي موجوده قطار جي ڳولا جي جاءِ واري صف، ڳڻپ ڪريو. قطارن جو مدو iInputCurRow، iInputCurCol، cntInputRows، cntInputCols As long 'موجوده قطار جي انڊيڪس ماخذ جي حد ۾، موجوده ڪالمن جي انڊيڪس ماخذ جي حد ۾، قطارن جي ڳڻپ، ڪالمن جي ڳڻپ cntInputRows = InputRng.Rong.InputCols = InputRng.InputRngCols. .Columns.Count cntFindRows=FindRng.Rows.Count ReDim arRes(1 to cntInputRows، 1 to cntInputCols) ReDim arSearchReplace(1 to cntFindRows، 1 to 2) 'findRows = iFindsRow لاءِ ڳولھڻ/بدلڻ جوڑوں جي صف تيار ڪرڻ. iFindCurRow, 1) = FindRng.Cells(iFindCurRow, 1).Value arSearchReplace(iFindCurRow, 2) = ReplaceRng.Cells(iFindCurRow, 1). Value Next 'ڳولڻ ۽ مٽائڻ ماخذ رينج ۾ تبديل ڪرڻ لاءِ iInCurnt = iInCurnt1 لاءِ iInCurnt 1 کي CntInputCols sTm p = InputRng.Cells(iInputCurRow, iInputCurCol). قدر 'هر سيل ۾ سڀ ڳولهڻ/بدلڻ جوڙو مٽائڻ iFindCurRow = 1 لاءِ cntFindRows sTmp = بدلايو(sTmp، arSearchReplace(iFindCurRow، 1)، arSearch2) Next (arSearch2) (iInputCurRow, iInputCurCol) = sTmp اڳيون Next MassReplace = arRes End Function

    Limbda-defined functions وانگر، UDFs workbook-wide . يعني ته

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