首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在excel中将一列中的行合并成一个单元格?

如何在excel中将一列中的行合并成一个单元格?
EN

Stack Overflow用户
提问于 2011-11-15 19:57:56
回答 3查看 343.6K关注 0票数 81

E.g

代码语言:javascript
复制
A1:I
A2:am
A3:a
A4:boy 

我想把它们合并成一个单元格"Iamaboy“

这个例子显示了4个单元格合并成1个单元格,但是我有很多单元格(超过100个),我不能用A1 & A2 & A3 & A4逐个输入它们,我能做什么?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-11-15 20:29:36

我向您介绍我的Jean VBA函数(感谢ConcatenateRange的命名建议!)它将接受一系列单元格(任何维度、任何方向等)。并将它们合并成一个字符串。作为可选的第三个参数,您可以添加分隔符(如空格或逗号)。

在本例中,您可以编写以下代码来使用它:

代码语言:javascript
复制
=ConcatenateRange(A1:A4)

代码语言:javascript
复制
Function ConcatenateRange(ByVal cell_range As range, _
                    Optional ByVal separator As String) As String

Dim newString As String
Dim cell As Variant

For Each cell in cell_range
    If Len(cell) <> 0 Then
        newString = newString & (separator & cell)
    End if
Next

If Len(newString) <> 0 Then
    newString = Right$(newString, (Len(newString) - Len(separator)))
End If

ConcatenateRange = newString

End Function
票数 88
EN

Stack Overflow用户

发布于 2014-01-10 00:21:42

我使用CONCATENATE方法获取列的值并用引号将它们括起来,以便快速填充WHERE IN ()语句的SQL子句。

我总是只需要输入=CONCATENATE("'",B2,"'",","),然后选择它并向下拖动它,这将创建=CONCATENATE("'",B3,"'",",")=CONCATENATE("'",B4,"'",",")等,然后高亮显示整个列,将粘贴复制到纯文本编辑器中并在需要时粘贴回去,这样就去掉了行分隔。它是有效的,但同样,作为一次性交易,对于一直需要它的人来说,这不是一个好的解决方案。

票数 2
EN

Stack Overflow用户

发布于 2019-10-17 06:19:25

我知道这是一个非常古老的问题,但我也在做同样的事情,我在excel中偶然发现了一个名为"TEXTJOIN“的新公式。

对于这个问题,以下公式解决了这个问题

代码语言:javascript
复制
=TEXTJOIN("",TRUE,(a1:a4))

"TEXTJOIN“的签名解释为TEXTJOIN(delimiter,ignore_empty,text1,text2,text3,...)

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8135995

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档