是否可以仅使用 Excel 将较长的 Excel 公式编写/转换为函数?

是否可以仅使用 Excel 将较长的 Excel 公式编写/转换为函数?

我想在 MS Excel 中制作一个相当于 MS Word 的句子大小写,经常能够将 Excel 文本字符串从全大写转换为句子大小写(无需自学 VBA)。

我执行此操作的单参数公式是 =(LEFT(B3) & MID(LOWER(B3),2,LEN(LOWER(B3))))。

(我见过使用 Excel 工作表作为函数但这并不是我所寻求的。)

我可以创建一个函数,使我能够简单地引用包含全大写字符串的单元格,例如 =Sentence(B3) 吗?

谢谢你的想法/建议

答案1

如果您是 Excel O365 订阅者,LAMBDA() 函数专门用于执行确切地你正在尝试什么。

您将进入名称管理器并创建一个名称Sentence。在“引用”字段中,您将输入:

=Lambda(a, LEFT(a) & MID(LOWER(a),2,LEN(LOWER(a))))

我个人将其简化为:

=Lambda(a, LEFT(a) & LOWER(RIGHT(a,LEN(a)-1)))

无论哪种情况,=Sentence(B3)都会提供您想要的结果。但是——这确实需要 O365 Excel 的新功能。如果您不是 O365 客户,您的替代方案是定义一个宏,但这会产生可能对您的用例不利的影响。

答案2

=(LEFT(B3) & MID(LOWER(B3),2,LEN(LOWER(B3))))
适用于所有 Excel 变体/版本的缩写形式
=LEFT(B3,1) & LOWER(MID(B3,2,1000))

  • LEFT() 的第二个参数是强制性的。
  • MID() 的最后一个(第三个)参数可以是任意多余的数字,以保留字符串中可用的字符
    (有趣的是,LibreOffice:POWER(2,31)-2可以工作,POWER(2,31)-1但不能)
  • LOWER() 仅需使用一次。

相关内容