问题描述
简述:
有2份文件,分别是Summary.xlsm和Output.MDB。需要在Summary.xlsm写个VBA。内容是:
提取全部Summary.xlsm中sheet的名称,如果sheet的名称,在Output.MDB中找到资料表的名称是字符串"Fruit - "加上对应sheet名称,它们两个内容是不一样的,则输出弹窗(所有sheet的名称),如果一致则输出弹窗(“Well Done!”)。
代码描述
- 循环遍历
Summary.xlsm
中的所有工作表。 - 对于每个工作表,构造
Output.MDB
中的表名(即"Fruit - "
加上工作表名称)。 - 打开
Output.MDB
数据库,检查表是否存在,并对其进行比较。比较内容是sheet中第三行开始,A-G列的全部有值单元格和Access中的资料表对应单元格。 - 如果存在任何不一致,记录下来并最后显示一个包含所有不一致名称的弹窗。
- 如果全部一致,则显示弹窗,显示
"Well Done!"
。
Sub CompareSheetsWithDatabaseTables()
Dim ws As Worksheet
Dim sheetName As String
Dim tableName As String
Dim conn As Object
Dim rst As Object
Dim sql As String
Dim col As Integer
Dim row As Integer
Dim excelValue As String
Dim dbValue As String
Dim isWellDone As Boolean