我继承了一个包含许多工作表的 Excel 电子表格,其中全是文本和数字。据我所知,这些都是硬编码的静态文本。快速浏览后,我看不到任何公式或任何根据任何单元格中的任何内容动态更新的内容。当然,电子表格中没有任何说明可以指导我找到它们。
但有没有一种自动、快速的方法可以让我确定呢?还是我必须手动检查每张表上每个单元格的定义?
更新:需要说明的是,我的电子表格有十张表,每张表都有数千行和数十列。因此,我需要一个解决方案来告诉我公式是否存在 - 任何需要我用眼睛扫描数十万个单元格来检查某些内容的东西可能都不会对我有太大帮助。
我只有 Microsoft Excel for Mac 2011 可用,如果有任何区别的话。
答案1
快速 VBA 检查。
每次在任何工作表上找到公式时,它都会显示一个消息框,并将单元格颜色设为黄色。
Sub ColorAllFormulas()
Application.ScreenUpdating = False
For Each Sheet In ActiveWorkbook.Sheets
For Each cell In Sheet.UsedRange
If cell.HasFormula Then
cell.Interior.Color = 65535
Msgbox "WHOA, I FOUND SOMETHING AT " & cell.address
Endif
Next
Next
Application.ScreenUpdating = True
End Sub
要运行此程序,请从菜单栏中选择“工具”->“宏”->“Visual Basic 编辑器”。然后在“项目”视图中,右键单击顶层“VBAProject (test.xlsx)”->“插入”->“模块”。将上述代码粘贴到“test.xlsx - Module1 (Code)”窗口中,然后单击“运行”按钮。
答案2
您可以使用Find and Replace
功能区上的命令并选择Formulas
。您所在工作表上的所有公式都将突出显示。(或者,您可以选择Constants
查找文本和硬编码值。)
从稍微不同的角度考虑@David Yaw 的答案,您应该能够在整个数据范围内设置条件格式,条件由类似 的公式设置=NOT(ISERROR(FIND("=",A1)
。这将突出显示带有“=”符号的所有单元格。
答案3
所有公式都以等号开头。(例如,=SUM(A1:A10)
.)使用“查找/替换”对话框搜索等号。是的,任何包含等号的静态文本都会出现误报,但以这种方式搜索会跳转到下一个带有等号的单元格,并且可以快速查看公式栏以确定单元格的内容是静态的还是公式。
我无法使用 Mac 来验证您想要选择“查找/替换”对话框中的哪些选项,但您可以通过输入=1+1
一个单元格并验证搜索是否找到=
该单元格来轻松检查它是否执行了您想要的操作。
答案4
有一种简单的方法可以测试公式 - 执行 ctrl-g,选择特殊,然后选择公式。如果有公式,它将转到那里。如果没有,则会出现未找到单元格的消息
这必须按每张纸进行。