Excel使条件格式显示在单元格中显示为列表

时间:2015-05-12 10:23:01

标签: excel excel-formula

我有一个数据集并且有两个极端数字,如果数据集中的数字不符合标准,我会使用条件格式来计算,如下面我将使用的公式。

=OR(B3<$E$8,B3>$E$7)

我想知道他们是否有任何方法可以将不符合条件的单元格列表显示为单元格中的列表。

例如,如果我有一个1,2,3,4,5,6,7,8,9的列表,并且这两个数字分别为3和7,那么fromula会产生这个输出:

1,2,8,9

2 个答案:

答案 0 :(得分:1)

在标准模块中输入以下 U ser D 定义的 F 版本:

Public Function MakeAList(rng As Range, U As Long, L As Long) As String
  Dim r As Range, s As String
  For Each r In rng
    If r.Value < L Or r.Value > U Then
      s = s & "," & r.Value
    End If
  Next r
  MakeAList = Mid(s, 2)
End Function

然后将其与您的值范围一起使用:

enter image description here

注意:

第一个参数是值的范围。
第二个参数是上限。
第三个参数是下限。

用户定义函数(UDF)非常易于安装和使用:

  1. ALT-F11调出VBE窗口
  2. ALT-I ALT-M打开了一个新模块
  3. 粘贴内容并关闭VBE窗口
  4. 如果保存工作簿,UDF将随之保存。 如果您在2003年之后使用的是Excel版本,则必须保存 该文件为.xlsm而不是.xlsx

    删除UDF:

    1. 按上述方式调出VBE窗口
    2. 清除代码
    3. 关闭VBE窗口
    4. 从Excel使用UDF:

      = MakeAList(A1:A100,B1,C1)

      要了解有关宏的更多信息,请参阅:

      http://www.mvps.org/dmcritchie/excel/getstarted.htm

      http://msdn.microsoft.com/en-us/library/ee814735(v=office.14).aspx

      有关UDF的详细信息,请参阅:

      http://www.cpearson.com/excel/WritingFunctionsInVBA.aspx

      必须启用宏才能使其生效!

答案 1 :(得分:0)

尝试以下方法:

=LEFT(D2;FIND(G2;D2)-1)&RIGHT(D2;LEN(D2)-FIND(H2;D2)-1)

其中:

D2 - 1,2,3,4,5,6,7,8,9
G2 - 3
H2 - 7

结果:

1,2,8,9

最好 - AB