如何组合数据集以创建独特的组合[重复]


0

这个问题在这里已有答案:

首先,我没有Excel脚本的经验,只有基本的公式。我在SU上看过这个问题,但我不确定这是不是我需要的,也不知道如何根据我的需要调整它。

这是我正在尝试的:

我有一个包含3列10行的电子表格,每个列都有唯一的值。例如:

Column A
--------
White 
Black 
Blue 
etc (until 10 items)

Column B
--------
USA
Canada 
Mexico 
etc (until 10 items)

Column C
--------
English
French 
Spanish 
etc (until 10 items)

所以总共有30个元素。我想创建一个包含3列和1000行的新表,其中每行将具有这3个元素的唯一组合(因此2行将永远不会具有相同的3个元素)。只是为了澄清,列的顺序必须相同(A,B,C),当然一列的元素始终保留在该列中。

结果行的示例:

White | USA | English
White | USA | French
Black | USA | English
Black | Canada | English
... up to 1000 combinations

任何帮助,将不胜感激!

编辑

这个问题的重点是:1。了解链接答案中提供的解决方案是否适用于我的案例2.了解是否还有其他方法可以解决这个问题,而不是编写脚本(公式,Excel工具等)


所以你基本上想要所有的排列都正确吗?
Eric F

这是同一个问题。如果你不理解答案,那就明白问题吧,但是在实施建议的解决方案的同时,让问题特定于你正在坚持的问题(而不是仅仅再问同样的事情而只是说你不理解答案)。除了链接问题之外,还包括您的研究。IE:你有什么尝试?你到底在哪里被困?如果你只是想对现有问题做出更新/不同的答案,可以给一个赏金以引起注意。
Ƭᴇcʜιᴇ00715年

@Eric F正确
艾伯特

@ TECHIE007我在我的Q中提到我没有使用脚本的经验,所以这个答案对我没什么帮助。我希望还有其他方法可以做到这一点,不涉及脚本(如公式,我在excel中不知道的一些工具等)。那个问题还说明他有3个不同的表,信息在一列中,我只有一个表有3列。正如您所看到的,对于经验丰富的Excel用户而言,这可能是一个明显相同的问题,但对于可能不那么明显的非经验用户而言。所以在这里你有两个不同的原因,我认为我的问题是有效的。
阿尔伯特

你能澄清你从哪里获得1000的数字吗?正如你所说,如果“一列的元素始终保留在该列中”,那么这不会导致总数仅为100,而不是1000吗?
XOR LX 2015年

Answers:


2

在下面的答案中,我假设您的初始数据位于单元格A1:C10中,并且没有标题。该解决方案不使用脚本。仅使用Excel公式。

  1. =MOD((ROW()-1),10)+1在单元格中输入以下公式D1
  2. 输入=MOD(INT((ROW()-1)/10),10)+1单元格E1
  3. 输入=MOD(INT(INT((ROW()-1)/10)/10),10)+1单元格F1
  4. 选择单元格D1:F1并将其向下拖动到第1000行以D1:F1000使用唯一的索引组合填充区域。
  5. 输入=INDEX(A$1:A$10,D1)单元格G1
  6. 选择单元格G1并将其拖到单元格的右侧I1
  7. 选择单元格G1:I1并将其向下拖动到第1000行,以G1:I1000使用初始数据的唯一组合填充区域

说明:

单元格D1,E1和F1中的公式计算当前行号中的第100,第10和1的数量(行数被调整为-1)。这给出了一系列唯一索引。函数INDEX(range,row_num)从给定行号的范围返回值。


@Awsek非常感谢,我会尽快试一试!
阿尔伯特

@Awsek IT工作!!! 非常感谢你的帮助,我真的很感激:)
Albert
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.