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

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

VBA ম্যাক্রো প্রয়োগ করা এক্সেলে যেকোনো অপারেশন চালানোর সবচেয়ে কার্যকর, দ্রুত এবং নিরাপদ পদ্ধতি। এই আর্টিকেলে আমরা দেখব কিভাবে VBA ম্যাক্রো দিয়ে এক্সেলে ক্রাইটেরিয়া ভিত্তিক কলাম ডিলিট করা যায়।

ওয়ার্কবুক ডাউনলোড করুন

এখান থেকে ফ্রি প্র্যাকটিস এক্সেল ওয়ার্কবুক ডাউনলোড করতে পারেন।

জেনেরিক সিনট্যাক্স

VBA দিয়ে এক্সেলে কলাম ডিলিট করার জেনেরিক সিনট্যাক্স:

Columns(column number/ column address).Delete

ক্রাইটেরিয়া ভিত্তিক কলাম ডিলিট করার ৮টি VBA ম্যাক্রো উদাহরণ

এই সেকশনে আপনি শিখবেন কীভাবে VBA ম্যাক্রো দিয়ে সেল ভ্যালু, অন্য ওয়ার্কশিট, এবং টেবিল ভিত্তিক কলাম ডিলিট করা যায়।

উদাহরণ হিসেবে নিচের ডেটাসেট ব্যবহার করব।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

ক্রাইটেরিয়া ১: সেল ভ্যালু ভিত্তিক কলাম ডিলিট

VBA দিয়ে সেল ভ্যালু ভিত্তিক কলাম ডিলিট করার ধাপসমূহ:

ধাপসমূহ:

  • Alt + F11 চাপুন বা Developer → Visual Basic যান Visual Basic Editor খোলার জন্য।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • পপ-আপ কোড উইন্ডোতে মেনুবার থেকে Insert → Module ক্লিক করুন।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • নিচের কোড কপি করে কোড উইন্ডোতে পেস্ট করুন:
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

আপনার কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

এই কোড সেল ভ্যালু ২ দিয়ে শুরু হওয়া কলামগুলো ডিলিট করবে।

  • F5 চাপুন বা মেনুবার থেকে Run → Run Sub/UserForm ক্লিক করুন। ছোট Play আইকন-এও ক্লিক করতে পারেন।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

ফলাফল নিচে দেখানো হলো।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

সেল ভ্যালু ২ দিয়ে শুরু হওয়া কলামগুলো ডিলিট হয়েছে।

আরও পড়ুন: VBA দিয়ে এক্সেলে কলাম ডিলিট

ক্রাইটেরিয়া ২: ব্ল্যাঙ্ক সেল ভিত্তিক কলাম ডিলিট

VBA দিয়ে ব্ল্যাঙ্ক সেল থাকা কলাম ডিলিট করার ধাপসমূহ:

ধাপসমূহ:

  • আগের মতো Visual Basic Editor খুলুন Developer ট্যাব থেকে এবং কোড উইন্ডোতে Module Insert করুন।
  • কোড উইন্ডোতে নিচের কোড পেস্ট করুন:
Sub DeleteBlankCells()
    Range("A1:J10").Select '//ডেটাসেটের রেঞ্জ
    Selection.SpecialCells(xlCellTypeBlanks).Select
    Selection.EntireColumn.Delete
End Sub

কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • Run করুন ম্যাক্রোটি।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

ব্ল্যাঙ্ক সেল ধারণকারী সকল কলাম এখন ডিলিট হয়েছে।

ক্রাইটেরিয়া ৩: সম্পূর্ণ ব্ল্যাঙ্ক কলাম ডিলিট

নিচের ডেটাসেটে ব্ল্যাঙ্ক কলাম রয়েছে। এগুলো VBA ম্যাক্রো দিয়ে কীভাবে ডিলিট করবেন তা দেখানো হলো।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

ধাপসমূহ:

  • আগের মতো Visual Basic Editor খুলুন এবং Module Insert করুন।
  • কোড উইন্ডোতে নিচের কোড পেস্ট করুন:
Sub DeleteBlankCol()
    Dim i As Integer
    For i = 1 To 4
        Columns(i + 1).Delete
    Next i
End Sub

কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • Run করুন ম্যাক্রোটি।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

সকল ব্ল্যাঙ্ক কলাম ডিলিট হয়েছে।

আরও পড়ুন: এক্সেলে ব্ল্যাঙ্ক কলাম ডিলিট

ক্রাইটেরিয়া ৪: নন-এডজাসেন্ট (আসন্ন নয়) একাধিক কলাম ডিলিট

VBA দিয়ে একাধিক নন-এডজাসেন্ট কলাম ডিলিট করার ধাপসমূহ:

ধাপসমূহ:

  • আগের মতো Visual Basic Editor খুলুন এবং Module Insert করুন।
  • কোড উইন্ডোতে নিচের কোড পেস্ট করুন:
Sub DeleteNAdjCol()
    Range("C:E, G:I").Delete
End Sub

কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • Run করুন ম্যাক্রোটি।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

পূর্বের C থেকে E (Feb to Apr) এবং G থেকে I (Jun to Aug) কলামগুলো ডিলিট হয়েছে।

সমক্ষ পড়াশোনা:

  • এক্সেলে আনইউজড কলাম ডিলিট করার ৫ সহজ পদ্ধতি
  • ফর্মুলা প্রভাবিত না করে কলাম ডিলিট করার ২ উপায়
  • ডুপ্লিকেট কলাম ডিলিট করার ৬ উপায়

ক্রাইটেরিয়া ৫: নির্দিষ্ট ওয়ার্কশিট ভিত্তিক কলাম ডিলিট

VBA দিয়ে নির্দিষ্ট ওয়ার্কশিট থেকে কলাম ডিলিট করার ধাপসমূহ:

ধাপসমূহ:

  • আগের মতো Visual Basic Editor খুলুন এবং Module Insert করুন।
  • কোড উইন্ডোতে নিচের কোড পেস্ট করুন:
Sub DeleteColFromSheet()
    Worksheets("New Column").Select '// শিটের নাম সেট করুন
    Columns("D:F").Delete
End Sub

কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • Run করুন ম্যাক্রোটি।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

D থেকে F (Mar to May) কলামগুলো "New Column" ওয়ার্কশিট থেকে ডিলিট হয়েছে।

ক্রাইটেরিয়া ৬: টেবিল ভিত্তিক কলাম ডিলিট

VBA দিয়ে টেবিল থেকে কলাম ডিলিট করার ধাপসমূহ:

ধাপসমূহ:

  • আগের মতো Visual Basic Editor খুলুন এবং Module Insert করুন।
  • কোড উইন্ডোতে নিচের কোড পেস্ট করুন:
Sub DeleteColTable()
    Dim srcTable As ListObject
    Dim srcSheet As Worksheet
    'কলাম ডিলিট করা টেবিল সেট করুন
    Set srcTable = ActiveSheet.ListObjects("ExTable")
    'টেবিল ধারণকারী শিট সেট করুন
    Set srcSheet = Sheet8
    With srcSheet
        srcTable.ListColumns(5).Delete
    End With
End Sub

কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • Run করুন ম্যাক্রোটি।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

কলাম ৫ (Apr) টেবিল থেকে ডিলিট হয়েছে।

ক্রাইটেরিয়া ৭: টেবিল থেকে একাধিক কলাম ডিলিট

VBA দিয়ে টেবিল থেকে একাধিক কলাম ডিলিট করার ধাপসমূহ:

ধাপসমূহ:

  • আগের মতো Visual Basic Editor খুলুন এবং Module Insert করুন।
  • কোড উইন্ডোতে নিচের কোড পেস্ট করুন:
Sub DeleteMColTable()
    Dim srcTable As ListObject
    Dim srcSheet As Worksheet
    Dim i As Integer
    'কলাম ডিলিট করা টেবিল সেট করুন
    Set srcTable = ActiveSheet.ListObjects("ExTable2")
    'টেবিল ধারণকারী শিট সেট করুন
    Set srcSheet = Sheet9
    'লুপ ২ বার রান করবে কারণ ২ কলাম ডিলিট করতে হবে
    For i = 1 To 2
        With Source
            srcTable.ListColumns(5).Delete
        End With
    Next i
End Sub

কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • Run করুন ম্যাক্রোটি।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

কলাম ৫ এবং ৬ (Apr and May) টেবিল থেকে ডিলিট হয়েছে।

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

ক্রাইটেরিয়া ৮: কলাম হেডার ভিত্তিক টেবিল থেকে কলাম ডিলিট

VBA দিয়ে কলাম হেডার ভিত্তিক টেবিল থেকে কলাম ডিলিট করার ধাপসমূহ:

ধাপসমূহ:

  • আগের মতো Visual Basic Editor খুলুন এবং Module Insert করুন।
  • কোড উইন্ডোতে নিচের কোড পেস্ট করুন:
Sub DeleteColHeaderTable()
    Dim srcTable As ListObject
    Dim srcSheet As Worksheet
    Dim i As Integer
    Dim colName As String
    'কলাম ডিলিট করা টেবিল সেট করুন
    Set srcTable = ActiveSheet.ListObjects("ExTable3")
    'টেবিল ধারণকারী শিট সেট করুন
    Set srcSheet = Sheet10
    'Case sensitive
    colName = "Apr"
    'টেবিলের সব কলামে লুপ চালান
    For i = 1 To srcTable.ListColumns.Count
        With srcSheet
            'কলাম হেডার চেক করুন
            If srcTable.ListColumns(i).Name = colName Then
                srcTable.ListColumns(i).Delete
                Exit For
            End If
        End With
    Next i
End Sub

কোড রান করার জন্য প্রস্তুত।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

  • Run করুন ম্যাক্রোটি।

এক্সেলে কলাম মুছে ফেলার ৮ VBA ম্যাক্রো পদ্ধতি—দ্রুত ও নিরাপদ

কলাম হেডার নামে Apr টেবিল থেকে ডিলিট হয়েছে।

উপসংহার

এই আর্টিকেলে আমরা দেখিয়েছি কীভাবে VBA ম্যাক্রো দিয়ে ৮টি ভিন্ন ক্রাইটেরিয়া ভিত্তিক এক্সেলে কলাম ডিলিট করা যায়। আশা করি এটি আপনার জন্য খুব উপকারী হবে। বিষয় সংক্রান্ত যেকোনো প্রশ্ন জিজ্ঞাসা করুন।

আপনি এগুলোও পড়তে পারেন

  • ফর্মুলা ডিলিট না করে এক্সেলে কন্টেন্ট ক্লিয়ার করার ৩ উপায়
  • এক্সেলে এক্সট্রা কলাম ডিলিট করার ৭ পদ্ধতি
  1. এক্সেল কাস্টম ডেটা ভ্যালিডেশন দক্ষতা: একাধিক ক্রাইটেরিয়ার ইনপুট চেকের ৪টি প্র্যাক্টিক্যাল উদাহরণ

  2. এক এক্সেল কলামে মাল্টি-ক্রাইটেরিয়া অটোফিল্টার প্রয়োগের ৪টি প্রমাণিত VBA পদ্ধতি

  3. এক্সেল VBA: AutoFilter নিরাপদে সরিয়ে ফেলার ৭টি প্রমাণিত কৌশল

  4. ক্রাইটেরিয়া অনুযায়ী এক্সেল রোকে কলামে ট্রান্সপোজ করুন: ২টি প্রমাণিত পদ্ধতি