• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 273
  • Last Modified:

How do I delete a column in Excel based on a cell value?

Hello Experts.

I have a large spreadsheet and would like a macro that will delete any columns that have "MOE" in row 1, and shift the columns so that there aren't any blank columns.

Also, the number of columns will vary on each spreadsheet that I will modify with this macro.  

Please let me know if any additional information is required.

Thanks,
Jerald
0
ferguson_jerald
Asked:
ferguson_jerald
1 Solution
 
rspahitzCommented:
Assuming that a blank column ends the sequence, this should work:

 
Sub RemoveSelectColumns()
    Dim iColumn As Integer
    Dim strCell As String
    Dim strColumnName As String
    Dim r As Range
    
    iColumn = 1
    Do
        strCell = Cells(1, iColumn).Value
        If strCell = "" Then
            Exit Do
        End If
        If UCase(strCell) = "MOE" Then
            ' case-independent
            strColumnName = Split(Cells(1, iColumn).Address, "$")(1)
            Columns(strColumnName & ":" & strColumnName).Delete Shift:=xlToLeft
        Else
            iColumn = iColumn + 1
        End If
    Loop
End Sub

Open in new window

0
 
ferguson_jeraldAuthor Commented:
Exactly what I needed.  Thanks!
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: Path Explorer

An intuitive utility to help find the CSS path to UI elements on a webpage. These paths are used frequently in a variety of front-end development and QA automation tasks.

One of a set of tools we're offering as a way of saying thank you for being a part of the community.

Tackle projects and never again get stuck behind a technical roadblock.
Join Now