সাধারণত, এডভান্সড ফিল্টার অপশন আমাদের এক ডেটা রেঞ্জ থেকে একাধিক শর্ত মেনে ডেটা এক্সট্র্যাক্ট করতে দেয়। আমরা এক্সেলে এডভান্সড ফিল্টার ব্যবহার করে ডেটা অন্য শিটে কপি করতে পারি। এক্সেলে কাজ করার সময় কপি ও পেস্ট ডেটা একটি সাধারণ ও বারবার ব্যবহৃত ফাংশন। এডভান্সড ফিল্টার ব্যবহার করে অন্য শিটে ডেটা কপি করা প্রক্রিয়াটিকে আরও কার্যকর করে তোলে। এই নিবন্ধের পদ্ধতিগুলো ব্যাখ্যা করার জন্য আমরা সব উদাহরণে একই ডেটাসেট ব্যবহার করব।
আপনি এখান থেকে অনুশীলন ওয়ার্কবুক ডাউনলোড করতে পারেন।
এক্সেলে অন্য শিটে ডেটা কপি করার জন্য এডভান্সড ফিল্টারের ২টি ব্যবহার
আমরা এডভান্সড ফিল্টার প্রয়োগ করে অন্য শিটে ডেটা কপি করার দুটি পদ্ধতি দেখিয়েব। প্রথম পদ্ধতিতে, আমরা Data ট্যাব থেকে Advanced অপশন ব্যবহার করব। দ্বিতীয় পদ্ধতিতে, আমরা VBA কোড প্রয়োগ করে এডভান্সড ফিল্টার অপশনটি এক্টিভেট করব। তারপর আমরা VBA কোড ব্যবহার করে অন্য শিটে ডেটা কপি করব।
১. এডভান্সড ফিল্টার ফিচার দিয়ে অন্য ওয়ার্কশিটে ডেটা কপি
প্রথমে এবং সবচেয়ে গুরুত্বপূর্ণ, আমরা এক্সেল রিবন থেকে Advanced অপশন ব্যবহার করব এডভান্সড ফিল্টার ক্রাইটেরিয়া মেনে অন্য শিটে ডেটা কপি করার জন্য। Advanced অপশন এক্সেলে Data ট্যাবে “Sort & Filter” সেকশন अन्तর্গত উপলব্ধ। নিচের ডেটাসেটে, আমাদের সেলসপারসনের জন্য “Last Name”, “Sales Amount”, এবং City রয়েছে। আমরা শুধু সেলসপারসনের ডেটা “Copy Sheet” নামক শিটে কপি করব যাদের লাস্ট নেম Smith এবং Jones যা আমাদের ক্রাইটেরিয়া।

তাহলে, এই অ্যাকশন করার ধাপগুলো দেখি।
ধাপসমূহ:
- প্রথমে, “Copy Sheet” নামক শিটে যান যেখানে আমরা ডেটা কপি করতে চাই।
- দ্বিতীয়ভাবে, Data ক্লিক করুন। “Sort & Filter” সেকশন থেকে Advanced অপশনে ক্লিক করুন।

- একটি নতুন ডায়ালগ বক্স আসবে নাম “Advanced Filter”।

- তৃতীয়ভাবে, “Copy to another location” অপশনটি চেক করুন।
- তারপর “List range” ইনপুট বক্সে ক্লিক করুন এবং “Actual Sheet” নামক শিটে যান।

- এখন, রেঞ্জ (B4:D15) সিলেক্ট করুন।
- আমরা দেখতে পাচ্ছি যে রেঞ্জ (B4:D15) “List range”-এ সিলেক্টেড। ইনপুট বক্সে মানটি নিচের মত দেখাবে।
List range: ‘Actual Sheet’!$B$4:$D15

- এরপর, “Advanced Filter” ডায়ালগ বক্সে নিচের মানগুলো সেট করুন-
Criteria range: ‘Actual Sheet’!$F$9:$F$11
Copy to: ‘Copy Sheet’!$B$4
- পরবর্তীতে, OK চাপুন।

- শেষে, আমরা দেখতে পাচ্ছি যে উপরের অ্যাকশনগুলো “Actual Sheet” নামক শিট থেকে সব হাইলাইট করা সারিগুলো “Copy Sheet” নামক শিটে কপি করেছে।

আরও পড়ুন: এক্সেলে এডভান্সড ফিল্টার দিয়ে অন্য শিটে ডেটা কপি করতে VBA
সদৃশ পাঠ্য:
- এক্সেলে যদি ক্রাইটেরিয়া রেঞ্জে টেক্সট থাকে তবে এডভান্সড ফিল্টার কীভাবে ব্যবহার করবেন
- এক্সেল এডভান্সড ফিল্টার: “Does Not Contain” প্রয়োগ (২ পদ্ধতি)
- এক্সেলে শুধু ইউনিক রেকর্ডের জন্য এডভান্সড ফিল্টার কীভাবে ব্যবহার করবেন
- এক্সেলে এডভান্সড ফিল্টার ব্যবহার করে খালি সেল বাদ দেওয়া (৩টি সহজ কৌশল)
- ক্রাইটেরিয়ারসহ এক্সেল VBA এডভান্সড ফিল্টার উদাহরণ (৬টি ক্রাইটেরিয়া)
২. VBA কোড দিয়ে এডভান্সড ফিল্টার প্রয়োগ করে অন্য ওয়ার্কশিটে ডেটা কপি
আমরা Advanced Filter VBA কোডসহ প্রয়োগ করে অন্য শিটে ডেটা কপি করতে পারি। মূলত এই পদ্ধতিতে, আমরা আগের কাজটি আবার করব কিন্তু এইবার আমরা Data ট্যাব থেকে Advanced অপশন ব্যবহার করব না। এর বদলে, আমরা একটি VBA কোড প্রয়োগ করব এডভান্সড ফিল্টার অপশনটির ফাংশনালিটি এক্টিভেট করতে।

তাহলে, VBA কোডসহ এডভান্সড ফিল্টার অপশন প্রয়োগ করে অন্য ওয়ার্কশিটে ডেটা কপি করার ধাপগুলো দেখি।
ধাপসমূহ:
- প্রথমে, শিট “Copy Sheet-2” সিলেক্ট করুন, যেখানে আমরা ডেটা কপি করব।
- পরবর্তীতে, শিটে রাইট-ক্লিক করুন এবং অপশন “View Code” সিলেক্ট করুন।

- তবে একটি খালি VBA মডিউল আসবে।
- খালি মডিউলে নিচের কোডটি ইনসার্ট করুন:
Sub Advance_Filter_to_Copy_to_Another_Sheet() Dim Str As String Dim Address As String Dim Rg As Range Dim CRg As Range Dim SRg As Range On Error Resume Next xAddress = ActiveWindow.RangeSelection.Address Set Rg = Application.InputBox("Please select the filter range:", "Copy to Another Sheet", xAddress, , , , , 8) If Rg Is Nothing Then Exit Sub Set CRg = Application.InputBox("Please select the criteria range:", "Copy to Another Sheet", "", , , , , 8) If CRg Is Nothing Then Exit Sub Set SRg = Application.InputBox("Please select the output range:", "Copy to Another Sheet", "", , , , , 8) If SRg Is Nothing Then Exit Sub Rg.AdvancedFilter xlFilterCopy, CRg, SRg, False SRg.Worksheet.Activate SRg.Worksheet.Columns.AutoFit End Sub
- এখন F5 কী চাপুন অথবা Run-এ ক্লিক করুন কোড রান করতে।

- উপরের অ্যাকশনটি একটি নতুন ডায়ালগ বক্স খুলবে নাম “Copy to Another Sheet”।

- এরপর, ইনপুট বক্সে ক্লিক করুন। “VBA” নামক শিটে যান এবং রেঞ্জ (B4:D15) সিলেক্ট করুন।
- OK চাপুন।

- তবে আরেকটি ডায়ালগ বক্স আসবে। আমাদের ওই ডায়ালগ বক্সের ইনপুট বক্সে ক্রাইটেরিয়া রেঞ্জের মান ইনসার্ট করতে হবে। ক্রাইটেরিয়া ইনসার্ট করতে ইনপুট বক্সে ক্লিক করুন, শিটের নাম VBA সিলেক্ট করুন এবং সেই শিট থেকে রেঞ্জ (F9:F11) সিলেক্ট করুন।
- উপরের অ্যাকশনগুলো ইনপুট বক্সে নিচের মত মান দেখাবে:
VBA!$B$4:$D$15
- এখন OK চাপুন।

- আমরা আউটপুট রেঞ্জের জন্য আরেকটি ডায়ালগ বক্স দেখতে পাচ্ছি।
- সেল B4 সিলেক্ট করুন শিট থেকে যেখানে আমরা ডেটা কপি করতে চাই। এতে ইনপুট বক্সে মান $B$4 ইনসার্ট হবে।
- OK চাপুন।

- চূড়ান্তভাবে, আমরা সব হাইলাইট করা সারি অন্য একটি শিটে কপি করা পেয়েছি।

আরও পড়ুন: এক্সেলে এডভান্সড ফিল্টার প্রয়োগ করে অন্য লোকেশনে কপি করা
উপসংহার
উপসংহারে, এই নিবন্ধটি এক্সেলে Advanced Filter ব্যবহার করে অন্য শিটে ডেটা কপি করার একটি ওভারভিউ। সেরা ফলাফলের জন্য, আমাদের অনুশীলন ওয়ার্কবুক ডাউনলোড করুন এবং ব্যবহার করুন, যা এই পোস্টের সাথে সংযুক্ত। আপনার কোনো প্রশ্ন থাকলে নিচে কমেন্ট করুন। আমাদের টিম যত্নশীলতापূর্বক আপনাকে যত্ন দ্রুত উত্তর দিতে চেষ্টা করবে। ভবিষ্যতে, আরও অনন্য Microsoft Excel সমাধানের জন্য আমাদের ওপর নজর রাখুন।
সম্পর্কিত নিবন্ধসমূহ
- এক্সেলে একাধিক ক্রাইটেরিয়ারসহ এডভান্সড ফিল্টার (১৫ উপযুক্ত উদাহরণ)
- ডাইনামিক এডভান্সড ফিল্টার এক্সেল (VBA ও ম্যাক্রো)
- VBA-এ এডভান্সড ফিল্টার কীভাবে ব্যবহার করবেন (স্টেপ-বাই-স্টেপ গাইডলাইন)
- ক্রাইটেরিয়া রেঞ্জসহ এক্সেল এডভান্সড ফিল্টার (১৮ অ্যাপ্লিকেশন)
- এক্সেল এডভান্সড ফিল্টার কাজ না করলে (২ কারণ ও সমাধান)
