0

Excel 2011,Mac。

两张表,名称都在“最后一个,第一个”中,按 A 降序排列。表 1 的名称列表比表 2 上的列表短得多。表 2 的标题在第 1 行,但其余单元格在这 12 列留空。

我需要从表 1 中的名称中获取 12 列数据到表 2 的正确行中。

我绑定到使用数据透视表,但数据透视带来了 0 和 1,而不是 sheet1 中的实际数据,尽管它确实带来了标题。我使用该枢轴(复制/粘贴)来创建我通过此任务复制到的普通工作表。

我试图找出一种方法来编写有意义的代码,但因为我无法弄清楚如何在不让它过于复杂的情况下进行编码,所以我一脸茫然。

我可以在匹配名称之间添加行,直到 A 匹配 A,然后一次复制并粘贴整个单元格块。我可以找到匹配项并将数据复制到 Sheet2 中。我可以建立一个匹配列表(数组?)然后遍历并复制每个匹配的东西......呃。我只知道这些是笨拙的想法,但显然我在搜索中找不到更好的东西 - 或者至少我的搜索词在寻找它们时毫无用处。

所以我不是要所有的代码,而是要两件事:

1) 有效地在两张表的 A 列中的名称之间进行这种比较的代码。

2)关于编码最快的逻辑操作过程的建议(对我来说是最少的)。

例如:

Underscore indicates empty cell.

Sheet 1          Sheet 2

   A   B   C...        A  B  C  D...
1  A  22  11       1   A  _  _  547
2  C  32  21       2   B  _  _  678
3  F  56  89       3   C  _  _  34
4  H  65  90       4   D  _  _  67899
.                  5   E  _  _  875
.                  6   F  _  _  875
.                  7   G  _  _  875
                   8   H  _  _  875

Resulting Sheet 2

   A   B   C   D...
1  A  22  11  547
2  B  _   _   678
3  C  32  21  34
4  D  _   _   67899
5  E  _   _   875
6  F  56  89  875   
7  G  _   _   875
8  H  65  90  875
.
.
.

因此,您的想法将不胜感激,欢迎您的代码!

4

1 回答 1

0

您可能会考虑让您的代码向 Sheet2 B1 和 C1 添加一个 vlookup 公式,然后将公式复制下来(如果您有很多行,那么计算时间很长)。然后复制/粘贴 Sheet2 B 和 C 中的特殊值以摆脱公式。

或者,您可以遍历 Sheet2 列 A 中的所有值并在 Sheet1 中查找匹配项。

如果您需要一些示例代码,请告诉我。

于 2013-08-01T14:27:05.213 回答