如何在Excel中无需逐个指定单元格,将一行单元格范围合并为单个单元格?
如何批量将Excel整行单元格内容合并到单个单元格?
我想把Excel里某一行各列的数据合并到单个单元格中,比如现有数据:
first_name last_name country Demetra Ioannou US Emmalyn Nicolls US Daron Dimitriades DE
希望转换成这样:
first_name last_name country concatenated Demetra Ioannou US DemetraIoannouUS Emmalyn Nicolls US EmmalynNicollsUS Daron Dimitriades DE DaronDimitriadesDE
因为表格行数很多,不想逐个指定单元格(比如用A2 & B2 & C2 & ...这种写法),想用公式直接合并整个单元格范围。但用CONCATENATE(A2:C2)时,结果会分散到多个单元格里:
first_name last_name country concatenated Demetra Ioannou US Demetra Ioannou US Emmalyn Nicolls US Emmalyn Nicolls US Daron Dimitriades DE Daron Dimitriades DE
之前看到的方法是用TRANSPOSE后按F2转成值,但每一行都要手动操作,太麻烦。
请问有没有办法不用逐个指定单元格,就能把一行单元格范围的内容合并到单个单元格里?
另外,我认为系统推荐的重复问题并不适合替代我的问题:
- 第一个问题是问如何合并单元格并添加分隔符,和我的需求相关但不同,而且它的现有答案都是逐个指定单元格用CONCAT,这正是我要避免的。
- 第二个问题是专门问怎么用TEXTJOIN,而我的问题用CONCAT是更合适的解决方案。
解决方案
方法1:使用CONCAT函数(Excel 2019及以后版本/365)
直接在目标单元格输入公式:
=CONCAT(A2:C2)
输入完成后下拉填充公式到所有行即可。CONCAT支持直接引用单元格范围,会自动把范围内的内容按顺序合并成单个字符串,不会分散到多个单元格。
方法2:旧版本Excel(2016及以前)的替代方案
如果你的Excel版本不支持CONCAT,可以用以下两种方式:
- PHONETIC函数(仅对文本单元格有效):
=PHONETIC(A2:C2)
注:如果范围内包含数字,需要先将数字转为文本格式才能正确合并。
2. TEXTJOIN数组公式:
=TEXTJOIN("",TRUE,A2:C2)
第一个参数为空字符串(表示合并时无分隔符),第二个参数TRUE表示忽略空单元格,输入后下拉即可批量处理所有行。
内容的提问来源于stack exchange,提问作者Stevoisiak
相关产品推荐
相关产品推荐

