我有一个电子表格,可以生成文本形式的公式,例如。
=CONCATENATE("+B",ROW(),"*",ROUND(G5,2))
输出:
+B5*1464.41
我有一列此类文本,需要将其转换为单独的公式。现在,我将文本复制到新列,然后按每行的“=”按钮。有没有办法自动执行此操作?或者批量执行?
答案1
回答我自己的问题,解决方案是相当明显的。
突出显示相关文本。使用“查找”将前导“+”替换为“=”
单元格将作为公式而不是文本重新计算。
答案2
尝试使用带有“选择性粘贴”的正则表达式。所有单元格都有一个前导字符(通常是不可见的)来定义单元格类型。
所以:
- 选择所有包含文本公式的单元格,然后按 CTRL+H。
- 在“查找”框中输入
^.
。(您可能需要输入^
两次符号才能使其出现 - 然后按退格键删除其中一个并输入句点.
) - 在 REPLACE 框中
&
输入 。确保选中正则表达式框 - 选择“查找全部”,它将突出显示所有选定的单元格
- 选择全部替换
答案3
每当我需要将大量文本行转换为可执行代码时,我都会将电子表格中的文本行复制/粘贴到普通的空白 libreoffice writer 文档中,然后将它们从文档中复制/粘贴到 libreoffice calc 电子表格中。
粘贴到 writer 文档中必须是选择性粘贴/未格式化. 然后从编写器文档粘贴到电子表格中必须是普通粘贴 - 而不是未格式化的。
我已经使用此方法将 20,000 行代码生成为文本并立即执行。
编辑 - 我真的很喜欢你的方法,青蛙。我所做的仅限于代码列,而你的方法对代码行同样有效。