首页 > 解决方案 > 通过 VBA - 如何按名称查找特定列,例如 Inception_Month

问题描述

通过 VBA - 如何按名称查找特定列,例如 Inception_Month,如果找到则删除整个列,如果未找到,请继续执行剩余代码。请帮助各位。

我已经尝试通过执行 Ctrl F 来记录宏,但是如果它没有找到特定的列名,它会给出错误,我不想看到错误。如果名称为“Inception_Month”的列不存在,我希望代码继续执行后续步骤。

如果找到列名 - 我希望删除整个列并在已删除的列空间中移动下一列,不想看到空列。

标签: excelvba

解决方案


你可以去插入使它成为一个表格,然后你可以使用类似下面的东西。

MyTableName.HeaderRowRange.Cells.Find("Inception_Month").Delete

或者使用类似下面的东西

Sub Find_Column()
Dim ws as ActiveSheet

Set ws = ActiveSheet
With ws
    Set c = .Find("Inception_Month", LookIn:=xlValues)

    If Not c Is Nothing Then
        ' some code here
    else
        Columns(c.Column).Delete
    End If
End With
End Sub

推荐阅读