Barnabas使用Excel创建http://www.formville.com/C17_free-purchase-orders.html [购买订单],每个工作簿一个PO。他创建了一个Excel模板,其中包含所有供应商的表格。他希望可以定期更新此表,该表可用于所有PO,过去,现在和将来。 Barnabas根据该模板自动创建的任何新工作簿都可以自动使用它,但以前创建的任何工作簿均无法使用。他想知道是否有一种方法可以使任何PO都可以访问当前的供应商列表。

在讨论选项之前,您需要了解Excel世界中的模板概念与Microsoft Word世界中的模板概念有很大不同。 (男孩,这是一种令人费解的组合,即“单词世界”。)在Excel中,模板是工作簿的起点。从模板创建工作簿后,工作簿与该工作簿所基于的模板之间就不再存在任何关系。

与Word相比,Word是模板的起始点,但是Word和文档所基于的模板之间却保持着关系。您可以更新模板(样式更改,宏等),并且基于该模板的任何文档都将继承这些更新。

那么,那让我们留在Excel的什么地方呢?这意味着尽管您可以更新模板,但是这些更新对基于该模板的工作簿绝对没有影响。嗯,对以前使用该模板创建的工作簿没有影响。模板更新后创建的那些工作簿将基于更新的模板。

使用Excel最合乎逻辑的方法是(a)将供应商数据保存在工作簿工作表中,并使用宏定期更新该数据,或者(b)将供应商数据放置在其自己的工作簿中(也许存储在网络驱动器中)必须在打开PO时将其打开。

您使用哪种方法(a或b)取决于您对使用供应商数据和PO工作簿的方式的最佳长期解决方案的看法。这两种策略的实施可能太复杂了,在这里不做介绍,因为任何这种实施都将在很大程度上取决于您如何完成工作。但是,这很容易计划。假设您要使用第一种策略。您的步骤可能包括以下步骤:

  • 确定包含供应商数据表的模板的存储位置。

  • 创建在打开PO工作簿时运行的自动打开宏。它确定模板是否可访问以及模板中的数据是否已更新(可能使用某种类型的修订号)。

  • 如果供应商数据已更新,请删除采购订单工作簿中的供应商数据,并从模板复制供应商数据工作表。

  • 更新内部修订号。 (这实际上可能是存储在供应商数据工作表上的值。)

  • 关闭模板,因为此时不再需要它。

  • 保存采购订单工作簿。

如果要实施第二种策略,则仍然需要依赖一些宏。它们可能包括以下步骤:

  • 创建在打开PO工作簿时运行的自动打开宏。它确定供应商数据工作簿是否打开,以确保其数据可用。

  • 如果供应商数据工作簿不可用,则显示一条消息,告知用户事实,并拒绝进一步操作。 (一个好主意是由于无法获得必需的数据而直接关闭PO工作簿。)

在第二种情况下,您只需确保将供应商数据工作簿所在的文件夹存储在XLStart文件夹中。 (启动Excel时,该文件夹中的所有内容都会自动加载。)当然,如果要在多个系统上运行该文件,则需要弄清楚如何将供应商数据工作簿放入每个系统的XLStart文件夹中。 。再说一次,这是可以做到的,但这只是意味着要进行更多的检查并弄清楚应该怎样做才能做到这一点。

无论选择哪种方法,都将需要针对您的计算环境和业务需求进行一些繁重的计划,并花费一些专门的开发时间。

但是,在某个时候,您将不得不面对一个事实,即Excel可能不是管理PO的最佳工具。购买某些专业软件或开发自己的软件(取决于集中式数据库)可能会更好,也可能会花费很多时间和金钱。尽管可以将Excel用作数据库,但它不能替代专用数据库软件(例如Access,Oracle甚至MySQL)。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(13760)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。