连接OO Calc中的一系列单元格

时间:2016-12-01 11:29:41

标签: openoffice-calc

我有这些单元格的A列:

A1: Apple
A2: Banana
A3: Cherry

我想要一个将它们串在一个单元格中的公式,如下所示:

"Apple, Banana, Cherry"

4 个答案:

答案 0 :(得分:1)

我不知道它是否已植入 OpenOffice 上,但在他的堂兄 LibreOffice Calc 上,从5.2版开始,您已经具有以下功能: TEXTJOIN

  

TEXTJOIN 定界符 skip_empty string1 [,string2] [,…] )   

定界符是文本字符串,可以是范围。

skip_empty 是逻辑(TRUE或   FALSE,1或0)参数。如果为TRUE,则将忽略空字符串。

   string1 [,string2] [,…] 是字符串或对单元格或范围的引用   包含要加入的文本。
  范围是从上到下逐行遍历的。

示例:= TEXTJOIN “,” 1 A1:A10 )< / em>

更多信息在这里: https://help.libreoffice.org/6.3/en-US/text/scalc/01/func_textjoin.html?DbPAR=CALC#bm_id581556228060864

答案 1 :(得分:1)

从Apache OpenOffice Calc的4.1.7版本开始,仍然没有针对此问题的简单解决方案。 CONCATENATE不接受单元格范围,并且没有像LibreOffice这样的TEXTJOIN函数。但是,有一种解决方法。

这实际上是pnuts' answer的副本,但希望有图像可以帮助您。他的答案明确指出了使用分隔符分隔项目,以及上述问题使用的开和引号。由于一般性问题(如何连接一系列单元格)对许多人都有用,所以我认为即使我没有回答,我的回答仍然应该有用。

在我的情况下,我有一列带有对应于完成的工作集的字母,另一列带有对应于未完成的工作集的字母。字母仅出现在第8行中,因此我无法同时查看所有字母。我只想将所有完成的字母混在一起放在一个单元格中,以便于查看,而未完成的字母也一样。

该示例删除了每个字母7个空行,并手动输入了哪些字母已完成/未完成以方便使用。

列A是要连接的“未完成”列。 C列用于执行串联。第2行是第一行,第24行是最后一行。 G1将并置结果显示在文档顶部附近的一个易于查看的位置。

B和D列以及单元格G2使用相同的方法来显示“完成的”数据。此处未显示公式。

Overview of the entire worksheet.

在单元格C2中,明确指向A2:
= A2

如果像我一样有空格,则C2中需要有一个条件,将第一个单元格视为空白文本,而不是零 Note 1
= IF(A2 <>“”; A2;“”)

Formula for C2, showing its position relative to A2.

然后在单元格C3中将C2和A3连接起来:
= C2和A3

Formula for C3, showing its position relative to C2 and A3.

复制C3,然后突出显示C4:C24并粘贴公式以自动填充这些单元格。

Cells C4 to C24 highlighted to show copy paste operation.

需要连接结果的地方,请参考C24。

Formula for the destination cell that references the result of concatenation.

注释

注1 如果A行顶部的N个单元格为空白,而您只让C2 = A2,则C的前N行将显示0,而0之前将串联结果。这里,B和D列用于说明问题:

Illustration of the glitch when the first row of B2 is blank and D2 doesn't use a conditional check.

答案 2 :(得分:0)

使用CONCATENATE功能或&符号(&amp;):

=CONCATENATE("""", A1, ", ", A2, ", ", A3, """")

对于更强大的功能,请编写使用Join的基本宏。

修改

没有可以连接范围的功能。而是编写一个Basic宏或将CONCATENATE公式拖放到多个单元格。请参阅https://forum.openoffice.org/en/forum/viewtopic.php?f=9&t=5438

答案 3 :(得分:0)

另一种适用于长列表的方法是将A1复制到B1,在"前面添加,然后在B2中输入:

 =B1&", "&A2&IF(A3="";"""";"")

然后双击填充手柄到单元格B2(右下角的小方块)。结果应显示在列表最后一个条目的行的ColumnB中。