VBA ম্যাক্রো বাস্তবায়ন করা হচ্ছে এক্সেলে যেকোনো অপারেশন চালানোর জন্য সবচেয়ে কার্যকর, দ্রুততম এবং নিরাপদ পদ্ধতি। এই নিবন্ধে, আমরা আপনাকে দেখাব কিভাবে VBA ম্যাক্রো এর মাধ্যমে এক্সেলের মানদণ্ডের উপর ভিত্তি করে কলামগুলি মুছতে হয় .
ওয়ার্কবুক ডাউনলোড করুন
আপনি এখান থেকে বিনামূল্যে অনুশীলন এক্সেল ওয়ার্কবুক ডাউনলোড করতে পারেন।
জেনারিক সিনট্যাক্স
VBA ব্যবহার করে Excel এ কলাম মুছে ফেলার জন্য জেনেরিক সিনট্যাক্স হল,
কলাম (কলাম নম্বর/ কলাম ঠিকানা)। মুছুন
এক্সেলের মানদণ্ডের উপর ভিত্তি করে কলাম মুছে ফেলার জন্য VBA ম্যাক্রো সহ 8 উদাহরণ
এই বিভাগে, আপনি শিখবেন কিভাবে ঘরের মানের উপর ভিত্তি করে, অন্য ওয়ার্কশীটের উপর ভিত্তি করে এবং VBA এর সাথে একটি টেবিলের উপর ভিত্তি করে কলামগুলি মুছতে হয় ম্যাক্রো এক্সেলে।
আমরা একটি উদাহরণ হিসাবে নিম্নলিখিত ডেটাসেট ব্যবহার করব৷
৷
মাপদণ্ড 1:VBA ম্যাক্রো এক্সেলের সেল মানের উপর ভিত্তি করে কলামগুলি মুছে ফেলবে
সেলের মানের উপর ভিত্তি করে কলাম মুছে ফেলার পদক্ষেপ এক্সেল এ VBA এর সাথে নিচে দেওয়া হল।
পদক্ষেপ:
- Alt + F11 টিপুন আপনার কীবোর্ডে বা ট্যাবে যান ডেভেলপার -> ভিজ্যুয়াল বেসিক ভিজ্যুয়াল বেসিক এডিটর খুলতে .
- পপ-আপ কোড উইন্ডোতে, মেনু বার থেকে, ঢোকান -> মডিউল ক্লিক করুন .
- নিম্নলিখিত কোডটি কপি করুন এবং কোড উইন্ডোতে পেস্ট করুন।
Sub DeleteColumnsBasedOnCellValue()
Dim iCol As Long
Dim iWrk As Long
iCol = 10
For iWrk = iCol To 1 Step -1
If Cells(1, iWrk) = 2 Then
Columns(iWrk).Delete
End If
Next
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
এই কোডটি সেল মান 2 দিয়ে শুরু হওয়া কলামগুলি মুছে ফেলবে৷ .
- F5 টিপুন আপনার কীবোর্ডে বা মেনু বার থেকে চালান -> সাব/ইউজারফর্ম চালান নির্বাচন করুন . এছাড়াও আপনি ছোট প্লে আইকনে ক্লিক করতে পারেন ম্যাক্রো চালানোর জন্য সাব-মেনু বারে।
ফলাফল নীচে দেখানো হয়েছে.
কলামগুলি সেলের মান 2 দিয়ে শুরু হয়েছে৷ মুছে ফেলা হয়।
আরো পড়ুন: Excel এ কলাম মুছে ফেলতে VBA
মাপদণ্ড 2:এক্সেলের ফাঁকা কক্ষের উপর ভিত্তি করে কলামগুলি মুছে ফেলার জন্য VBA ম্যাক্রো
খালি কক্ষ সহ কলামগুলি মুছে ফেলার পদক্ষেপ৷ এক্সেল এ VBA এর সাথে নিচে দেওয়া হল।
পদক্ষেপ:
- আগের মতই, ভিজ্যুয়াল বেসিক এডিটর খুলুন ডেভেলপার থেকে ট্যাব এবং ঢোকান একটি মডিউল কোড উইন্ডোতে।
- কোড উইন্ডোতে, নিচের কোডটি কপি করে পেস্ট করুন।
Sub DeleteBlankCells()
Range("A1:J10").Select '//range of the dataset
Selection.SpecialCells(xlCellTypeBlanks).Select
Selection.EntireColumn.Delete
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
- চালান ম্যাক্রো।
সমস্ত খালি কক্ষগুলি বহনকারী কলামগুলি৷ এখন মুছে ফেলা হয়েছে৷
মাপদণ্ড 3:এক্সেলের ফাঁকা কলামগুলি মুছে ফেলার জন্য VBA ম্যাক্রো
ফাঁকা কলাম সমন্বিত নিম্নলিখিত ডেটাসেটটি দেখুন। আমরা দেখব কিভাবে এই খালি কলামগুলি মুছতে হয় এক্সেল এ VBA এর সাথে ম্যাক্রো।
পদক্ষেপ:
- আগের মতই, ভিজ্যুয়াল বেসিক এডিটর খুলুন ডেভেলপার থেকে ট্যাব এবং ঢোকান একটি মডিউল কোড উইন্ডোতে।
- কোড উইন্ডোতে, নিচের কোডটি কপি করে পেস্ট করুন।
Sub DeleteBlankCol()
Dim i As Integer
For i = 1 To 4
Columns(i + 1).Delete
Next i
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
- চালান ম্যাক্রো।
সমস্ত ফাঁকা কলাম মুছে ফেলা হয়।
আরো পড়ুন: এক্সেলের ফাঁকা কলাম মুছুন
মাপদণ্ড 4:VBA ম্যাক্রো এক্সেলে অ-সংলগ্ন কলামগুলি সরাতে
একাধিক অ-সংলগ্ন কলাম সরানোর পদক্ষেপ এক্সেল এ VBA এর সাথে নিচে দেওয়া হল।
পদক্ষেপ:
- আগের মতই, ভিজ্যুয়াল বেসিক এডিটর খুলুন ডেভেলপার থেকে ট্যাব এবং ঢোকান একটি মডিউল কোড উইন্ডোতে।
- কোড উইন্ডোতে, নিচের কোডটি কপি করে পেস্ট করুন।
Sub DeleteNAdjCol()
Range("C:E, G:I").Delete
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
- চালান ম্যাক্রো।
C থেকে E (ফেব্রুয়ারি থেকে এপ্রিল) পর্যন্ত সমস্ত পূর্ববর্তী কলাম এবং G থেকে I (জুন থেকে আগস্ট) মুছে ফেলা হয়েছে।
অনুরূপ পড়া:
- এক্সেলের অব্যবহৃত কলামগুলি কীভাবে মুছবেন (সবচেয়ে সহজ 5টি পদ্ধতি)
- সূত্রকে প্রভাবিত না করেই এক্সেলে কলাম মুছুন (দুই উপায়)
- এক্সেলে ডুপ্লিকেট কলাম কিভাবে মুছবেন (6 উপায়)
মাপদণ্ড 5:এক্সেলের নির্দিষ্ট ওয়ার্কশীটের উপর ভিত্তি করে কলামগুলি মুছে ফেলার জন্য VBA ম্যাক্রো
একটি নির্দিষ্ট ওয়ার্কশীট থেকে কলাম মুছে ফেলার পদক্ষেপ এক্সেল এ VBA এর সাথে নিচে দেওয়া হল।
পদক্ষেপ:
- আগের মতই, ভিজ্যুয়াল বেসিক এডিটর খুলুন ডেভেলপার থেকে ট্যাব এবং ঢোকান একটি মডিউল কোড উইন্ডোতে।
- কোড উইন্ডোতে, নিচের কোডটি কপি করে পেস্ট করুন।
Sub DeleteColFromSheet()
Worksheets("New Column").Select '// set the sheet name
Columns("D:F").Delete
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
- চালান ম্যাক্রো।
D থেকে F (মার্চ থেকে মে) পর্যন্ত সমস্ত পূর্ববর্তী কলাম “নতুন কলাম থেকে ” ওয়ার্কশীট মুছে ফেলা হয়েছে৷
৷মাপদণ্ড 6:এক্সেলের একটি টেবিলের উপর ভিত্তি করে কলাম সরাতে VBA ম্যাক্রো
একটি টেবিল থেকে কলাম মুছে ফেলার পদক্ষেপ এক্সেল এ VBA এর সাথে নিচে দেওয়া হল।
পদক্ষেপ:
- আগের মতই, ভিজ্যুয়াল বেসিক এডিটর খুলুন ডেভেলপার থেকে ট্যাব এবং ঢোকান একটি মডিউল কোড উইন্ডোতে।
- কোড উইন্ডোতে, নিচের কোডটি কপি করে পেস্ট করুন।
Sub DeleteColTable()
Dim srcTable As ListObject
Dim srcSheet As Worksheet
'Set the table from which column is to be deleted
Set srcTable = ActiveSheet.ListObjects("ExTable")
'Set the sheet that contains the table
Set srcSheet = Sheet8
With srcSheet
srcTable.ListColumns(5).Delete
End With
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
- চালান ম্যাক্রো।
কলাম 5 (এপ্রিল) টেবিল থেকে মুছে ফেলা হয়।
মাপদণ্ড 7:এক্সেলের একটি টেবিলের উপর ভিত্তি করে একাধিক কলাম সরাতে VBA ম্যাক্রো
একাধিক মুছে ফেলার পদক্ষেপ VBA সহ এক্সেলের একটি টেবিল থেকে কলাম নিচে দেওয়া হল।
পদক্ষেপ:
- আগের মতই, ভিজ্যুয়াল বেসিক এডিটর খুলুন ডেভেলপার থেকে ট্যাব এবং ঢোকান একটি মডিউল কোড উইন্ডোতে।
- কোড উইন্ডোতে, নিচের কোডটি কপি করে পেস্ট করুন।
Sub DeleteMColTable()
Dim srcTable As ListObject
Dim srcSheet As Worksheet
Dim i As Integer
'Set the table from which column is to be deleted
Set srcTable = ActiveSheet.ListObjects("ExTable2")
'Set the sheet that contains the table
Set srcSheet = Sheet9
'Run the loop twice as we need to delete 2 columns
For i = 1 To 2
With Source
srcTable.ListColumns(5).Delete
End With
Next i
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
- চালান ম্যাক্রো।
কলাম 5 এবং 6 (এপ্রিল এবং মে) টেবিল থেকে মুছে ফেলা হয়েছে।
আরো পড়ুন: এক্সেলের একাধিক কলাম কীভাবে মুছবেন
মাপদণ্ড 8:এক্সেলের কলাম হেডারের উপর ভিত্তি করে একটি টেবিল থেকে কলাম মুছে ফেলার জন্য VBA ম্যাক্রো
কলাম শিরোনামের উপর ভিত্তি করে একটি টেবিল থেকে কলাম মুছে ফেলার পদক্ষেপগুলি৷ এক্সেল এ VBA এর সাথে নিচে দেওয়া হল।
পদক্ষেপ:
- আগের মতই, ভিজ্যুয়াল বেসিক এডিটর খুলুন ডেভেলপার থেকে ট্যাব এবং ঢোকান একটি মডিউল কোড উইন্ডোতে।
- কোড উইন্ডোতে, নিচের কোডটি কপি করে পেস্ট করুন।
Sub DeleteColHeaderTable()
Dim srcTable As ListObject
Dim srcSheet As Worksheet
Dim i As Integer
Dim colName As String
'Set the table from which column is to be deleted
Set srcTable = ActiveSheet.ListObjects("ExTable3")
'Set the sheet that contains the table
Set srcSheet = Sheet10
'Case sensitive
colName = "Apr"
'Loop through all the columns in the table
For i = 1 To srcTable.ListColumns.Count
With srcSheet
'Check the column header
If srcTable.ListColumns(i).Name = colName Then
srcTable.ListColumns(i).Delete
Exit For
End If
End With
Next i
End Sub
আপনার কোড এখন চালানোর জন্য প্রস্তুত৷
৷
- চালান ম্যাক্রো।
কলাম হেডার এপ্রিল নামে টেবিল থেকে মুছে ফেলা হয়।
উপসংহার
এই নিবন্ধটি আপনাকে দেখিয়েছে কিভাবে VBA ম্যাক্রো সহ এক্সেলের 8টি ভিন্ন মানদণ্ডের উপর ভিত্তি করে কলামগুলি মুছতে হয়৷ আমি আশা করি এই নিবন্ধটি আপনার জন্য খুব উপকারী হয়েছে. বিষয় সম্পর্কিত যেকোনো প্রশ্ন নির্দ্বিধায় করুন।
আপনিও অন্বেষণ করতে পছন্দ করতে পারেন৷
- সূত্র (3 উপায়) মুছে না দিয়ে কিভাবে Excel এ বিষয়বস্তু সাফ করবেন
- Excel এ অতিরিক্ত কলাম মুছুন (7 পদ্ধতি)