首页 > 解决方案 > Excel - VBA 将数据从原始文件插入到输出文件

问题描述

想问一下是否可以在excel vba中创建一个条件来在输出文件中插入匹配值的行

例如:

这是我的学生的示例列表:

在此处输入图像描述

这是他们的考试/问卷清单:

在此处输入图像描述

这将是最终输出:

在此处输入图像描述

VBA 是否可以在结果文件中看起来像?我只是想出了如何根据 TestLEVEL 值放置数字系列。但仍在思考如何完全按照我想要的方式插入问卷和值列。

谢谢!希望有可能

标签: excelvba

解决方案


经过进一步思考,并假设我已经正确理解了您的要求,我认为最简单的方法是使用FILTER-function。请注意,此功能仅在 Office 365 中可用,并且您的参数分隔符可能与我的不同。

它也不适合自动化任务,因为我假设问卷/价值对的数量会不时不同。虽然它使用起来相当简单,所以我想创建公式不会有很多工作。

我这样做的方法是在我的工作簿中创建您有图片的第二张工作表的副本,然后创建一个类似于您有图片的第三张工作表的工作表。在这张表中,我把公式

=FILTER(Sheet1!$C$2:$C$19;Sheet1!$A$2:$A$19=D2;NA())

进入单元格 F2 和

=FILTER(Sheet1!$D$2:$D$19;Sheet1!$A$2:$A$19=D2;NA())

进入G2。

然后,公式将过滤后的范围填充到列中,如下所示:

在此处输入图像描述

获取学生编号的学生的问卷值。4321 进入范围 F8:F13,使用公式

=FILTER(Sheet1!$C$2:$C$19;Sheet1!$A$2:$A$19=D8;NA())

等等。

我认为这至少可以解决问题中提出的问题,尽管如果您有不同的输入数据,您的工作表可能需要进行一些编辑。

作为进一步的提示,我建议将您的数据更改为表格,无论如何它们基本上都是这样,这使得引用它们更简单一些。

我希望这对您有所帮助,如果有什么不清楚的地方,请不要犹豫。


推荐阅读