如何连接数百个单元格的string?
我正在尝试将来自各种单元格的句子合并到一个单元格中。 例:
A1 – “你好”
A2 – “如何”
A3 – “你”
A4 – =合并(A1:A3)—->“你好吗”
我知道这个技巧: =A1 & " " & A2.....
但是我有700个单元格组合成一个单元格,这种方法看起来很野蛮。 如果有内置函数,那将是理想的。 我不介意VBA的答案,只要答案是非常详细的从如何打开VBA开始,因为我不知道VBA。
有但是并不好多less: concatenate
。
在你的情况下,这将是concatenate(A1;" ";A2;" ";A3)
。
处理700个细胞也不是好的方法。
VBA解决scheme会更好。 要打开VBA编辑器,请按ALT + F11(有关graphics说明,请参阅本文 )。
之后,转到顶部的“插入”菜单并select“模块”。 编辑器将准备好接受input。 只需粘贴以下内容(删除可能有的任何其他文本):
Option Explicit Public Function MyConcatenate(ByVal myRange As Range) Dim vCell, vResult As String For Each vCell In myRange.Cells vResult = vResult & " " & vCell.Text Next MyConcatenate = Mid(vResult, 2) End Function
您现在可以closures编辑器并返回到工作簿。
要使用它,请在单元格中写入以下内容: =MyConcatenate(A1:A3)
。
您可以使用此页面中的StringConcat
函数: http : //www.cpearson.com/excel/stringconcatenation.aspx
那么你可以像这样使用它:
=StringConcat("|",B1:B5)
您将收到范围内的所有值: B1:B5
由|
分隔 。
如果链接被破坏,您可以在这里find函数的来源: http : //pastebin.com/JNS9pYWA 。
对于一个相对温和的700单元格公式似乎是可行的。
在B1: =A1&" "
在C1: =B1
在B2:复制B1
(ie =A2&" "
)
在C2中: =C1&B2
然后根据需要复制B2:C2
。
我也有同样的问题。 我在A1:A980
A列中有数据。 但我已经find了解决scheme如下。
在B2中,我将公式设为=CONCATENATE(B1," ",A1," ",A2)
并从B3input公式as =CONCATENATE(B2," ",A3)
,在B3中as =CONCATENATE(B3," ",A4)
直到B980。
这会给你在最后的B90单元中的结果,也没有任何VBA。
希望你可能有同样的问题,那么这可能会解决这个问题。