我有一个启用宏的表单,旨在允许数据录入人员团队按交易号记录他们的日常工作。随着形式的发展,这是非常基本的。但是,我需要为一个按钮编写一个宏,让每个人在轮班结束时将他们的记录提交给主表。我需要复制范围数据并粘贴到主工作簿,并将人名和日期添加到各行中。
我不确定如何方便复制和粘贴到已关闭的工作簿,或者如何防止多个人同时提交到表单的问题。有人可以提出任何建议吗?
答案 0 :(得分:1)
让它更新数据库,然后在一天结束时生成报告。我还建议每次用户输入记录时插入数据库,这样在断电的情况下,他们当天的所有工作都不会丢失。这可能会减少并发问题的数量,因为用户将同时定期添加记录而不是许多记录。搜索“VBA DAO”或“VBA ADODB”以查找有关如何使用VBA连接数据库的示例。
答案 1 :(得分:0)
添加对“Microsoft Scripting Runtime”的引用以访问文件系统,然后使用简单文件信号量来控制对公共工作簿的访问。
关于已关闭的工作簿,您使用Application.Workbooks.Open(...)和.Close
答案 2 :(得分:0)
只需打开工作簿,插入然后关闭工作簿即可完成此操作。没有简单的方法可以插入已关闭的工作簿。请注意,如果您试图向用户隐藏内容,则可以隐藏内容。
答案 3 :(得分:0)
主要选择是将项目发送到数据库。由于已经排除了这一点,我建议你将数据写入一个普通的.csv文件。这将更容易实现,并且不受excel行限制的限制。