计算行并进行最大排列

时间:2018-09-25 08:50:37

标签: excel vba permutation

如何排列名称列表?对于前。我在A栏上有5个名字。首先计算A列,并在单元格中仅将5列置换为b列,并使用分隔符“”,仅更改名字 ...

A列

tom
Lila
John
sam
steave

B列

Tom,Lila,John,Sam,Steave
Lila,Tom,John,Sam,Steave
John,Tom,Lila,Sam,Steave
Sam,Tom,Lila,John,Steave
Steave,Tom,Lila,John,Sam

1 个答案:

答案 0 :(得分:1)

这是一个非常简单的例子:

在单元格B1中输入以下公式:=A1&","&A2&","&A3&","&A4&","&A5 这将从所有单元格值之间使用,构建一个字符串。

然后在B2中输入以下公式:=A2&","&SUBSTITUTE($B$1,","&A2,"")并向下拖动。 它将以单元格A2的值开头,添加一个逗号,然后添加来自单元格B1的字符串,其中它将用""(无字符)替换单元格A2中的值,从而有效地将其从字符串中删除。


根据OP中的评论进行编辑

(根据需要调整范围A1:A10


为使响应速度更快,我添加了一个帮助器列。 在B列中,我现在有一个具有以下公式的帮助列:

在B1中:=IF(A1<>"",A1,"")

在B2中:=IF(A2<>"",B1&","&A2,"")将其向下拖动。

在单元格C1中,我有以下公式:=IF(A1<>"",INDEX(A1:A10,COUNTA(A1:A10)),"")这会将最长的数据字符串放入单元格中。

在C2中,可以输入包裹有IF的原始公式以说明空单元格:=IF(A2<>"",A2&","&SUBSTITUTE($B$1,","&A2,""),"")

然后是结果:

enter image description here

相关问题