如果Or Statement Always True

Mik*_*ogg 1 excel vba excel-vba

简介:我有一个包含大量不必要列的电子表格.因为将来可能会添加新列,所以我删除<>了必要列的任何内容.

问题:我在If Or下面有一个很长的陈述,但它总是如此.我试着在括号Or的许多其他变体之间的每个语句周围添加括号,但它们都不正确.在括号的一个变体中,声明总是错误的,但这是我收到的唯一变化.

码:

If (Cells(4, i).Value <> "BATCH_ID" Or Cells(4, i).Value <> "Indicative" Or Cells(4, i).Value <> "Company Code" Or Cells(4, i).Value <> "Policy Num" Or Cells(4, i).Value <> "Numeric Amount" Or Cells(4, i).Value <> "Legal Amount" Or Cells(4, i).Value <> "PAYMENT_AMT") Then

      ActiveCell.EntireColumn.Delete

End If
Run Code Online (Sandbox Code Playgroud)

我在这做错了什么?提前致谢!

Sco*_*man 10

其他人使用提到一个伟大的概念AndOr这种情况下.我还建议使用Select Case在有多个标准的情况下,因为它更容易阅读,理解和编辑.

Select Case Cells(4, i).Value

    Case Is = "BATCH_ID", "Indicative", "Company Code", "Policy Num", "Numeric Amount", "Legal Amount", "PAYMENT_AMT"

    Case Else: ActiveCell.EntireColumn.Delete

End Select
Run Code Online (Sandbox Code Playgroud)