Note: The other languages of the website are Google-translated. Back to English

如何在Excel中将文本字符串转换为公式?

如果有很多= A1 + B1格式的文本字符串,则需要将这些文本字符串转换为真实公式并在工作表中计算它们的值,不幸的是,没有直接的方法可以在Excel中解决。 但是,在这里我可以为您介绍一些有趣的技巧。

使用用户定义函数将文本字符串转换为公式

使用Kutools for Excel将文本字符串转换为公式

Office选项卡在Office中启用选项卡式编辑和浏览,并使您的工作更加轻松...
Kutools for Excel解决了您的大多数问题,并使您的生产率提高了80%
  • 重用任何东西: 将最常用或最复杂的公式,图表等添加到您的收藏夹中,并在将来快速重用它们。
  • 超过20种文字功能: 从文本字符串中提取数字; 提取或删除部分文字; 将数字和货币转换为英文单词。
  • 合并工具:将多个工作簿和工作表合二为一; 合并多个单元格/行/列,而不会丢失数据; 合并重复的行和总和。
  • 分割工具:根据价值将数据分割成多个工作表; 一本工作簿可转换为多个Excel,PDF或CSV文件; 一列到多列。
  • 跳过粘贴 隐藏/过滤的行; 计数与求和 按背景色; 向多个收件人批量发送个性化电子邮件。
  • 超级过滤器: 创建高级过滤方案并应用于任何工作表; 排序 按星期,日期,频率等 筛选器 用粗体,公式,注释...
  • 超过300种强大的功能; 适用于 Office 2007-2021 和 365; 支持所有语言; 在您的企业或组织中轻松部署。

箭头蓝色右气泡 使用用户定义函数将文本字符串转换为公式

以下简短的VBA代码可以帮助您解决将文本转换为公式的问题,具体步骤如下:

1。 按住 ALT + F11 键,然后打开 Microsoft Visual Basic for Applications窗口.

2。 点击 插页 > 模块,然后将以下代码粘贴到 模块窗口.

VBA代码:将文本字符串转换为公式

Function Eval(Ref As String)
Application.Volatile
Eval = Evaluate(Ref)
End Function

3。 保存此代码并返回到您的工作表,输入此公式 = Eval(C1) 放入空白单元格(C1 包含要转换为公式的文本字符串单元格),请参见屏幕截图:

doc-convert-text-to-formula1

4。 然后按 输入 键,然后选择单元格D1,将填充手柄拖到要应用此公式的范围。 看截图:

doc-convert-text-to-formula1


箭头蓝色右气泡 使用Kutools for Excel将文本字符串转换为公式

如果您不喜欢使用上面的代码,可以申请 Kutools for Excel将文本转换为公式 功能,借助它的帮助,您还可以立即将文本字符串转换为公式。

Kutools for Excel 包括300多个便捷的Excel工具。 30天免费试用,不受限制。 立即获取.

在安装Kutools for Excel之后,请按照以下步骤操作:

1。 选择您要转换的文本字符串。

2。 点击 库工具 > 内容转换器 > 将文本转换为公式,请参见屏幕截图:

doc-convert-text-to-formula1

3。 而且您所有选择的文本字符串都已转换为真实公式,并获得其值。 查看屏幕截图:

doc-convert-text-to-formula4 -2 doc-convert-text-to-formula5

要了解有关此文本转换为公式功能的更多信息。


相关文章:

如何在Excel中将公式转换为文本字符串?


最佳办公效率工具

Kutools for Excel解决了您的大多数问题,并使您的生产率提高了80%

  • 重用: 快速插入 复杂的公式,图表 以及您以前使用过的任何东西; 加密单元 带密码 创建邮件列表 并发送电子邮件...
  • 超级公式栏 (轻松编辑多行文本和公式); 阅读版式 (轻松读取和编辑大量单元格); 粘贴到过滤范围...
  • 合并单元格/行/列 不会丢失数据; 拆分单元格内容; 合并重复的行/列...防止细胞重复; 比较范围...
  • 选择重复或唯一 行; 选择空白行 (所有单元格都是空的); 超级查找和模糊查找 在许多工作簿中; 随机选择...
  • 确切的副本 多个单元格,无需更改公式参考; 自动创建参考 到多张纸; 插入项目符号,复选框等...
  • 提取文字,添加文本,按位置删除, 删除空间; 创建和打印分页小计; 在单元格内容和注释之间转换...
  • 超级滤镜 (将过滤方案保存并应用于其他工作表); 高级排序 按月/周/日,频率及更多; 特殊过滤器 用粗体,斜体...
  • 结合工作簿和工作表; 根据关键列合并表; 将数据分割成多个工作表; 批量转换xls,xlsx和PDF...
  • 超过300种强大功能. 支持 Office / Excel 2007-2021 和 365。支持所有语言。 在您的企业或组织中轻松部署。 完整功能 30 天免费试用。 60 天退款保证。
kte选项卡201905

Office选项卡为Office带来了选项卡式界面,使您的工作更加轻松

  • 在Word,Excel,PowerPoint中启用选项卡式编辑和阅读,发布者,Access,Visio和Project。
  • 在同一窗口的新选项卡中而不是在新窗口中打开并创建多个文档。
  • 每天将您的工作效率提高50%,并减少数百次鼠标单击!
officetab底部
按评论排序
注释 (16)
还没有评分。 成为第一位评论!
该评论由网站上的主持人最小化
我有一个问题,我怎样才能把这个文本作为公式?
该评论由网站上的主持人最小化
我按照描述应用了宏,但我收到“#VALUE”作为输出。 任何想法可能出了什么问题? 帮助将不胜感激! 谢谢你。
该评论由网站上的主持人最小化
嗨,您的宏有效,尽管我使用它从我在工作簿中指定的另一个工作表中提取值。 问题是即使关闭了这个外部工作簿,我也希望它读取这个值,但是如果它关闭,则 eval 会返回一个 REF 错误。 有没有办法可以修改 eval 以打开/显示未打开文件的值? 谢谢:)
该评论由网站上的主持人最小化
为了使从其他工作簿中提取的值始终可用,即使它们已关闭,您应该实现一些电源查询。 不久前我遇到了这个问题,现在它对我来说非常有用。 我现在遇到的问题是我想通过引用我的“母亲”工作簿中的源代码来更新“女儿”工作簿中的几个公式,并通过电源查询我设法让所有公式都更新为字符串然而,即使使用 Evaluate 函数,它似乎也不适用于列表、条件格式,也不适用于使用许多函数或矩阵引用的更复杂的公式...... :( 我真的很难尝试从现在开始找到一种方法来解决这个问题......
该评论由网站上的主持人最小化
谢谢你。 与用户定义的函数配合得很好......我可以做我无法使用 INDIRECT、ADDRESS 等提供的默认函数的事情。 当我有一个要输入的范围时,它就不足了。
该评论由网站上的主持人最小化
我不知道这是否总是有效,但我有许多将公式存储为文本字符串的单元格。 我在“=”字符上做了一个完整的工作表查找替换,并且我的所有字符串都通过该操作转换为公式。
该评论由网站上的主持人最小化
为了澄清我的其他评论,我用相同的“=”字符大量替换了“=”字符,这使得字符串变成了公式。
该评论由网站上的主持人最小化
嗨,里奇,
我只是在阅读您关于将文本转换为公式的评论。 似乎上面提到的功能不起作用。 我不是真正的程序员,但我所做的是将公式转换为文本,在文本中我必须替换一些值并将其再次组合到一个文本中,但现在我需要将其转换回公式。 你能给我一个小费吗?
问候
弗兰斯
该评论由网站上的主持人最小化
replace = with = 有效,所以松了一口气。 感谢发现并分享这块 Excel 黄金的人。
该评论由网站上的主持人最小化
问候,上面的代码在不同工作表的同一个工作簿中完美运行,但如果我有一个对外部工作簿的单元格引用,它会返回#VALUE!。 公式计算正常较早。
无法正确评估公式的示例:IFERROR(INDEX('[Tracking-OSP Outside Riyadh-07-09-2017.xlsx]Tracking WO'!$U$3:$U$19000,MATCH(A3&"",' [Tracking-OSP outside Riyadh-07-09-2017.xlsx]Tracking WO'!$B$3:$B$19000,0)),INDEX('[Tracking-OSP outside Riyadh-07-09-2017.xlsx]Tracking WO'!$U$3:$U$19000,MATCH(value(A3),'[Tracking-OSP outside Riyadh-07-09-2017.xlsx]Tracking WO'!$B$3:$B$19000,0))) .
该评论由网站上的主持人最小化
嗨,侯赛因,

只需在 Excel 中使用 INDIRECT 函数。 做同样的事情。
该评论由网站上的主持人最小化
你好约翰尼
关于侯赛因的问题,如果外部工作簿关闭,间接给出#REF! 错误。 你有其他解决方案吗?
该评论由网站上的主持人最小化
使用间接仅适用于打开的工作簿。


解决方案是使用morefunc的indirect.ext。


的问候,
哈桑·纳斯拉拉
该评论由网站上的主持人最小化
您好
对于第一个定义的函数方式,我有一个问题。
当连接函数的资源在另一个工作表中时,当该资源工作表打开时,Eval 函数可以正常工作,但是当我关闭该资源工作表时,Eval 函数立即不起作用。 如何更改 eval 函数的代码以使用封闭的资源工作表?
该评论由网站上的主持人最小化
非常感谢你!!! 好想法!!!
该评论由网站上的主持人最小化
我发现这无法正常工作。 正如其他人所说(我看不到令人满意的解决方案),当尝试从同一工作簿中的其他工作表中提取内容时,它不起作用。 这令人沮丧,我不得不放弃这个并找到另一个解决方案。 所以谷歌搜索继续!
这里还没有评论
留下你的意见
以访客身份发帖
×
评价此帖子:
0   产品特性
建议地点

关注我们

版权所有 © 2009 - extendoffice.com。 | 版权所有。 供电 ExtendOffice。 | 网站地图
Microsoft和Office徽标是Microsoft Corporation在美国和/或其他国家的商标或注册商标。
受Sectigo SSL保护