“移动”&引用;使用Excel公式将值分隔到下一行

“移动”&引用;使用Excel公式将值分隔到下一行,excel,excel-formula,Excel,Excel Formula,了解如何显示单元格A1中的值: English; German; French; Spanish; Finnish; Russian 用这种方式使用Excel公式 A2 English A3 German A4 French A5 Spanish A6 Finnish A7 Russian 把这个放在A2里,然后抄下来: =TRIM(MID(SUBSTITUTE($A$1,";",REPT(" ",999)),(ROW(1:1)-1)*999+1

了解如何显示单元格A1中的值:

English; German; French; Spanish; Finnish; Russian
用这种方式使用Excel公式

  A2  English 
  A3  German 
  A4  French 
  A5  Spanish 
  A6  Finnish 
  A7  Russian

把这个放在A2里,然后抄下来:

=TRIM(MID(SUBSTITUTE($A$1,";",REPT(" ",999)),(ROW(1:1)-1)*999+1,999))
行(1:1)
只是一个计数器,对于第一个单元格,无论公式放置在何处或参考单元格,都应始终为
1:1
。它将移动到
2:2
,然后
3:3
,因为它会自动向下复制。这是公式知道返回哪个的方式


发布动态数组公式后(目前仅限办公室内部人员使用),我们可以使用顺序代替行,只需将公式放置在第一个单元格中,无需向下复制,Excel将填充其余单元格:

=TRIM(MID(SUBSTITUTE(A1,";",REPT(" ",999)),SEQUENCE(LEN(A1)-LEN(SUBSTITUTE(A1,";",""))+1,,0)*999+1,999))


为了缩短公式,我们可以使用一个简单的UDF,使用
Split()
返回一个值数组:

然后是一个简单的指数公式:

=INDEX(MYSPLIT($A$1,";"),ROW(1:1))
然后抄下来

或者在释放动态阵列时:

=TRASPOSE(MYSPLIT($A$1,";")) 

仅在第一个单元格中。

从Excel 2013开始,您可以使用。您可以将此公式放入
A2

=INDEX(FILTERXML("<t><s>"&SUBSTITUTE($A$1,"; ","</s><s>")&"</s></t>","//s"),ROW(A1))
=索引(FILTERXML(“&SUBSTITUTE($1,”;“,”)&“//s”),第(A1)行)
向下拖动

但是,另一个答案是较少键入=)

假设输入A1:

English; German; French; Spanish; Finnish; Russian
然后,复制
A1
并粘贴到
A2

选择A2>>Ctrl+H>>查找内容:输入:“
”(不带引号)>>替换为:(保留空白)>>按“全部替换”>>关闭

A2变成:

English German French Spanish Finnish Russian
将列A宽度减小为宽:
8.00
(61像素)

选择
A2
>
编辑
>
填充
,选择
调整
>确定>>完成

最终成为:

A2 English    
A3 German    
A4 French    
A5 Spanish    
A6 Finnish    
A7 Russian

仅供参考,如果您使用的是Excel 2010 Professional Plus或更高版本的Excel,您可以使用Power Query来解决此问题(但是,如果您只处理一个单元格或少量数据,这种方法可能会有过大的杀伤力)

首先,将数据加载到电源查询编辑器中

其次,突出显示相关列,使用
Transform
选项卡下的splitcolumns功能,按分号分隔值
,然后在高级设置中选择将结果放入行中。那么你应该有想要的列表

最后关闭并将输出加载到新工作表(默认情况下)


如果你有任何问题,请告诉我。干杯:)

在引入新的动态数组公式时,将
=INDEX(FILTERXML(“&SUBSTITUTE($A$1,”;“,”)&“/s”),0)
放在第一个单元格中返回整个列表,无需向下复制,现在比我的列表短。:)伟大的解决方案,以及!正如问题所说——如何用公式来做。想象一下你的excel工具被不同的人使用了1000次。使用解决方案执行所有这些操作会浪费多少时间?
A2 English    
A3 German    
A4 French    
A5 Spanish    
A6 Finnish    
A7 Russian