如何快速检查Excel表中某一单元格内是公式还是数值?

小弟遇到的问题是这么回事:我们有一张表格,是让全国很多事业部的统计员填好发回总部的,表格中有些单元格是规定填数字的,有些是单元格是自动生成的运算结果,例如(加班费每小时30元计算)要求他们填写加班小时数2小时,后面那个加班费60元是自动生成的。但现在老是有手贱的人啊,偏偏往有公式的单元格里填数字,他填报时先在加班费上写了个60元,然后又填了2小时。当月发现不了,下个月他们这一块的数据可能就不对了。我现在要做这么件事,请教一下方法:
1、筛查过去1年中有哪些单元格本来是公式的,被他们直接修改成了数字,有没有相关函数?
2、有没有一种设置,让某一列单元格只能是公式自动计算,无法手动输入数字?

    检查是否使用了单元格进行计算(引用,公式函数计算结果):用"ISFORMULA()"函数进行检查,结果是'true' 则是经过计算的结果,结果是'false' 则是手动填的。比如 60 元的那一格是 A2, 在空白的单元格使用:=ISFORMULA(A2)得到的值可以看出来。

    【但是】:即便如此也只能说明数据是公式计算出来的,并不能保证是准确的公式(或者准确的计算方法,如果他们输入错误的公式呢?),如果公式是错的它一样返回true,从数据的准确性来说,这方法不能达到纠错的目的!

    检查这一关就算过了,其实更简单的做法是:用正确的公式填充一遍要计算的区域并保存就可以了,相当于修复了。当然,若要追究是谁干的,可以用ISFORMULA()这个函数【开玩笑的,能不能查出啦是谁干的,得看表格的填法了,如果是一层一层汇总的,那还是不要追究了,谁都有可能,毕竟表格没做限制,与其追究责任,不如组织培训,提高大家的做表/用表技能】。(:》

    避免错误操作,以及保证数据的有效性,可以对自动计算区域进行锁定,禁止编辑即可(输入密码才能编辑)。对手填的数据单元格区域进行有效性检查。这两个操作讲清楚需要不小的篇幅,我就略过了,教程很多的,核心搜索:“EXCEL 表格锁定”、“excel 允许编辑区域”

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-05-20
哦。
这个没法检测单元格原来是否有公式。
但可以实现第2个问题,就是有公式的地方不让改动。
比如,可以用密码锁定带公式的单元格。
比如,可以设置数据有效性。
都能达到禁止 删除公式后手动填写内容的目的。
第2个回答  2018-05-20
第一个问题用 ISFORMULA函数返回单元格数据,用IF判断,或者直接用条件格式。
第二个问题,可以把需要公式自动计算的,使用数组填充。