当需要读取单元格公式并修改公式内容时,通常要用到FORMULATEXT函数,以字符串的形式返回公式内容。
下述示例是将C列年终奖的计算公式读出来,每人再加100元,因为希望保留C列的公式内容,所以用如下步骤操作:
第1步:在单元格D2读取C2的公式内容并加上100 “=FORMULATEXT(C2) & "+100"”,复制D2内容到D列其他单元格。
第2步:如果直接将D列的内容复制粘贴到E列(只粘贴数值),即使将工作簿设置为“自动计算”甚至按F9,或者点击菜单“开始计算”,也不会再重新计算,只有双击E列有公式的单元格后回车,才会重新计算。
为解决上述问题,进入第3步。
第3步:将E列内容复制进记事本,再由记事本复制回来,粘贴到F列,公式会自动重算。
语法
FORMULATEXT(reference)
FORMULATEXT 函数语法具有下列参数:
Reference必需。 对单元格或单元格区域的引用。
说明
如果您选择引用单元格,则 FORMULATEXT 函数返回编辑栏中显示的内容。
Reference 参数可以表示另一个工作表或工作薄。 如果 Reference 参数表示另一个未打开的工作薄,则 FORMULATEXT 返回错误值 #N/A。 如果 Reference 参数表示整行或整列,或表示包含多个单元格的区域或定义名称,则 FORMULATEXT 返回行、列或区域中最左上角单元格中的值。 在下列情况下,FORMULATEXT 返回错误值 #N/A:
用作 Reference 参数的单元格不包含公式。用作输入的无效数据类型将生成 错误值 #VALUE!。 当参数不会导致出现循环引用警告时,在您要输入函数的单元格中输入对其的引用。 FORMULATEXT 将成功将公式返回为单元格中的文本。单元格中的公式超过 8192 个字符。
无法在工作表中显示公式;例如,由于工作表保护。
包含此公式的外部工作簿未在 Excel 中打开。