将第一张纸上的表格中的每一行与第二张纸上的选定项目进行比较,并将其显示在第二张纸张中

时间:2016-02-26 13:42:58

标签: excel excel-formula excel-2007

我有以下问题:

我有一张有两张纸的文件。在第一张纸上,我有一张桌子上有一些事实。重要的列是表包含不同应用程序版本的位置。

在第二张表格中,我可以从列表中选择一个项目,在第二个单元格中,我可以选择所选项目的先前版本。在带有版本的列表和我的项目列表之间是依赖关系,它们位于另一个工作表上但不是那么重要。

现在我遇到了问题。如果我选择了以前的版本,我想在第一张纸上用所选版本过滤我的表格,并且每张小于该版本的行应显示在我的第二张纸上。

Excel有任何可以解决我的问题或让我使用VBA的公式吗?我没有VBA的任何经验。

编辑:

好吧,让我们说我的第二张表是这样的:

----------List with selected project -------- list of selected app-versions---------------
|
|
|
----------Headline A ------- Headline B --------- Headline C -------- Headline D ---------

如果我更改/选择了我的应用程序的(旧)版本,则应该触发一个事件。 该事件应该遍历我的第一张表,如下所示:

----------Headline A ------- Headline B --------- Headline C --------- Headline D --------
|
|
|
----------cell A2 ---------- cell B2 ------------ cell C2 ------------ cell D2 --------
----------cell A3 ---------- cell B3 ------------ cell C3 ------------ cell D3 --------
----------cell A4 ---------- cell B4 ------------ cell C4 ------------ cell D4 --------
----------cell A5 ---------- cell B5 ------------ cell C5 ------------ cell D5 --------

在每个迭代行中,如果版本号更大,它应该将单元格A2 / 3/4/5的内容与我选择的项目以及单元格C2 / 3/4/5的内容与我选择的应用程序版本进行比较

如果两者匹配,则传递的特定单元格应显示在第二张表格的列中。

我的Mac上没有MS Office,因此我无法截取任何屏幕截图。我希望我能做的更清楚。

1 个答案:

答案 0 :(得分:0)

  • 简答: 最有可能的是,你需要VBA。

  • 更详细的回答:

你的英语不是100%清晰,所以我不明白你是否希望“过滤”,正如你所写的那样,它会在第一张和第二张中隐藏一些行,或者你只需​​要简单地突出显示和/或不显示某些单元格的内容。

  • 如果您只需要后者,简单的公式加上一些简单的条件格式就足够了(没有VBA)。

  • 但是,如果看起来需要隐藏行或刷新2个过滤器,那么您需要一些VBA行,其中大多数都可以记录为宏。

数据透视表是不够的,因为您需要一个操作(选择框架/版本)来影响两个工作表。

简单公式是不够的,因为当计算值发生变化时,过滤器不会更新。

你问的问题可以在公式中完成(我在项目中这样做),但是为了显示两个表的部分副本及其行的顺序不同,这样的公式会很复杂。 此外,您似乎询问如何过滤原始表,而不是如何显示原始表的副本。 总之,在大多数情况下,最好的解决方案是学习如何写几行VBA。