如何使用Microsoft Excel中的宏根据字符数将一行文本拆分为不同的列?

时间:2017-04-07 10:42:34

标签: excel ms-office

我想知道我是否可以在Excel中使用宏来根据字符数将单个列中的数据分成不同的列。例如,我在A列中的内容是

A

AB

ABC

1A

564

8

我需要的是,在字母A,B和C

AB ABC

8 1A 564

感谢。

1 个答案:

答案 0 :(得分:-1)

在A列旁边的新列B中使用以下公式:

=IFERROR(INDEX($A$1:$A$6,SMALL(IF(LEN($A$1:$A$6)=1,ROW($A$1:$A$6),99999),ROW()),1),"")  

数组公式按 Ctrl + Shift + 同时输入

然后将其向下拖动,它将写出长度为1的B值,当它为空时,它表示不再有长度为1的值 小将找到长度为1的Cell(Row()= 1,长度= 1的第1个单元格,Row()= 2,长度= 1的第2个单元格...)
如果将返回相应条件的所有行
索引将返回单元格
如果没有更多匹配,则Iferror返回空“” 对于第二列,在LEN中写入2而不是1($ A $ 1:$ A $ 6)= 2

=IFERROR(INDEX($A$1:$A$6,SMALL(IF(LEN($A$1:$A$6)=2,ROW($A$1:$A$6),99999),ROW()),1),"")  

对于第三列,在LEN中写入3($ A $ 1:$ A $ 6)= 3

=IFERROR(INDEX($A$1:$A$6,SMALL(IF(LEN($A$1:$A$6)=3,ROW($A$1:$A$6),99999),ROW()),1),"")