【问题标题】:Compare Data from 2 Worksheets in Excel 2011在 Excel 2011 中比较 2 个工作表中的数据
【发布时间】:2013-04-04 01:33:23
【问题描述】:

我有一个 Excel 工作簿,其中包含 2 张按字母顺序排列的企业列表,一张是今年的,另一张是去年的。 2012 年的列表分配了类别,而 2013 年的则没有。

我想将 2012 年列表中的类别复制到仍然存在的 2013 年列表中。我该怎么做呢?我已经在谷歌上搜索了很多关于它的内容,但对于如何解决这个问题却一无所获。

2012 年列表

Business Name     Category
Business A        Services       
Business B        Shopping
Business C        Automotive

2013 年新列表

Business Name     Category
Business A        Services       
Business C        Automotive
New Business      ???

对于新业务,我需要手动确定它们属于什么,但就目前而言,我什至不知道哪些业务需要类别。还有很多其他的专栏,但在本期中它们并不重要。

我在 Excel 方面的经验非常有限,因此您可以提供的任何帮助都会有所帮助。谢谢。

【问题讨论】:

  • 尝试使用 VLookup。

标签: excel excel-2011 vba


【解决方案1】:

假设您的 2012 列表在 Sheet1 中,并且标题行从 A1 开始,在 Sheet2 中与 2013 年的设置类似。然后,从 Sheet2 的单元格 B2(或另一列)开始的以下查找公式将带入类别:

  =VLOOKUP(A2,Sheet1!$A$2:$B$6,2,0)

如果 2012 年没有为 2013 年列出的企业分配类别,则此公式将返回 N/A 错误值,表明您需要分配类别。

【讨论】:

  • 它确实有效,但是当它开始遇到与 2012 年不一致的列表时,事情就出轨了。所以它适用于前 4 个列表,然后有一个 2012 年的业务不再存在,因此单元格比较不再有效,因为单元格 A6 不再与 2013 年的单元格 A6 相同。我基本上需要检查列 A 中的所有列表,看看它是否存在于上一年,然后查找它是否具有该类别。这可能吗?
  • 我注意到公式中有一个小错误(第一个单元格引用应该是 A2 而不是 A1)。您需要确保将范围参考 $A$2:$B$6 调整为 Sheet1 中的实际数据行数(例如 $A$2:$B$100)。 $ 符号也很重要:当您复制公式时,它们可以防止查找范围发生变化。
  • 好的,我将公式修改为 =VLOOKUP(A2,Sheet1!$A$2:$B$900,2,0) 现在它似乎只是返回第一个列表的类别而没有否则。
  • 当你把它复制到数据范围的底部时,它只是一直返回相同的值?
  • 奇怪,我在工作中尝试过,它只是重复值,但在家里重新加载它并且它工作。我要买它。非常感谢你的帮助。我将您的答案标记为已接受。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-08-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-09-13
相关资源
最近更新 更多