如何在excel列中find具有一个id但是多个值为sin的行的正确值

我在Excel工作表中得到如下结果:

Load Id Ship Ref Type 12345 monarch FALSE FALSE FALSE DRY FALSE FALSE 23456 MONARCH FALSE REEFER FALSE FALSE 

我只需要ID和正确的值(DRY或REEFER),所以它看起来像这样:

 Load Id Ship Ref Type 12345 Monarch DRY 23455 MONARCH REEFER 

步骤1:先填充空白(复制“装载ID”,“船舶参考”到所有列)。 如何填补空白?

第2步:过滤“types”,然后删除所有(删除行)的“假”

你完成了!

你可以使用这段代码来获得所需的结果。 请确保在备份的数据上进行testing。

 Sub delFalse() For i = Range("C" & Rows.Count).End(xlUp).Row To 1 Step -1 If (Trim(Range("A" & i)) = "") Then If InStr(1, Range("C" & i).Value, "FAL", vbTextCompare) > 0 Then Range("C" & i).EntireRow.Delete End If Else Do While (InStr(1, Range("C" & i).Value, "FAL", vbTextCompare) > 0) Range("C" & i) = Range("C" & i + 1) Range("C" & i + 1).EntireRow.Delete Loop End If Next i End Sub 

我第一次遇到这个问题,即使C10FALSERange("C10").Value = "False"给了我一个FALSE 。 在excel公式中testing了这个,得到了同样的结果。 因此我在代码中使用了INSTR