【问题标题】:Concat Arrays cells in excelExcel中的Concat Arrays单元格
【发布时间】:2019-11-11 03:00:53
【问题描述】:

我有 3 个单细胞数组(没有文字,请参阅:https://support.office.com/en-us/article/guidelines-and-examples-of-array-formulas-7d94a64e-3ff3-4686-9372-ecfd5caa57c7

A1 = {"A","B","C"}

B1 = {"1","2","3"}

C1 = {"X","Y","Z"}

我需要连接它们

D1 = "A 1 X , B 2 Y , C 3 Z"

该公式应该适用于更大的数组,而不仅仅是 3 个元素。 我无法使用 VB。

谢谢你可以看看https://www.freelancer.com/contest/Excel-Formula-1660332

【问题讨论】:

  • 我忘了,没有VB
  • 您需要一个名为 TEXTJOIN 的函数。您可以根据您的 excel 许可证访问
  • 如果 TEXTJOIN 不可用,您将手头有一个很长的公式。在每个单元格的情况下,它是否总是 3 个单元格和 3 个值?

标签: arrays excel matrix concat


【解决方案1】:

我的家用电脑上没有TEXTJOIN 功能。所以当我尝试以下约束时

  • 将有三个单元格。

  • 每个单元格将有 3 个具有上述常量结构的条目。

那么可以使用下面很长的公式。

=""""&TRIM(SUBSTITUTE(CONCATENATE(TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&A1,",",REPT(" ",99)),"{",""),"}",""),99,99)),TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&B1,",",REPT(" ",99)),"{",""),"}",""),99,99)),TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&C1,",",REPT(" ",99)),"{",""),"}",""),99,99))," , ",TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&A1,",",REPT(" ",99)),"{",""),"}",""),198,99)),TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&B1,",",REPT(" ",99)),"{",""),"}",""),198,99)),TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&C1,",",REPT(" ",99)),"{",""),"}",""),198,99))," , ",TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&A1,",",REPT(" ",99)),"{",""),"}",""),297,99)),TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&B1,",",REPT(" ",99)),"{",""),"}",""),297,99)),TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&C1,",",REPT(" ",99)),"{",""),"}",""),297,99))),""""," "))&"""

其核心是重复使用以下提取逻辑。

TRIM(MID(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(","&A1,",",REPT(" ",99)),"{",""),"}",""),99,99))

我的建议:如果您没有 TEXTJOIN 选项,请使用 VBA。

【讨论】:

  • 非常感谢您的努力和回答,我不够清楚,我现在编辑问题以使其准确,谢谢
【解决方案2】:

识别:{"A1X","B2Y","C3Z"}={"A","B","C"} & {"1","2","3"} & {"X","Y","Z"}

有各种各样的方法来组合和分隔文本,但在坚持知道如何在函数主题中使用数组的同时,我们可以在一个函数中回答这个问题,如下所示:

=LET(myText,TEXTJOIN(",",,{"A","B","C"} & {"1","2","3"} & {"X","Y","Z"}),
TEXTJOIN(" ",,MID(myText,SEQUENCE(LEN(myText)),1)))

只需将输入数组替换为对大型数组的引用即可。

了解这种用于隐式连接的 excel 语法很有用,因为它简化了许多函数。

{"AY","AZ"}="A"&{"Y","Z"} {"AY","BZ"}={"A","B"}&{"Y","Z"}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-19
    • 2011-11-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多