我在单个单元格中有一个数组公式,它输出一些二维数组:
{={"a","b","c"; 1, 2, 3}}
(当然更复杂,但如果我逐步完成,那是最后一步)
目前我正在包装这个结果以返回一个格式化的字符串,如下所示:
{="{" & TEXTJOIN(", ",TRUE,{"a","b","c";1,2,3}) &"}"}
{a, b, c, 1, 2, 3}
它以字符串形式返回。;
这几乎是我想要的,但是数组变平了,由于缺少 - 分号,无法区分两行。我不关心转义字母""
- 我的实际用例是所有整数
有没有办法将二维数组转换为某种字符串,保留行区别?理想情况下,不必多次重新引用数组,因为我没有中间数组的空间,并且多次重新计算效率会有点低。
FWIW我的实际公式是
{="{" & TEXTJOIN(", ",TRUE,INDIRECT([@Pt2])*INDIRECT([@Pm2])*INDIRECT([@Pb3])*INDIRECT([@Nt4])*INDIRECT([@Nm5])*INDIRECT([@Nb6])) &"}"}
其中[@...]
指向命名范围的名称,每个命名范围是一个 6x3 的整数矩阵 0 到 2。因此,该公式计算 6 个不同二维数组的元素乘积并将其作为数组输出。也许你可以想出一个更好的方法来解决这个问题,但我一直在努力遵循 KISS 的心态,这对我来说似乎是最明显的方法。
概括
所以我想要的是元素乘积的数组输出
{0,2,0,0,2,1
0,2,2,1,1,0
0,0,0,1,1,0}
成为字符串"{0,2,0,0,2,1;0,2,2,1,1,0;0,0,0,1,1,0}"
或任何其他单细胞明确的二维数组表示。希望这是有道理的:)