怎样简单的实现自动更新两个不同Excel文件中的数据呢?
时间: 2024-02-25 14:51:30 浏览: 377
如何在WINCC中基于VBS实现对EXCEL文件中数据的读写?.docx
4星 · 用户满意度95%
可以通过以下步骤简单实现自动更新两个不同 Excel 文件中的数据:
1. 创建一个新的 Excel 文件,用于更新数据;
2. 在该文件中打开需要更新数据的两个 Excel 文件,并获取需要更新的数据范围;
3. 将需要更新的数据从一个文件中复制到另一个文件中;
4. 关闭两个数据文件,保存更新后的数据文件;
5. 设置一个定时器,每隔一定时间自动执行更新操作。
下面是一个示例代码,演示了如何实现自动更新两个不同 Excel 文件中的数据:
```VBA
Sub UpdateData()
Dim sourceFilePath As String
Dim targetFilePath As String
sourceFilePath = "C:\Users\User\Documents\SourceData.xlsx" ' 修改为源数据文件路径
targetFilePath = "C:\Users\User\Documents\TargetData.xlsx" ' 修改为目标数据文件路径
Dim sourceWorkbook As Workbook
Dim targetWorkbook As Workbook
Set sourceWorkbook = Workbooks.Open(sourceFilePath)
Set targetWorkbook = Workbooks.Open(targetFilePath)
Dim sourceDataRange As Range
Dim targetDataRange As Range
Set sourceDataRange = sourceWorkbook.Worksheets("Sheet1").Range("A1:B5") ' 修改为源数据范围
Set targetDataRange = targetWorkbook.Worksheets("Sheet1").Range("A1:B5") ' 修改为目标数据范围
targetDataRange.Value = sourceDataRange.Value ' 将源数据复制到目标数据中
sourceWorkbook.Close SaveChanges:=False ' 关闭源数据文件,不保存修改
targetWorkbook.Close SaveChanges:=True ' 关闭目标数据文件,保存修改
Application.OnTime Now + TimeValue("00:00:10"), "UpdateData" ' 每隔 10 秒钟重新检查更新
End Sub
```
需要注意的是,该代码中的数据文件路径、工作表名称和数据范围需要根据实际情况进行修改。另外,在使用时需要将 VBA 宏设置为启用状态。
阅读全文