在大写字母和数字前插入空格的Excel公式

标签 excel excel-formula

在 A 列中,从 A1 开始,我有一组数据库列名,它们是 Pascale 大小写且没有空格。我想在 B 列中使用 Excel 公式在每个大写字母或数字之前插入空格。理想情况下,任何连续的大写字母或数字都将保持在一起。我过去用 C# 做过这个,但在这个项目中,我什至不能使用 VBA 宏。示例输出:

enter image description here

仅使用公式可以实现这个或类似的东西吗?

最佳答案

这非常困难,但是对于给定的示例数据,ms365 是可行的:

enter image description here

B1中的公式:

=MAP(A1:A10,LAMBDA(v,TRIM(REDUCE(v,SEQUENCE(LEN(v),,LEN(v),-1),LAMBDA(a,b,LET(x,MAKEARRAY(26,3,LAMBDA(r,c,CHOOSE(c,CHAR(r+64),CHAR(r+96),r-0))),y,MID(a,b,1),z,MID(a,b+1,1),r,BYCOL(x,LAMBDA(c,SUM(EXACT(c,y)+EXACT(c,z)))),IF(MAX(r)=1,LEFT(a,b-1)&IF((CONCAT(r)="110")*(EXACT(UPPER(y),y))," "&y,y&" ")&RIGHT(a,LEN(a)-b),a)))))))

也许其他人有更短的解决方案...

关于在大写字母和数字前插入空格的Excel公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74745280/

相关文章:

excel - Excel 中的表观置信区间差异

excel - 如何筛选 Excel 工作表中的列表

excel - 过滤器中的 Countif 1 和 -1

Excel,多个 IF AND 更高效的公式

java - 使用 java jxl 在现有工作簿中添加新工作表

excel - 是否可以创建可以在Excel中打开用户表单的超链接

Excel VBA 更新 PowerPoint 文本框

vba - VBA 中的引用名称更改工作簿

Excel - 从源数据集创建缩进层次结构列表

excel - IF 函数 - 有没有办法避免重复公式