কিভাবে এক্সেল সেলে ডুপ্লিকেট টেক্সট/শব্দ হাইলাইট করবেন

  • এই শেয়ার করুন
Michael Brown

টিউটোরিয়ালটি দেখায় কিভাবে VBA ব্যবহার করে একটি ঘরে ডুপ্লিকেট শব্দ বা টেক্সট স্ট্রিং হাইলাইট করা যায়।

এক্সেল কন্ডিশনাল ফরম্যাটিং আপনি যেভাবে ভাবতে পারেন সেই সম্ভাব্য উপায়ে ডুপ্লিকেট হাইলাইট করা সম্ভব করে তোলে: 1ম ঘটনা সহ বা ছাড়া, একটি একক কলামে বা একাধিক কলামে, ক্রমাগত ডুপ্লিকেট কক্ষ এবং একটি কী কলামে অভিন্ন মানের উপর ভিত্তি করে সম্পূর্ণ সারি। তবে, যথারীতি, একটি "কিন্তু" আছে। শর্তসাপেক্ষ ফর্ম্যাটিং নিয়মগুলি একটি কক্ষ স্তরে কাজ করে যখন আপনি সম্পূর্ণ কক্ষের পরিবর্তে নকল পাঠ্য হাইলাইট করতে চাইতে পারেন৷ এটি শুধুমাত্র ম্যাক্রো দিয়ে করা যেতে পারে। VBA নিয়ে আপনার কোনো অভিজ্ঞতা না থাকলেও, দয়া করে এই পৃষ্ঠাটি বন্ধ করার জন্য তাড়াহুড়ো করবেন না। এখানে, আপনি ব্যবহার করার জন্য প্রস্তুত কোডের উদাহরণ এবং আপনার ওয়ার্কশীটে সেগুলি কীভাবে ব্যবহার করবেন তার বিস্তারিত নির্দেশাবলী পাবেন।

    টেক্সট কেস উপেক্ষা করে একটি ঘরে ডুপ্লিকেট শব্দ হাইলাইট করুন

    এই উদাহরণটি নিচের চিত্রের মতো লাল ফন্টের রঙে একটি ঘরের মধ্যে ডুপ্লিকেট শব্দ বা পাঠ্য স্ট্রিংগুলিকে কীভাবে ছায়া দিতে হয় তা দেখায়। অনুগ্রহ করে লক্ষ্য করুন যে ছোট হাতের এবং বড় হাতের অক্ষরগুলিকে একই অক্ষর হিসাবে বিবেচনা করা হয়। উদাহরণস্বরূপ, কমলা , অরেঞ্জ এবং কমলা একই শব্দ বলে মনে করা হয়৷

    ম্যাক্রোর কোডটি নিম্নরূপ:

    পাবলিক সাব হাইলাইটডুপেসকেস ইনসেনসিটিভ() স্ট্রিং ডেলিমিটার হিসাবে পরিসর হিসাবে ডিম সেল ডিম ডিলিমিটার = ইনপুটবক্স ("সেলে মানগুলিকে আলাদা করে এমন ডিলিমিটার লিখুন" , "ডিলিমিটার" , ", " ) প্রতিটি সেলের জন্যApplication.Selection Cell HighlightDupeWordsInCell(Cell, Delimiter, False ) Next End Sub Sub HighlightDupeWordsInCell(Cell As Range, Optional Delimiter as String = " " , বুলিয়ান হিসাবে ঐচ্ছিক কেস সংবেদনশীল = True ) Dim text) স্ট্রিং শব্দ হিসেবে Dim text স্ট্রিং Dim wordIndex, matchCount, positionInText পূর্ণসংখ্যা হিসাবে যদি CaseSensitive তাহলে শব্দ = Split(Cell.Value, Delimiter) অন্য শব্দ = Split(LCase(Cell.Value), Delimiter) End If wordIndex = LBound (শব্দ) থেকে UBound (শব্দ) - 1 শব্দ = শব্দ(wordIndex) matchCount = 0 for nextWordIndex = wordIndex + 1 থেকে UBound (শব্দ) যদি শব্দ = শব্দ (nextWordIndex) তাহলে matchCount = matchCount + 1 End যদি Next nextWordIndex যদি matchCount > 0 তারপর টেক্সট = "" সূচক = LBound (শব্দ) থেকে UBound (শব্দ) পাঠ্য = পাঠ্য & word(Index) If (words(Index) = word) তারপর Cell.Characters(Len(text) - Len(word) + 1, Len(word)).Font.Color = vbRed End যদি text = text & ডিলিমিটার নেক্সট এন্ড ইফ নেক্সট wordIndex End Sub

    কোন কেস কেস-সেনসিটিভের ডুপ্লিকেট টেক্সট হাইলাইট করুন

    বেশিরভাগ পরিস্থিতিতে, আমরা এক্সেলে টেক্সট এন্ট্রির সাথে কাজ করার সময় লেটার কেস উপেক্ষা করি। নির্দিষ্ট পরিস্থিতিতে, তবে, টেক্সট কেস গুরুত্বপূর্ণ। উদাহরণস্বরূপ, আপনি যদি আইডি, পাসওয়ার্ড বা এই ধরণের অন্যান্য রেকর্ড নিয়ে কাজ করেন, স্ট্রিং যেমন 1-AA , 1-aa এবং 1-Aa ডুপ্লিকেট নয় এবং হাইলাইট করা উচিত নয়:

    এই ক্ষেত্রে,কোডের নিম্নলিখিত সংস্করণটি ব্যবহার করুন:

    পাবলিক সাব হাইলাইটডুপেসসেনসিটিভ() স্ট্রিং ডেলিমিটার হিসাবে রেঞ্জ ডিম ডিলিমিটার হিসাবে ডিম সেল = ইনপুটবক্স( "সেলে মানগুলিকে আলাদা করে এমন ডিলিমিটার লিখুন" , "ডিলিমিটার" , ", " ) প্রতিটির জন্য অ্যাপ্লিকেশনে সেল। সিলেকশন কল হাইলাইটDupeWordsInCell(Cell, Delimiter, True) পরবর্তী শেষে Sub Sub HighlightDupeWordsInCell(সেল হিসাবে পরিসীমা, ঐচ্ছিক ডেলিমিটার হিসাবে স্ট্রিং = " " , বুলিয়ান = সত্য হিসাবে ঐচ্ছিক কেস সংবেদনশীল ) ডিম টেক্সট ডাইম স্ট্রিং হিসাবে) শব্দ হিসাবে স্ট্রিং ম্লান wordIndex, matchCount, positionInText পূর্ণসংখ্যা হিসাবে যদি CaseSensitive তাহলে শব্দ = Split(Cell.Value, Delimiter) অন্য শব্দ = Split(LCase(Cell.Value), Delimiter) End If wordIndex = LBound (শব্দ) থেকে UBound ( শব্দ) - 1 শব্দ = শব্দ(wordIndex) matchCount = 0 for nextWordIndex = wordIndex + 1 থেকে UBound (শব্দ) যদি শব্দ = শব্দ (nextWordIndex) তারপর matchCount = matchCount + 1 End যদি Next nextWordIndex যদি matchCount > 0 তারপর টেক্সট = "" সূচক = LBound (শব্দ) থেকে UBound (শব্দ) পাঠ্য = পাঠ্য & word(Index) If (words(Index) = word) তারপর Cell.Characters(Len(text) - Len(word) + 1, Len(word)).Font.Color = vbRed End যদি text = text & ডিলিমিটার পরবর্তী শেষে যদি Next wordIndex End সাব

    এক্সেলে ডুপ্লিকেট শব্দগুলি হাইলাইট করতে ম্যাক্রোগুলি কীভাবে ব্যবহার করবেন

    আপনি যদি VBA ব্যবহারে একজন শিক্ষানবিস হন, নীচের ধাপে ধাপে নির্দেশাবলী আপনাকে স্বাচ্ছন্দ্যে নিয়ে যাবে . অভিজ্ঞ ব্যবহারকারীরা হতে পারেশুধু ডাউনলোড লিঙ্ক বাছাই করুন এবং বাকিগুলি এড়িয়ে যান :)

    আপনার ওয়ার্কবুকে কোডটি যোগ করুন

    আপনি আপনার এক্সেল ওয়ার্কবুকে ম্যাক্রোর কোড সন্নিবেশ করা শুরু করেন। এখানে কিভাবে:

    1. ওয়ার্কবুকটি খুলুন যেখানে আপনি ডুপ হাইলাইট করতে চান।
    2. ভিজ্যুয়াল বেসিক এডিটর খুলতে Alt + F11 টিপুন।
    3. বাম প্যানে, এই ওয়ার্কবুক ডান-ক্লিক করুন এবং প্রসঙ্গ মেনু থেকে ঢোকান > মডিউল নির্বাচন করুন।
    4. কোড উইন্ডোতে কোডটি আটকান।
    5. ভবিষ্যত ব্যবহারের জন্য ম্যাক্রো রাখতে, আপনার ওয়ার্কবুকটিকে একটি ম্যাক্রো-সক্ষম .xlsm ফাইল হিসাবে সংরক্ষণ করতে ভুলবেন না।

    বিকল্পভাবে, আপনি আমাদের নমুনা ওয়ার্কবুক ডাউনলোড করতে পারেন এবং সেখান থেকে ম্যাক্রো চালাতে পারেন। নমুনা ওয়ার্কবুকে নিম্নলিখিত ম্যাক্রোগুলি রয়েছে:

    • হাইলাইটডুপেসকেস সংবেদনশীল - অক্ষর কেস উপেক্ষা করে একটি কক্ষের মধ্যে শেডস ডুপ্লিকেট৷ লেটার কেস বিবেচনা করে একটি কক্ষে ফাঁকি দেয়।

    আরও তথ্যের জন্য, অনুগ্রহ করে দেখুন কিভাবে এক্সেলে VBA কোড ঢোকাতে হয়।

    ম্যাক্রো চালান

    কোড দিয়ে আপনার নিজের ওয়ার্কবুকে যোগ করুন বা আমাদের নমুনা ফাইল ডাউনলোড করে খুলুন, এইভাবে ম্যাক্রো চালান:

    1. আপনার ওয়ার্কশীটে, আপনি যেখানে ডুপ্লিকেট পাঠ্য হাইলাইট করতে চান সেগুলি নির্বাচন করুন। এটি একটি পরিসর বা একাধিক অ-সংলগ্ন রেঞ্জ হতে পারে।
    2. Alt + F8 টিপুন।
    3. আগ্রহের ম্যাক্রো নির্বাচন করুন এবং চালান ক্লিক করুন।

    4. ম্যাক্রো আপনাকে ডেলিমিটার নির্দিষ্ট করতে বলবেযা নির্বাচিত কক্ষের মানগুলিকে আলাদা করে। প্রিসেট ডিলিমিটার (আমাদের ক্ষেত্রে একটি কমা এবং একটি স্থান) ইনপুট বাক্সে স্বয়ংক্রিয়ভাবে প্রদর্শিত হবে। আপনার প্রয়োজনের উপর নির্ভর করে, আপনি ডিফল্ট ডিলিমিটারটি ছেড়ে যেতে পারেন বা অন্য একটি টাইপ করতে পারেন এবং তারপরে ঠিক আছে ক্লিক করুন৷

    এক মুহূর্ত পরে, নির্বাচিত সমস্ত ডুপ্লিকেট স্ট্রিং কক্ষগুলি লাল রঙে শেড করা হবে (অথবা আপনার কোডে যে ফন্টের রঙ সেট করা আছে)।

    টিপ। একটি কক্ষের মধ্যে দ্রুত ডুপ্লিকেটগুলি সরাতে , আপনি আমাদের আলটিমেট স্যুটে অন্তর্ভুক্ত অনেকগুলি সময় বাঁচানোর সরঞ্জামগুলির মধ্যে একটি, রিমুভ ডুপ্লিকেট সাবস্ট্রিংগুলি ব্যবহার করতে পারেন৷

    আপনার প্রয়োজনের জন্য কোডটি কীভাবে সামঞ্জস্য করবেন

    এই ব্যবহারের নোট এবং VBA-এর খুব প্রাথমিক জ্ঞান (অথবা নীচের নির্দেশাবলীগুলিকে নিবিড়ভাবে অনুসরণ করে), আপনি সহজেই আপনার প্রয়োজন অনুসারে কোডগুলি সংশোধন করতে পারেন৷

    একই মডিউলে রাখুন

    যেমন আপনি লক্ষ্য করতে পারেন, উভয় ম্যাক্রো ( HighlightDupesCaseSensitive এবং HighlightDupesCaseInsensitive ) HighlightDupeWordsInCell ফাংশনকে কল করুন। উপরের দুটি ম্যাক্রোর মধ্যে পার্থক্যটি শুধুমাত্র 3য় প্যারামিটারে (কেস সংবেদনশীল) উল্লিখিত ফাংশনে পাস করা হয়েছে৷

    কেস-সংবেদনশীল অনুসন্ধানের জন্য, এটি সত্যে সেট করা হয়েছে:

    Call HighlightDupeWordsInCell(Cell, Delimiter, True)

    কেস-অসংবেদনশীল অনুসন্ধানের জন্য, এটি FALSE এ সেট করা হয়েছে:

    Call HighlightDupeWordsInCell(Cell, Delimiter, False)

    ম্যাক্রোগুলি কাজ করার জন্য, HighlightDupeWordsInCell ফাংশনের কোডটি স্থাপন করতে হবে হিসাবে একই মডিউলম্যাক্রো।

    ডিলিমিটার

    চালালে, ম্যাক্রো আপনাকে ডেলিমিটার নির্দিষ্ট করতে বলবে যা নির্বাচিত কক্ষে শব্দ/স্ট্রিংকে আলাদা করে। ডিফল্ট ডিলিমিটার হল একটি কমা এবং একটি স্পেস (", ") এবং এটি ইনপুটবক্সে পূর্বনির্ধারিত:

    Delimiter = InputBox("Specify the delimiter that separates values in a cell", "Delimiter", ", ")

    আপনার কোডে, আপনি অন্য কোনো অক্ষর(গুলি) ব্যবহার করতে পারবেন পূর্বনির্ধারিত ডিলিমিটার হিসেবে।

    রঙ

    ডিফল্টরূপে, HighlightDupeWordsInCell ফাংশন শেডগুলি লাল ফন্টের রঙে সদৃশ হয়। রঙটি এই লাইনে সংজ্ঞায়িত করা হয়েছে:

    Cell.Characters(positionInText, Len(word)).Font.Color = vbRed

    এখানে, vbRed হল এক ধরণের VBA রঙের ধ্রুবক। ডুপগুলিকে ভিন্ন রঙে প্রদর্শন করতে, আপনি vbRed এর পরিবর্তে অন্য একটি ধ্রুবক যেমন vbGreen, vbYellow, vbBlue, ইত্যাদি দিয়ে দিতে পারেন। T এখানে সমর্থিত রঙের ধ্রুবকগুলির তালিকা পাওয়া যাবে।

    এটি কিভাবে Excel কোষে ডুপ্লিকেট শব্দ হাইলাইট করবেন। আমি পড়ার জন্য আপনাকে ধন্যবাদ এবং আশা করি আগামী সপ্তাহে আমাদের ব্লগে আপনাকে দেখতে পাব!

    উপলব্ধ ডাউনলোডগুলি

    কোডের উদাহরণ একটি কক্ষে (.xlsm ফাইল) নকল হাইলাইট করার জন্য

    আলটিমেট স্যুট 14-দিনের সম্পূর্ণ-কার্যকর সংস্করণ (.exe ফাইল)

    মাইকেল ব্রাউন হল সফ্টওয়্যার সরঞ্জাম ব্যবহার করে জটিল প্রক্রিয়াগুলিকে সরল করার আবেগের সাথে একজন উত্সর্গীকৃত প্রযুক্তি উত্সাহী৷ প্রযুক্তি শিল্পে এক দশকেরও বেশি অভিজ্ঞতার সাথে, তিনি মাইক্রোসফ্ট এক্সেল এবং আউটলুক, সেইসাথে Google পত্রক এবং ডক্সে তার দক্ষতাকে সম্মানিত করেছেন। মাইকেলের ব্লগটি তার জ্ঞান এবং দক্ষতা অন্যদের সাথে ভাগ করে নেওয়ার জন্য নিবেদিত, উত্পাদনশীলতা এবং দক্ষতার উন্নতির জন্য সহজে অনুসরণযোগ্য টিপস এবং টিউটোরিয়াল প্রদান করে৷ আপনি একজন অভিজ্ঞ পেশাদার বা একজন শিক্ষানবিসই হোন না কেন, মাইকেলের ব্লগ এই প্রয়োজনীয় সফ্টওয়্যার সরঞ্জামগুলি থেকে সর্বাধিক পাওয়ার জন্য মূল্যবান অন্তর্দৃষ্টি এবং ব্যবহারিক পরামর্শ প্রদান করে৷