需要excel配方建议

时间:2017-09-06 08:55:39

标签: excel excel-formula

基于-2或+2条目,我们想用黄色绘制范围。需要你的建议来解决它。

问题已更新:

对不起解释不好。我有A,B,C列。如果我在B10中输入-2,A10,A9,A8将被着色。如果我在C10中输入+2,A10,A11,A12将被着色。 我可以在B中输入的值是-10到-1,C是1到10. 所以我可以在条件格式中使用的公式应该更多通用

enter image description here

2 个答案:

答案 0 :(得分:2)

这可能对你有用。

Sub yellow()

    Dim i As Integer

    lastrow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row

    For k = 2 To lastrow
    If Cells(k, 1).Value = 2 Or Cells(k, 1).Value = -2 Then
    Cells(k, 1).Interior.ColorIndex = 6
    End If
    Next
    End Sub

答案 1 :(得分:1)

<强>修订。现在我觉得我得到了你想要的东西。

根据您的描述,您可以执行以下操作:

  • 要避免最终用户在select case when g.grade>=8 then s.name else NULL end, g.grade, s.marks from students s, grades g where s.marks between g.min_mark and g.max_mark order by g.grade desc, s.name asc, s.marks asc; 中输入任何无效的号码,请使用column B or C。请参阅下面附带的图片,了解如何为Data > Data Validation设置规则。请根据您的需要调整标准。

enter image description here

P.S。下面的图片只是为了向您显示当最终用户输入的值超出指定范围时,它会显示错误消息。

enter image description here

  • 要显示颜色编码的单元格取决于您在column Bcell B10中输入的值,请选择cell C10。我使用了这个公式Home > Conditional Formatting > New Rule > Use a formula...,并应用于=ROW($A1)-10>=$B$10。然后=$A$1:$A$10,并应用于=ROW($A10)-10<=$C$10,因为您可以看到下面的两张照片。

enter image description here

enter image description here

这是为了确定行位置和用户输入的值。出于动态目的,您可能希望将-10更改为=$A$10:$A$20ROW($B$10),但这取决于您。

请注意,ROW($C$10)在条件格式设置上被引用了两次。无论哪个规则首先显示该颜色,您都可以通过单击图片#4上显示的箭头符号来更改顺序。

请再试一次,如果有效,请告诉我。