我在下面有一个简单的4列表:
Column A Column B Column C Column D
HEAD BODY PARAGRAPH IMAGE
Headline 1 Body Text 1 Paragraph 1 Image 1
Headline 2 Body Text 2 Paragraph 2 Image 2
Headline 3 Body Text 3 Paragraph 3 Image 3
我想要拥有的那些列中的所有组合,我可以举例说明:
Column F Column G Column H Column I
HEAD BODY PARAGRAPH IMAGE
Headline 1 Body Text 1 Paragraph 1 Image 1
Headline 1 Body Text 1 Paragraph 1 Image 2
Headline 1 Body Text 1 Paragraph 1 Image 3
Headline 2 Body Text 2 Paragraph 2 Image 1
Headline 2 Body Text 2 Paragraph 2 Image 2
Headline 2 Body Text 2 Paragraph 2 Image 3
Headline 3 Body Text 3 Paragraph 3 Image 1
Headline 3 Body Text 3 Paragraph 3 Image 2
Headline 3 Body Text 3 Paragraph 3 Image 3
etc.
基本上我希望得到与-Excel – Multiple Columns, Different Combinations相同的答案,但仅适用于4列,而不是3列,也请不要使用VBA。
答案 0 :(得分:1)
如果我们将所有内容都视为4位数字,这是可能的,在给出的示例中,因为每列中有3个选项,所以我们希望以3为基数。我正在写3,但是应该清楚如何扩展它。在下面的内容中,我将说明如何在每一列中处理不同数量的选项。 假设您的数据出现在A1:D4中。我选择将E列留空,以便我轻松阅读内容。 F1得到以下公式:
=mid(base(row()-1,3,4),1,1)
将行号-1(此处为1-1 = 0,此处)构造为4位以3为基数的数字,并采用第一位数字。
G1有第二位数字:=mid(base(row()-1,3,4),2,1)
H1有=mid(base(row()-1,3,4),3,1)
并且I1有=mid(base(row()-1,3,4),4,1)
然后选择F1:I1并向下拖动到第81行(它将具有2 2 2 2)。
J1得到=index(A$2:A$4,1+F1)
,它被直接拖入M1。
然后将J1:M1向下拖动到第81行,就可以了。
[稍后您可以隐藏作为工作列的列,或将其公式构建为更难以理解的列。]
现在假设您希望能够处理每个类别中选项数量不同的情况。假设n是最大数量的选项。我将为n = 3进行说明,但它应该再次推广。
假设可能性位于J:M列中,在N1中,我放置了=if(counta(J1:M1)=4,join(",",J1:M1),"")
,并一直向下拖动以使每个类别中都有一个事物的所有事物都存在,但幻象条目完全存在空白。在O1中,我将=sort(N1:N,1,false)
的空格发送到底部,然后将行放到空格,直到空格为止,在P1中并将其拖到下方的位置=split(O1,",")
。
这里有一些可能的概括,当我使用数字时,您可以使用列中的条目计数,但是我认为这应该会使您受益匪浅。这种方法还存在一个局限,即您最多只能选择36个。