假设我有一个包含以下行和列的电子表格:
QTY MIN | QTY MAX | 1 Color | 2 Color | 3 Color | 4 Color
1 | 10 | $1.00 | $1.50 | $1.75 | $1.90
11 | 20 | $0.90 | $1.40 | $1.65 | $1.80
21 | 100 | $0.80 | $1.30 | $1.45 | $1.70
101 | 1000 | $0.70 | $1.20 | $1.35 | $1.60
有没有一种简单的方法可以将这些数据转换为一个表格,该表格只有一个数量列,表示最低最小值和最高最大值之间的每个数量(1-1000)?例如,这是所需的表格:
QTY | 1 Color | 2 Color | 3 Color | 4 Color
1 | $1.00 | $1.50 | $1.75 | $1.90
2 | $1.00 | $1.50 | $1.75 | $1.90
3 | $1.00 | $1.50 | $1.75 | $1.90
...
我不是 Excel 的常客,我不知道有什么基于 Excel 的特定函数可以执行此操作,并且想象存在某些可以帮助此过程的东西。如果没有,我将改写一个独立脚本来解析 CSV 并执行此操作,但我想先问问 SU。
答案1
我会用查找。
您需要保留工作表 1 上的源表的副本。
工作表 2 将包含您的新表格。列 A 将包含 1-Infinity。单元格 B2 将包含=VLOOKUP($A2,Sheet1!A2:G5,2)
单元格 C2 将包含=VLOOKUP($A2,Sheet1!A2:G5,3)
等等。
您可以使用向下填充工具复制列 BG。
答案2
Excel 本身并没有自动转换数据的功能,但是有很多功能可以帮助您做到这一点。
例如,要为第一组插入多行,从 1 到 10。选择第 11 行并Insert
从弹出菜单中选择。您可以按F4重复此操作。
要向下填充一系列数字,请选择1
然后向下拖动以选择接下来的 9 个单元格。然后从Fill
→Series
菜单中,您可以填写一系列数字。
然后选择美元值并向下滑动以选择单元格范围并使用Fill
→ Down
(或Ctrl+ D)
您可以对其他行重复此过程。我可能会从一个工作表转到另一个工作表,而不是插入行,但那里有选项。
如果这是一个一次性的过程,那么使用 Excel 可能比编写解决方案更快。