按公式而不是值过滤 Excel 列表

按公式而不是值过滤 Excel 列表

如果我在 Excel 中有一列,其中包含以下公式,是否可以对其进行过滤?在这种情况下,值都是 7,但我可以通过显式公式进行过滤吗?

=2+7
=3+4
=2+7
7
=1+6
7
=2+7
=8-1
=ROUND(SQRT(52),0)

在我的实际示例中,我有一个包含各种公式的列表,我想过滤这些公式。这只是一种简单的方式来说明目标。

未来的人:如果你遇到了同样的问题,而评论中没有解决方案,那么一个解决方法是突出显示该列,然后查找并用未使用的字符或字符串替换“=”(我使用“~#|”),然后在完成所有操作后再替换回去。这很尴尬,但确实有效

答案1

这是使用 VBA 的解决方案。我确信这不是最有效的解决方案,但可能是更有说服力的解决方案的起点。

在每个单元格中添加一个 '

Sub MarkUp()

Dim aCell As Range For Each aCell In Selection
       aCell = "'" & aCell.Formula

     Next

End Sub

对范围进行排序

Private Sub Sort()

Dim aRange As Range
 Dim aCell As Range

Set aRange = Selection
 Set aCell = ActiveCell

 aRange.Sort Key1:=aCell, Order1:=xlAscending, Header:=xlGuess

End Sub

清理

Private Sub CleanUp()

Dim aCell As Range For Each aCell In Selection
      aCell = WorksheetFunction.Substitute(aCell, "'", "")

    Next

End Sub

Sub SortFormulas()

MarkUp
Sort
CleanUp

End Sub

相关内容