কম্পিউটার টিউটোরিয়াল

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

Table হল এক্সেলে VBA এর সাথে কাজ করার সময় সবচেয়ে গুরুত্বপূর্ণ এবং ব্যাপকভাবে ব্যবহৃত অবজেক্টগুলোতে একটি। এই আর্টিকেলে, আমি দেখাব কিভাবে আপনি এক্সেল Table-কে VBA-এর সাথে ব্যবহার করতে পারেন।

VBA দিয়ে এক্সেল টেবিল ব্যবহারের ৯টি পদ্ধতি

এক্সেলে একটি টেবিল হল একটি বিশেষ ধরনের ডেটা সেট যেখানে প্রথম সারিতে হেডার থাকে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

VBA-তে, এটি ListObject ক্যাটেগরির অধীন পড়ে। এক্সেল Table-কে VBA-তে ব্যবহার করার পদ্ধতিগুলো নিচে দেওয়া হলো।

১. VBA দিয়ে এক্সেলে টেবিল তৈরি করুন

সবচেয়ে প্রথমে, আমরা শিখব কিভাবে VBA দিয়ে এক্সেলে Table তৈরি করা যায়।

VBA দিয়ে এক্সেলে Table তৈরি করতে, প্রথমে আপনাকে Table-কে ListObject হিসেবে ডিক্লেয়ার করতে হবে।

তারপর আপনার কাঙ্ক্ষিত রেঞ্জে Table ইনসার্ট করতে হবে।

Dim Table1 as ListObject Set Table1 = ActiveSheet.ListObjects.Add(xlSrcRange, Range("B4:D13"), , xlYes)
[এখানে Table1 হল VBA-তে Table-এর নাম এবং B4:D13 হল আমার এক্টিভ ওয়ার্কশিটের রেঞ্জ যেখানে আমি টেবিল চাই। আপনি যেকোনো কিছু ব্যবহার করতে পারেন।]

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এই কোডটি রান করুন। এটি আপনার এক্টিভ ওয়ার্কশিটের B4:D13 রেঞ্জে একটি Table তৈরি করবে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

আপনি চাইলে টেবিলের নাম আপনার পছন্দ অনুযায়ী যেকোনো কিছুতে পরিবর্তন করতে পারেন।

Table1.Name = "MyTable"

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি টেবিলের নাম MyTable-এ পরিবর্তন করবে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

আরও পড়ুন: শর্টকাট দিয়ে এক্সেলে টেবিল তৈরি

২. VBA দিয়ে এক্সেল টেবিল রেফার করুন

আমরা VBA দিয়ে এক্সেলে Table তৈরি করা শিখলাম।

এখন এক্সেলে ইতিমধ্যে তৈরি একটি Table রেফার করতে, আপনাকে প্রথমে Table-কে ListObject হিসেবে ডিক্লেয়ার করতে হবে।

তারপর এক্সেলে উপলব্ধ নাম দিয়ে Table-কে রেফার করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable")

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি এক্সেলে "MyTable" টেবিলকে Table1 নাম দিয়ে রেফার করে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

আরও পড়ুন: এক্সেল টেবিল রেফারেন্স ব্যবহার করার পদ্ধতি

৩. VBA দিয়ে এক্সেলে টেবিলে ভ্যালু এন্ট্রি করুন

একটি Table-এ ভ্যালু এন্ট্রি করতে, প্রথমে আপনাকে Table রেফার করতে হবে।

তারপর VBA-র Range.Cells প্রোপার্টি ব্যবহার করে একটি সেলে ভ্যালু এন্ট্রি করতে হবে।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") Table1.Range.Cells(2, 1) = "A Tale of Two Cities"

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এই কোডটি রান করুন। এটি এক্টিভ ওয়ার্কশিটের MyTable টেবিলের ২য় সারি এবং ১ম কলামে স্ট্রিং "A Tale of Two Cities" এন্ট্রি করবে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

৪. VBA দিয়ে টেবিলে সারি এবং কলাম ইনসার্ট করুন

VBA দিয়ে একটি Table-এ সারি বা কলাম যোগ করতে, প্রথমে Table রেফার করুন।

তারপর সারি যোগ করতে ListRows.Add প্রোপার্টি ইনসার্ট করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") Table1.ListRows.Add

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি MyTable টেবিলের শেষে একটি নতুন সারি যোগ করবে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

অথবা কলাম যোগ করতে, ListColumns.Add প্রোপার্টি ইনসার্ট করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") Table1.ListColumns.Add

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি MyTable টেবিলের ডান পাশে একটি নতুন কলাম যোগ করবে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

আরো, একটি Table-এর নির্দিষ্ট পজিশনে সারি বা কলাম যোগ করতে, ListRows.Add বা ListColumns.Add প্রোপার্টির ভিতরে পজিশন স্পেসিফাই করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") Table1.ListRows.Add (4)

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি MyTable টেবিলের ৪র্থ সারি হিসেবে একটি নতুন সারি যোগ করবে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

কলাম যোগ করার জন্যও একই পদ্ধতি।

আরও পড়ুন: এক্সেল টেবিল থেকে সারি ও কলাম ইনসার্ট বা ডিলিট করার পদ্ধতি

৫. VBA দিয়ে টেবিল থেকে ডেটা পড়ুন

VBA দিয়ে একটি টেবিল থেকে যেকোনো ডেটা পড়তে, VBA-র Range.Cells প্রোপার্টি ব্যবহার করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") MsgBox Table1.Range.Cells(3, 1)

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

কোডটি রান করুন, এটি MyTable টেবিলের ৩য় সারি এবং ১ম কলাম থেকে ভ্যালু ডিসপ্লে করবে। সেটি হল The Forty Rules of Love।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

সদৃশ পড়ুন

  • VBA দিয়ে পিভট টেবিল রিফ্রেশ (৫টি উদাহরণ)
  • VBA দিয়ে সব পিভট টেবিল রিফ্রেশ (৪টি পদ্ধতি)
  • এক্সেলে পিভট টেবিল এডিট (৫টি মেথড)
  • পিভট টেবিল রেঞ্জ আপডেট (৫টি উপযুক্ত মেথড)

৬. VBA দিয়ে টেবিলের সারি বা কলামের মাধ্যমে লুপ চালান

VBA দিয়ে একটি টেবিলের প্রতিটি সারির মাধ্যমে লুপ চালাতে, ListRows.Count প্রোপার্টি ব্যবহার করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") For i = 1 To Table1.ListRows.Count Table1.ListRows(i).Range.Select Next i

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি Table1 টেবিলের প্রতিটি সারির মাধ্যমে ইটারেট করবে এবং সিলেক্ট করবে।

এভাবেই, টেবিলের প্রতিটি কলামের মাধ্যমে ইটারেট করতে, ListColumns.Count প্রোপার্টি ব্যবহার করুন।

৭. টেবিলে একটি নির্দিষ্ট ভ্যালু খুঁজে বের করুন

VBA দিয়ে একটি টেবিলের সারি বা কলামে একটি নির্দিষ্ট ভ্যালু খুঁজতে, VBA-র DataBodyRange.Rows.Find বা DataBodyRange.Columns.Find প্রোপার্টি ব্যবহার করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") Set Value = Table1.DataBodyRange.Columns(1).Find("Mother", LookAt:=xlWhole) MsgBox Value

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি MyTable টেবিলের ১ম কলামে "Mother" ভ্যালু খুঁজবে, এবং যদি পায় তবে ভ্যালুটি রিটার্ন করবে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

৮. VBA দিয়ে এক্সেলে টেবিল রিসাইজ করুন

একটি টেবিলকে একটি নতুন আকারে রিসাইজ করতে, প্রথমে সেটি Range সেট করুন যেটিতে Table রিসাইজ হবে।

তারপর Table-কে সেই Range-এ রিসাইজ করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") Dim Rng As Range Set Rng = Range("B4:C8") Table1.Resize Rng

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি প্রথমে Range-কে B4:C8 হিসেবে সেট করে, তারপর MyTable টেবিলকে সেই নতুন Range-এ রিসাইজ করে।

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

৯. VBA দিয়ে এক্সেলে টেবিল ডিলিট করুন

VBA দিয়ে একটি টেবিল ডিলিট করতে, VBA-র Delete প্রোপার্টি ব্যবহার করুন।

Dim Table1 As ListObject Set Table1 = ActiveSheet.ListObjects("MyTable") Table1.Delete

VBA দিয়ে এক্সেল টেবিলে দক্ষতা: ৯টি প্রুভেন টেকনিক

এটি এক্টিভ ওয়ার্কশিট থেকে MyTable টেবিল ডিলিট করবে।

মনে রাখার বিষয়সমূহ

VBA-তে একটি Table হল ListObject। কিন্তু আপনি যদি এটিকে একটি সিম্পল Range অবজেক্ট হিসেবে অ্যাক্সেস করতে চান, তবে VBA-র Table.Range প্রোপার্টি ব্যবহার করুন। এটি টেবিলকে একটি Range অবজেক্ট হিসেবে রিটার্ন করবে, এবং আপনি VBA-র Range অবজেক্টের সব প্রোপার্টি অ্যাক্সেস করতে পারবেন।

উপসংহার

এই পদ্ধতিগুলো ব্যবহার করে আপনি VBA দিয়ে একটি টেবিল ব্যবহার করতে পারেন। আপনার যেকোনো প্রশ্ন থাকলে জিজ্ঞেস করুন।

আরও পড়ুন

  • এক্সেলে অটো রিফ্রেশ পিভট টেবিল (২টি মেথড)
  • এক্সেল পিভট টেবিলে কলাম গ্রুপ (২টি মেথড)
  • পিভট টেবিল কাস্টম গ্রুপিং: ৩টি ক্রাইটেরিয়া সহ
  • এক্সেল টেবিলে ফর্মুলা কার্যকরভাবে ব্যবহার (৪টি উদাহরণসহ)

  1. এক্সেল ডেটা মডেলে দক্ষতা: ডেটা সংগঠিত ও বিশ্লেষণের ৩টি ব্যবহারিক উদাহরণ

  2. এক্সেলে ডুপ্লিকেট ভ্যালু থাকলেও রিলেশনশিপ তৈরি: ধাপে ধাপে গাইড

  3. এক্সেলে নির্দিষ্ট মান ধারণকারী সেল সরানোর ২ দ্রুত টেকনিক

  4. এক্সেলে ANOVA টেবিল তৈরি: সঠিক বিশ্লেষণের জন্য ৩টি সহজ পদ্ধতি