Excel:为每一行创build一个新的工作表

在Excel表中,我有大约30行×100列的数据。 每一行代表一个不同的“客户”。 对于每个客户,我已经创build了一个通过电子邮件发送给他们的摘要表,并且还包含我主表中的所有信息

我的问题如下,当我添加一个新的行到我的主表并为其填充适当的数据时,是否有一种方法可以让excel创build基于某个模板表的新表单?

如果您需要在添加一行时自动执行此操作,则需要使用Worksheet_Change事件来捕获新行的完成。

然后,这将从模板生成一个新的工作簿,跨越必要的范围,然后保存新文件的地方,就像Gnoupi说

所有这些对于VBA来说都是微不足道的,但不幸的是,如果你不熟悉VBA,那么就不是一个简单的例子,“Do X然后在Excel中执行Y”,所以我认为你可能会挣扎,即使在这里发布的示例代码。

即使我创build了一个虚拟模型来完成你所需要的function,至less在function上,如果你不习惯以编程方式使用Excel,那么根据你的特定需求定制虚拟模型可能会很困难。

编辑
我已经创build了一个非常简单的演示: http : //drop.io/4clxof3 – 注意这个例子不包括添加新行的事件处理,几乎没有validation或error handling,几乎所有的假设(!)

如果你觉得使用这个开发你自己的解决scheme的基础是很好的。 如果整个VBA的东西对你来说是陌生的,那么可能是时候来援引增援:)

至less,我会就你的需要给你我的意见,就像我看到的那样。 这不是一个“准备好使用”的解决scheme,但是,只有一些想法的方式来做到这一点。


据我所知,没有办法跟踪在Excel中插入一行。 因此,例如,您需要在button上激活VBAfunction。 实际上,看到Lunatik的回答。

这个函数会遍历主表中的所有行,并在必要时创build一个新表(对于每个客户端,您最好都需要一个唯一的ID,它可以是主表上的简单索引,具体取决于行)。

您将首先创build具有特定名称的模板表,并最终将其隐藏起来(以避免在可见标签中出现)。 当我说这个函数会创build的时候,它实际上会复制这个模板,并赋予它一个唯一的名字(前面提到的id)。 你可以find方法在这个链接复制工作表。

第二个操作是将主表中的行的数据放到模板表(如果我正确理解了你的要求),这在VBA中并不复杂。

我想知道是否有可能没有错误捕捉。 只需要一个获取Excel文档每一行的VBA代码 – 为每一行创build一个文件,然后将文件夹中的全部文件合并为一个文件?

我知道听起来很奇怪..但是这可能吗?