সুচিপত্র
আপনি যদি এক্সেল VBA -এ একাধিক মানদণ্ডের অ্যারে সহ ফিল্টার করার উপায় খুঁজছেন, তাহলে আপনি সঠিক জায়গায় আছেন। একাধিক মানদণ্ডের উপর ভিত্তি করে একটি বড় ডেটাসেট ফিল্টার করা এক্সেলের প্রচলিত বৈশিষ্ট্য ব্যবহার করার পরিবর্তে VBA কোডের সাহায্যে সহজ করা যেতে পারে।
তাই, আসুন আমাদের মূল নিবন্ধটি শুরু করা যাক।
ওয়ার্কবুক ডাউনলোড করুন
একাধিক Criteria.xlsm সহ ফিল্টার
এক্সেল VBA ব্যবহার করে অ্যারেতে একাধিক মানদণ্ড সহ ফিল্টার করার 7 উপায়
নিম্নলিখিত ডেটাসেটে, আমাদের কাছে ছাত্রদের নাম এবং তাদের আইডির সাথে সঙ্গতিপূর্ণ নম্বরের কিছু রেকর্ড রয়েছে। আমরা কিছু কোড ব্যবহার করে অ্যারে হিসাবে বিভিন্ন মানদণ্ডের ভিত্তিতে এই ডেটাসেটটি ফিল্টার করার চেষ্টা করব।
আমরা এখানে Microsoft Excel 365 সংস্করণ ব্যবহার করেছি, আপনি আপনার সুবিধা অনুযায়ী অন্য যেকোনো সংস্করণ ব্যবহার করতে পারেন।
পদ্ধতি-1: অ্যারে
এখানে পাঠ্য হিসাবে একাধিক মানদণ্ড সহ ফিল্টার করুন, আমরা এর উপর ভিত্তি করে নিম্নলিখিত ডেটাসেটগুলি ফিল্টার করার চেষ্টা করব। এমিলি , ড্যানিয়েল , এবং গ্যাব্রিয়েল <10 সহ একাধিক মানদণ্ডের জন্য ছাত্রের নাম কলাম> একটি অ্যারেতে৷
পদক্ষেপ-01 :
➤ ডেভেলপার এ যান ট্যাব >> ভিজ্যুয়াল বেসিক বিকল্প।
14>
তারপর, ভিজ্যুয়াল বেসিক সম্পাদক ওপেন হবে।
➤ ঢোকান ট্যাব >> মডিউল বিকল্পে যান।
এর পরে, একটি মডিউল হবেতৈরি করা হয়েছে।
ধাপ-02 :
➤ নিচের কোডটি লিখুন
1341
এখানে, আমরা ঘোষণা করেছি রেঞ্জের হেডারের নাম B3:D3 যেটিতে আমরা ফিল্টার প্রয়োগ করব এবং ক্ষেত্র:=2 এই রেঞ্জের কলাম নম্বর যার উপর ভিত্তি করে আমরা এই ফিল্টারিং প্রক্রিয়াটি করব।
অবশেষে, আমরা একাধিক ছাত্রের নাম ঘোষণা করার জন্য একটি অ্যারে হিসাবে মানদণ্ড নির্ধারণ করেছি যেমন এমিলি , ড্যানিয়েল , এবং গ্যাব্রিয়েল ।
➤ চাপুন F5 ।
তারপর, আপনি ছাত্রদের নাম এবং তাদের অনুরূপ আইডি এবং মার্কস শিক্ষার্থীদের জন্য দেখানোর জন্য একাধিক মানদণ্ডের জন্য ডেটাসেট ফিল্টার করা হবে। 1> এমিলি , ড্যানিয়েল , এবং গ্যাব্রিয়েল ।
<18
আরো পড়ুন: এক্সেলের একাধিক মানদণ্ড ফিল্টার করুন (4টি উপযুক্ত উপায়)
পদ্ধতি-2: অ্যারে ব্যবহার করে একাধিক সংখ্যার মানদণ্ড সহ ফিল্টার করুন এক্সেল VBA
এখানে, আমরা 101135 , 10 আইডিগুলির জন্য নিম্নলিখিত ডেটাসেট ফিল্টার করব 1137 , এবং 101138 এই সংখ্যাগুলিকে একটি অ্যারেতে একাধিক মানদণ্ড হিসাবে ব্যবহার করে৷
পদক্ষেপ :
➤ অনুসরণ করুন পদ্ধতি-01 এর পদ্ধতি-1 ।
➤ নিচের কোডটি লিখুন
2188
এখানে, আমরা B3:D3 পরিসরে হেডারের নাম ঘোষণা করেছি যেখানে আমরা ফিল্টার প্রয়োগ করব এবং ক্ষেত্র:=2 এই রেঞ্জের কলাম নম্বর যার উপর ভিত্তি করে আমরা এই ফিল্টারিং করবেপ্রক্রিয়া।
অবশেষে, আমরা একাধিক ছাত্রদের আইডি যেমন 101135 , 101137 ঘোষণা করার জন্য একটি অ্যারে হিসাবে মানদণ্ড সেট করেছি , এবং 101138 এবং আমরা সেগুলিকে স্ট্রিং হিসাবে নির্দিষ্ট করার জন্য ইনভার্টেড কমা দিয়ে রেখেছি কারণ অটোফিল্টার শুধুমাত্র স্ট্রিংগুলির একটি অ্যারের জন্য কাজ করবে৷<3
➤ F5 টিপুন।
এর পর, আপনি আইডি শিক্ষার্থীদের নাম ও চিহ্ন পাবেন। 101135 , 101137 , এবং 101138 ।
আরও পড়ুন: VBA কলাম থেকে এক্সেলের অ্যারেতে অনন্য মান পেতে (3 মানদণ্ড)
পদ্ধতি-3: ব্যবহারের জন্য একটি পরিসরে একাধিক মানদণ্ড সেট করা অ্যারে
এখানে, আমরা তালিকা কলামে মানদণ্ডগুলি তালিকাভুক্ত করেছি যেখানে আইডি রয়েছে 101134 , 101135 , এবং 101136 যার উপর ভিত্তি করে আমরা আমাদের ফিল্টারিং প্রক্রিয়া করব।
পদক্ষেপ :
➤ অনুসরণ করুন পদ্ধতি-1 এর ধাপ-01 ।
➤ নিচের কোডটি লিখুন
8624
এখানে , আমরা ঘোষণা আছে ared ID_range , k ভেরিয়েন্ট এবং ID_range হল অ্যারে যা একাধিক মানদণ্ড সংরক্ষণ করবে এবং k হলো এই অ্যারের নিম্ন সীমা থেকে উপরের সীমা পর্যন্ত বৃদ্ধি। নিম্ন সীমা এবং উচ্চ সীমা থাকার জন্য আমরা যথাক্রমে LBOUND ফাংশন এবং UBOUND ফাংশন ব্যবহার করেছি।
ফর লুপ রূপান্তর করার জন্য ব্যবহৃত হয় স্ট্রিং ছাড়া অন্য মান CStr ফাংশন এর সাহায্যে স্ট্রিংগুলিতে অ্যারেতে। অবশেষে, আমরা এই অ্যারেটিকে Criteria1 হিসাবে ব্যবহার করেছি।
➤ চাপুন F5 ।
পরে, আপনি 101134 , 101135 , এবং 101136 আইডি থাকা ছাত্রদের নাম ও চিহ্ন পাবেন ।
আরো পড়ুন: এক্সেল ভিবিএ-তে একাধিক মানদণ্ড দ্বারা ভিন্ন কলাম ফিল্টার করুন
অনুরূপ রিডিংস
- এক্সেলে অনন্য মানগুলি কীভাবে ফিল্টার করবেন (8 সহজ উপায়)
- এক্সেলে কাস্টম ফিল্টার সম্পাদন করুন (5 উপায়)
- ভিবিএ (ম্যাক্রো, ইউডিএফ, এবং ইউজারফর্ম) দিয়ে একটি অ্যারের গড় গণনা করুন
- এক্সেল ফিল্টারের জন্য শর্টকাট (3 দ্রুত ব্যবহার উদাহরণ সহ)
পদ্ধতি-4: একাধিক মানদণ্ড সহ অ্যারে তৈরির জন্য SPLIT এবং Join ফাংশন ব্যবহার করা
এখানে, আমরা লিস্টে নিম্নলিখিত তালিকাটি ব্যবহার করব কলাম একটি অ্যারে হিসাবে এবং ডেটাসেটটিকে সঠিকভাবে ফিল্টার করার জন্য আমরা SPLIT ফাংশন , JOIN ফাংশন , এবং ট্রান্সপোজ ফাংশন এ ব্যবহার করব। VBA কোড।
পদক্ষেপ :
➤ ফল নিম্ন পদ্ধতি-1 এর পদক্ষেপ-01 ।
➤ নিচের কোডটি লিখুন
8047
এখানে, ট্রান্সপোজ রূপান্তর করবে 2D একটি 1D অ্যারেতে অ্যারে অন্যথায় AutoFilter কাজ করবে না, JOIN প্রত্যেকটি মানকে একটি স্ট্রিং-এর মধ্যে যুক্ত করবে, এবং অবশেষে, SPLIT ইনপুট দেওয়ার জন্য প্রতিটি স্ট্রিং ভেঙে ফেলবেডেটাসেট ফিল্টার করার মাপকাঠি হিসেবে আলাদাভাবে সেগুলো।
➤ F5 টিপুন।
অবশেষে, আপনি এর নাম এবং চিহ্ন পাবেন ছাত্রদের আইডি 101134 , 101135 , এবং 101136 ।
আরও পড়ুন: ভিবিএতে একটি অ্যারেতে একটি স্ট্রিংকে কীভাবে বিভক্ত করবেন (3 উপায়ে)
পদ্ধতি-5 : VBA
এই বিভাগে, আমরা স্টুডেন্ট আইডি কলামের উপর নির্ভর করে নিম্নলিখিত ডেটাসেট ফিল্টার করব তালিকা কলামে তালিকাভুক্ত মানদণ্ড।
পদক্ষেপ :
➤ অনুসরণ করুন পদক্ষেপ- 01 এর পদ্ধতি-1 ।
➤ নিচের কোডটি লিখুন
4588
এখানে, আমরা k কে পূর্ণসংখ্যা হিসাবে ঘোষণা করেছি। , ID_range(100) স্ট্রিং হিসাবে যেখানে ID_range একটি অ্যারে যা 100 মান পর্যন্ত সংরক্ষণ করবে। এই অ্যারের জন্য মান নির্ধারণ করতে আমরা এখানে ফর লুপ এর জন্য k থেকে 4 থেকে 6 এর সারি সংখ্যা হিসাবে ব্যবহার করেছি। তালিকা কলাম এবং F কলামের নাম।
অবশেষে, আমরা এই অ্যারেটিকে অটোফিল্টার এর জন্য মাপদণ্ড1 হিসাবে ব্যবহার করেছি। .
➤ F5 টিপুন।
অবশেষে, আপনি আইডি আছে এমন ছাত্রদের নাম এবং চিহ্ন পাবেন 9>101134 , 101135 , এবং 101136 ।
আরো পড়ুন: ভিবিএ দিয়ে এক্সেলে একাধিক মানদণ্ড ফিল্টার করুন (এন্ড এবং বা উভয়ইপ্রকার)
পদ্ধতি-6: একাধিক মানদণ্ডের জন্য নামকৃত পরিসর ব্যবহার করা
এখানে, আমরা তালিকা কলামে কিছু ছাত্রের নাম তালিকাভুক্ত করেছি এবং এটির নামকরণ করেছি ছাত্র হিসাবে পরিসীমা। এই নামযুক্ত পরিসরটি ব্যবহার করে আমরা একটি অ্যারেকে সংজ্ঞায়িত করব যাতে অটোফিল্টার বৈশিষ্ট্যের একাধিক মানদণ্ড থাকবে।
পদক্ষেপ :<3
➤ অনুসরণ করুন পদ্ধতি-1 এর ধাপ-01 ।
➤ নিচের কোডটি লিখুন
4802
এখানে, আমরা ঘোষণা করেছি স্টুডেন্ট_রেঞ্জ , কে একটি ভেরিয়েন্ট হিসাবে, এবং ট্রান্সপোজ ফাংশন ব্যবহার করে নামযুক্ত পরিসরের 2D অ্যারে রূপান্তর করতে শিক্ষার্থী একটি 1D অ্যারেতে এবং তারপর এটিকে ছাত্র_পরিসরে সংরক্ষণ করে। তারপর, এটি অটোফিল্টার পদ্ধতির জন্য Criteria1 হিসাবে ব্যবহৃত হয়।
➤ চাপুন F5 ।
তারপর, ছাত্রদের নাম এবং তাদের সংশ্লিষ্ট আইডি এবং মার্কস <10 দেখানোর জন্য একাধিক মানদণ্ডের জন্য আপনার ডেটাসেট ফিল্টার করা হবে। শিক্ষার্থীদের জন্য জেফারসন , এমিলি , এবং সারা ।
সম্পর্কিত বিষয়বস্তু: VBA to Excel এ ট্রান্সপোজ অ্যারে (3 পদ্ধতি)
পদ্ধতি-7: একটি অ্যারে
এখানে একাধিক মানদণ্ড সহ ফিল্টার টেবিল এখানে, আমাদের নিম্নলিখিত টেবিল যার নাম টেবিল1 এবং এক্সেল VBA ব্যবহার করে আমরা এমিলি , ড্যানিয়েল নামের উপর ভিত্তি করে এই টেবিলটি ফিল্টার করার চেষ্টা করব এবং গ্যাব্রিয়েল একটি অ্যারেতে একাধিক মানদণ্ড হিসাবে৷
পদক্ষেপগুলি :
➤ পদ্ধতি-1 এর ধাপ-01 অনুসরণ করুন।
➤ নিচের কোডটি লিখুন
5241
এখানে, লিস্টঅবজেক্টস(“টেবিল1”) টেবিলটি সংজ্ঞায়িত করার জন্য ব্যবহৃত হয় টেবিল1 , ক্ষেত্র:=2 ফিল্টারিং প্রক্রিয়ার ভিত্তি হিসাবে এই পরিসরের দ্বিতীয় কলাম সেট আপ করার জন্য এবং অবশেষে আমরা একটি অ্যারে সংজ্ঞায়িত করেছি Criteria1 এর একাধিক নাম রয়েছে।
➤ চাপুন F5 ।
অবশেষে, আপনার কাছে ডেটাসেট থাকবে শিক্ষার্থীদের নাম এবং তাদের সংশ্লিষ্ট আইডি এবং মার্কস শিক্ষার্থীদের জন্য দেখানোর জন্য একাধিক মানদণ্ডের জন্য ফিল্টার করা হয়েছে>এমিলি , ড্যানিয়েল , এবং গ্যাব্রিয়েল ।
আরো পড়ুন: এক্সেল ভিবিএ: সেল মানের উপর ভিত্তি করে ফিল্টার টেবিল (৬টি সহজ পদ্ধতি)
অনুশীলন বিভাগ
এর দ্বারা অনুশীলন করার জন্য আমরা নিজেই অনুশীলন নামের একটি শীটে নীচের মত একটি অনুশীলন বিভাগ প্রদান করেছি। অনুগ্রহ করে এটি নিজে করুন৷
উপসংহার
এই নিবন্ধে, আমরা এক্সেল <1 ব্যবহার করে অ্যারে হিসাবে একাধিক মানদণ্ডের সাথে ফিল্টার করার উপায়গুলি কভার করার চেষ্টা করেছি>VBA সহজেই। আশা করি আপনার কাজে লাগবে। যদি আপনার কোন পরামর্শ বা প্রশ্ন থাকে, তাহলে মন্তব্য বিভাগে সেগুলি শেয়ার করুন৷
৷