我想过滤我的数据以仅包含 12 的倍数的值。因此它应该包括 12、24、36 等。
有没有办法使用过滤功能来实现这一点?
答案1
一种方法是使用辅助列(即使用额外的列来计算要完成的任务所需的复杂内容)。由于您要过滤可识别 12 的倍数的内容,因此您可以在额外的列中计算该内容。
有多种方法可以计算。一种是 MOD 函数,它给出除法后的余数。12 的倍数除以 12 后余数为零。
假设您的数据在 A 列。在 B1 中,您可以使用如下公式:
=MOD(A1,12)
并将其复制到数据范围内。您可以筛选结果为零的结果。
如果您希望结果在视觉上脱颖而出,可以将其转换为“布尔”值:
=MOD(A1,12)=0
这将创建一个 True/False 测试,以确定结果是否为零。12 的倍数将产生 True 结果,所有其他值将产生 False 结果。然后您可以根据 True 进行过滤。(如果您将结果格式化为数字,则 True 和 False 将显示为 1 和 0。)
如果您的数据可以包含零值,那么使用 MOD 函数进行测试时也会产生零结果。如果您想排除这一点,则需要扩展测试计算。有很多方法可以做到这一点,但您可以使用类似以下方法:
=(MOD(A1,12)=0)*(A1<>0)
另一个布尔值 - 如果 A1 不等于 0,则最后一个表达式将为真,其计算结果为 1,使表达式保持与之前计算的结果相同。如果 A1=0,则最后一个表达式的结果为零,这将使计算结果为零,就像 12 的非倍数一样。
因此现在您有一个列,其中 12 的倍数为 1 或 True,否则为 0 或 False,您可以对该列进行过滤。