Excel 如何使用VBA删除1条(最新的)条件格式规则,同时保持其余规则不变

Excel 如何使用VBA删除1条(最新的)条件格式规则,同时保持其余规则不变,excel,vba,Excel,Vba,我有一个Excel电子表格,里面有一些我不想碰的内置条件格式 我有一个宏,可以将颜色比例(Excel称之为“红-黄-绿”颜色比例)添加到选择中,我只是将其用作诊断。我希望能够在保留其他规则不变的情况下快速删除该规则。宏记录器无法有效地完成此操作。您必须确定先使用哪种格式。之后,您可以删除FormatConditionsItem() 更新: 如果条件类型不同,则可以检查该类型并删除与该类型相同的所有规则。选择单元格并运行此宏以删除所有“xlExpression”类型 有几种类型,如:ColorSc

我有一个Excel电子表格,里面有一些我不想碰的内置条件格式


我有一个宏,可以将颜色比例(Excel称之为“红-黄-绿”颜色比例)添加到选择中,我只是将其用作诊断。我希望能够在保留其他规则不变的情况下快速删除该规则。宏记录器无法有效地完成此操作。

您必须确定先使用哪种格式。之后,您可以删除FormatConditions
Item()

更新: 如果条件类型不同,则可以检查该类型并删除与该类型相同的所有规则。选择单元格并运行此宏以删除所有“xlExpression”类型


有几种类型,如:
ColorScale
DataBar
xlExpression
-您必须更具体地说明您真正使用的是什么。。。介意给出一些代码吗?

在上面尝试过,但它被弄糊涂了,所以如果你向后删除最后一个代码,它就可以工作了。这将删除它们:

For i = conditions To 1 Step -1  
 Selection.FormatConditions(i).Delete
Next i

它如何增加梯度?每个单元格中的单元格格式是什么?@SvenRojek我可能没有使用正确的单词。我编辑了这个问题,现在它应该有意义了。这些单元格是同时受这两个规则的影响还是在工作表上分开的?@SvenRojek它们同时受这两个规则的影响。你能给出一些规则的标准吗?然后您可以搜索该特定规则。这是其中的一部分:With Selection.FormatConditions(1).ColorScaleCriteria(1).FormatColor.Color=8109667 With Selection.FormatConditions(1).ColorScaleCriteria(3).FormatColor.Color=7039480在本例中,只需使用带有
.FormatConditions.Item(1)的第一个解决方案.Delete
而不是
.FormatConditions.Item(2).删除
。或者第二次使用
ColorScale
Sub Remove_Second_Format()

    conditions = Selection.FormatConditions.Count
    For i = 1 To conditions
        If Selection.FormatConditions(i).Type = xlExpression Then
            Selection.FormatConditions(i).Delete
        End If
    Next i
End Sub
For i = conditions To 1 Step -1  
 Selection.FormatConditions(i).Delete
Next i