如何将展平表转换为2D Excel表

时间:2015-10-14 12:47:44

标签: excel excel-vba vba

我在Excel中有一个国家和年份的“扁平”表格。例如

Country      Year       Value
USA          1961       a
USA          1962       x
USA          1963       g
USA          1964       y
France       1961       u
              ...

我希望有一个二维表如下:

        1961        1962        1963        1964
USA      a           x            g           y
France   u           e            h           a
Germany  o           x            n           p

您是否碰巧知道如何使用VBA在Excel中以编程方式执行此操作。非常感谢任何提示或建议。

1 个答案:

答案 0 :(得分:1)

您可以使用索引/匹配作为数组公式,在没有VBA的情况下填充此内容。 (如果您需要VBA,请将其记录为宏以查看公式的输入方式,然后将其应用于空表范围):

=INDEX($C$2:$C$6,MATCH($F3&G$2,$A$2:$A$6&$B$2:$B$6,0)) (使用CTRL + SHIFT + ENTER输入)

以下是数据的布局方式,以便了解我获取范围的位置:

enter image description here

然后,您可以上下拖动公式以填充表格的其余部分。无论如何,您需要根据数据调整使用的范围。