কখনও কখনও আমাদের কোনো কারণে ডেটাসেট মডিফাই করতে হয়। এবং যখন আমরা একাধিক ওয়ার্কশিট এবং ওয়ার্কবুকের সাথে কাজ করি, তখন এটি খুব কঠিন হয়ে যায়। কিন্তু আপনি যদি এক্সেলের ফাইন্ড অ্যান্ড রিপ্লেস টুল এবং VBA কোডের সঠিক ব্যবহার জানেন তবে এই কঠিন কাজটি বেশ সহজ হয়ে যায়। এই আর্টিকেলে আমরা দেখাব কিভাবে এক্সেলে মাল্টিপল শীট এবং ফাইলে মান খুঁজে বের করে রিপ্লেস করতে হয় ফাইন্ড অ্যান্ড রিপ্লেস টুল এবং VBA ম্যাক্রো দিয়ে।
ওয়ার্কবুক ডাউনলোড করুন
আপনি এখান থেকে ফ্রি প্র্যাক্টিস এক্সেল ওয়ার্কবুক ডাউনলোড করতে পারেন।
এক্সেলে মাল্টিপল ওয়ার্কশিট এবং ওয়ার্কবুকে মান খুঁজে রিপ্লেস করার ৩টি পদ্ধতি
আগামী সেকশনগুলোতে আপনি শিখবেন কিভাবে এক্সেলের ফাইন্ড অ্যান্ড রিপ্লেস ফিচার এবং VBA ম্যাক্রো দিয়ে এক্সেলের একাধিক শীট এবং ফাইলে নির্দিষ্ট মান খুঁজে রিপ্লেস করতে হয়।
১. একটি এক্সেল ফাইলে মাল্টিপল ওয়ার্কশিটে মান খুঁজে রিপ্লেস করুন
আপনি মৌজূদা ওয়ার্কবুকের সকল ওয়ার্কশিট থেকে একটি নির্দিষ্ট মান খুঁজে বের করে সেগুলো একসাথে আপনার পছন্দের যেকোনো মান দিয়ে রিপ্লেস করতে পারেন। এক্সেলের ফাইন্ড অ্যান্ড রিপ্লেস টুল দিয়ে এটি কীভাবে করবেন তা দেখাচ্ছি।
নিচের ছবিতে আপনি দেখতে পাচ্ছেন যে আমাদের একটি এক্সেল শীট আছে যার নাম One।

এই একই ওয়ার্কবুকে আমাদের আরেকটি শীট আছে যার নাম Two।

এখন আমরা যা করব: আমরা ফাইন্ড অ্যান্ড রিপ্লেস ফিচার ব্যবহার করে একটি নির্দিষ্ট শব্দ খুঁজে বের করে অন্য একটি শব্দ দিয়ে রিপ্লেস করব। আমাদের কেসে, আমরা শব্দ “Ambrose” কে “Moxley” দিয়ে রিপ্লেস করব।
ধাপসমূহ:
- হোম ট্যাব থেকে, ফাইন্ড অ্যান্ড সিলেক্ট -> রিপ্লেস… সিলেক্ট করুন।

- उसके बाद, একটি ফাইন্ড অ্যান্ড রিপ্লেস পপ-আপ বক্স আসবে। অপশনস>> এ ক্লিক করুন (নিচের ছবিতে দেখানো হয়েছে)।

- তারপর, পপ-আপ বক্সে নতুন অপশনগুলো আসবে। যে শব্দটি খুঁজতে চান সেটি লিখুন (আমাদের কেসে এটি “Ambrose”) ফাইন্ড হ্যাট সেকশনে।
- তারপর, যে শব্দ দিয়ে আগের শব্দটি রিপ্লেস করতে চান সেটি লিখুন (আমাদের কেসে শব্দটি “Moxley”) রিপ্লেস উইথ সেকশনে।
- उसके बाद, Within-এর পাশের ড্রপ-ডাউন লিস্ট থেকে Workbook সিলেক্ট করুন। এটি ওয়ার্কবুকের সকল শীটে প্রদত্ত শব্দটি খুঁজে বের করে সেগুলো রিপ্লেস করবে।
- শেষে রিপ্লেস অল-এ ক্লিক করুন।

আপনি একটি কনফার্মেশন বক্স পাবেন যা সকল রিপ্লেসমেন্টের কথা বলবে। যেহেতু আমাদের ওয়ার্কবুকে শুধু ২টি ওয়ার্কশিট আছে তাই শুধু ২টি রিপ্লেসমেন্ট ঘটেছে। আপনার যদি বেশি শীট থাকে তবে বেশি রিপ্লেসমেন্ট হবে।

এখন চেক করি রিপ্লেসমেন্টগুলো আসলে ঘটেছে কিনা!

উপরোক্ত এবং নিচের ছব দুটি বিবেচনা করুন।

আমাদের দুটি শীট থেকেই শব্দ “Ambrose” এখন শব্দ “Moxley” দিয়ে রিপ্লেস হয়ে গেছে।
আরও পড়ুন: VBA দিয়ে এক্সেলে একাধিক মান খুঁজে রিপ্লেস করুন (৩ উদাহরণ)
২. একাধিক ওয়ার্কবুকের একাধিক শীতে মান খুঁজে রিপ্লেস করুন
আপনি কি জানেন যে নির্দিষ্ট ওয়ার্কশিটের জন্য ফাইন্ড অ্যান্ড রিপ্লেস অপারেশন সম্পন্ন করার পর, ফাইন্ড অ্যান্ড রিপ্লেস পপ-আপ বক্সটি আপনি ম্যানুয়ালি বন্ধ না করার পর্যন্ত বন্ধ হবে না? সুতরাং, একাধিক ওয়ার্কবুকে মান রিপ্লেস করতে হলে আপনি এই ফিচারের সুবিধা নিতে পারেন।
নিচের ছবিগুলো দেখুন। আমরা দুটি এক্সেল ওয়ার্কবুক খুলেছি। একটি নাম ফাইন্ড অ্যান্ড রিপ্লেস ভ্যালু (নিচের ছবি দেখুন)।

অন্যটির নাম ট্রান্সপোজ মাল্টিপল কলামস (নিচের ছবিতে দেখানো হয়েছে)।

এখন, উপরের সেকশনে আলোচনা করা মতো একটি নির্দিষ্ট ওয়ার্কশিট থেকে ভ্যালু রিপ্লেস করার পর, আপনি লক্ষ্য করবেন যে ফাইন্ড অ্যান্ড রিপ্লেস পপ-আপ বক্সটি এখনও আছে।
- সেখান থেকে, আপনাকে শুধু করতে হবে, ক্লোজ বাটনে ক্লিক করার বদলে, শুধু পরবর্তী ওয়ার্কবুকের ওপর হোভার করে রিপ্লেস অল চাপুন। এটি আপনার দেওয়া মান খুঁজে বের করে সেটিকে আপনার দেওয়া মান দিয়ে সেটি ওয়ার্কবুকের সকল ওয়ার্কশিটেও রিপ্লেস করবে।

আপনি যতটুকু ওয়ার্কবুকে এই অপারেশনটি পারফর্ম করতে চান পারেন।
আরও পড়ুন: ফর্মুলা ব্যবহার করে এক্সেলে ফাইন্ড অ্যান্ড রিপ্লেস করুন (৪ উদাহরণ)
সাদৃশ্য পাঠনা:
- এক্সেল ফর্মুলাতে টেক্সট রিপ্লেস করুন (৭টি সহজ উপায়)
- এক্সেলে অ্যাস্টারিস্ক (*) ক্যারেক্টার খুঁজে রিপ্লেস করুন
- এক্সেল VBA দিয়ে একটি রেঞ্জে টেক্সট খুঁজে রিপ্লেস করুন (ম্যাক্রো অ্যান্ড ইউজারফর্ম)
- এক্সেল কলামে ফাইন্ড অ্যান্ড রিপ্লেস করুন (৬ উপায়)
- এক্সেলে সিলেকশনের ভিতরে ফাইন্ড অ্যান্ড রিপ্লেস করুন (৭ মেথড)
৩. এক্সেলে ওপেন ওয়ার্কবুকে মান খুঁজে রিপ্লেস করতে VBA এম্বেড করুন
আপনি আগের সেকশনগুলোতে আলোচনা করা সব কাজ শুধু একটি VBA কোড দিয়ে করতে পারেন। আপনি যদি এডভান্সড এক্সেল ইউজার হন, তবে এই সেকশনটি আপনার জন্য। VBA ইমপ্লিমেন্ট করা এক্সেলে যেকোনো অপারেশন রান করার সবচেয়ে কার্যকর, দ্রুত এবং নিরাপদ পদ্ধতি। আপনি এক্সেলে একটি ওয়ার্কবুকের সকল ওয়ার্কশিট থেকে মান খুঁজে রিপ্লেস করতে পারেন। VBA ম্যাক্রো দিয়ে এটি কীভাবে করবেন তা দেখি।
ধাপসমূহ:
- শুরুতে, আপনার কীবোর্ডে Alt + F11 চাপুন অথবা ডেভেলপার -> ভিজ্যুয়াল বেসিক ট্যাবে যান ভিজ্যুয়াল বেসিক এডিটর খোলার জন্য।

- পরবর্তীতে, পপ-আপ কোড উইন্ডোতে, মেনুবার থেকে, ইনসার্ট -> মডিউল-এ ক্লিক করুন।

- তারপর, নিচের কোডটি কপি করে কোড উইন্ডোতে পেস্ট করুন।
Sub MultipleFindAndReplace() Dim iSheet As Worksheet Dim OldValue As Variant Dim NewValue As Variant Dim i As Long OldValue = Array("John", "Roman", "Dean", "Seth", "Finn") NewValue = Array("Ben", "Alex", "Joe", "Chris", "Josh") For i = LBound(OldValue) To UBound(OldValue) For Each iSheet In ActiveWorkbook.Worksheets iSheet.Cells.Replace What:=OldValue(i), Replacement:=NewValue(i), LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False Next iSheet Next i End Sub
আপনার কোডটি এখন রান করার জন্য প্রস্তুত।

এই কোডের টুকরো “John, Roman, Dean, Seth, Finn” মানগুলির অ্যারে কে “Ben, Alex, Joe, Chris, Josh” মানগুলোর সাথে রিপ্লেস করবে।
- এখন, আপনার কীবোর্ডে F5 চাপুন অথবা মেনুবার থেকে রান -> রান সাব/ইউজারফর্ম সিলেক্ট করুন। আপনি সাব-মেনুবারের ছোট রান আইকনে ক্লিক করেও ম্যাক্রো রান করতে পারেন।

কোড এক্সিকিউশনের পর, নিচের ছবি দেখুন ফলাফল বুঝতে।

আপনার কোডে রিপ্লেস করার জন্য যেসব মান (“John, Roman, Dean, Seth, Finn”) দিয়েছেন সেগুলো আপনার দেওয়া মান (“Ben, Alex, Joe, Chris, Josh”) দিয়ে সফলভাবে রিপ্লেস হয়ে গেছে।
আপনি এই কোডটিও এক্সিকিউট করতে পারেন মাল্টিপল ওয়ার্কশিট এবং মাল্টিপল ওয়ার্কবুকে থেকে একাধিক মান খুঁজে রিপ্লেস করতে।
- একটি ওয়ার্কবুকে ম্যাক্রো রান করার পর, এখন শুধু অন্য ওয়ার্কবুকের ওপর হোভার করুন। তারপর সেখানে যান ডেভেলপার -> ম্যাক্রোস।
- একটি ম্যাক্রো পপ-আপ বক্স আসবে। সেখানে ম্যাক্রো নাম সিলেক্ট করে রান-এ ক্লিক করুন।

আপনি দেখবেন যে পরে খোলা ওয়ার্কবুকে একই ফলাফল প্রযোজ্য হয়েছে। কোডে আপনি যে ফাইন্ড অ্যান্ড রিপ্লেস ভ্যালুগুলো দিয়েছেন সেগুলো সফলভাবে সেসব শব্দ খুঁজে বের করে রিপ্লেস করেছে।
VBA কোড ব্যাখ্যা
Dim iSheet As Worksheet Dim OldValue As Variant Dim NewValue As Variant Dim i As Long
ভেরিয়েবল ডিক্লেয়ার করা।
OldValue = Array("John", "Roman", "Dean", "Seth", "Finn") NewValue = Array("Ben", "Alex", "Joe", "Chris", "Josh")
OldValue ভেরিয়েবলে খুঁজতে হবে এমন মানগুলো সেট করা এবং NewValue ভেরিয়েবলে রিপ্লেস করতে হবে এমন মানগুলো সেট করা।
For i = LBound(OldValue) To UBound(OldValue) For Each iSheet In ActiveWorkbook.Worksheets iSheet.Cells.Replace What:=OldValue(i), Replacement:=NewValue(i), LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False Next iSheet Next i
এই কোডের টুকরো প্রথমে অ্যারে লিস্টের প্রতিটি আইটেমের মাধ্যমে লুপ চালাবে। তারপর ActiveWorkbook-এ প্রতিটি ওয়ার্কশিটের মাধ্যমে লুপ চালাবে। স্ক্যান করার পর, ম্যাচ পেলে OldValue কে NewValue দিয়ে রিপ্লেস করবে। এক শীটে ইটেরেশন শেষ হলে সেটি পরবর্তী শীটে চলে যাবে এবং আবার লুপ এক্সিকিউট করা শুরু করবে।
আরও পড়ুন: এক্সেলে একাধিক মান খুঁজে রিপ্লেস করুন (৬টি কুইক মেথড)
উপসংহার
উপসংহারে, এই আর্টিকেলে আপনাকে দেখানো হয়েছে কিভাবে এক্সেলের ফাইন্ড অ্যান্ড রিপ্লেস টুল এবং VBA ম্যাক্রো দিয়ে একাধিক শীট এবং ফাইলে মান খুঁজে রিপ্লেস করতে হয়। আশা করি এই আর্টিকেল আপনার জন্য খুব উপকারী হবে। বিষয়টি নিয়ে যেকোনো প্রশ্ন জিজ্ঞাসা করতে স্বাধীনভাবে অনুভব করুন।
সম্পর্কিত আর্টিকেল
- এক্সেলে ডেটা ক্লিন-আপ টেকনিক: সেলে টেক্সট যোগ করা
- এক্সেলে ফর্মুলার আগে টেক্সট যোগ করুন (৪টি সহজ উপায়)
- ওয়াইল্ডকার্ড ব্যবহার করে এক্সেলে ফাইন্ড অ্যান্ড রিপ্লেস মান
- এক্সেল VBA-তে সাবস্টিটিউট ফাংশন ব্যবহার করুন (৩ উদাহরণ)
- এক্সেলে স্পেশাল ক্যারেক্টার রিপ্লেস করুন (৬ উপায়)