|
本帖最后由 咩咩神 于 2018-8-30 14:39 编辑
实际想法 我把前端的数据做完了 需要把前端的指定工作表内容完全复制并覆盖到后端的excel相同名称的工作表,应该如何操作 已经卡了2天了
macro1模块第一次使用时没问题,第二次使用需要手工打开"备份上传"工作簿再保存关闭,否则报错,而且会打开一个只读的"数据"工作簿
ss模块因为我想把备份上传放在局域网的共享文件夹内,所以Jet.Oledb.4.0不支持xlsm(数据库格式是xlsm,里面涉及到打开工作表就清空空白行),用下面的方法又会报错 求教
- Sub Macro1()
- ''''macro1模块第一次使用时没问题,第二次使用需要手工打开"备份上传"工作簿再保存关闭,否则报错,而且会打开一个只读的"数据"工作簿
- Dim cnn As Object, SQL$
- Set cnn = CreateObject("ADODB.Connection")
- cnn.Open "Provider = Microsoft.Jet.Oledb.4.0;Extended Properties =Excel 8.0;Data Source =" & ThisWorkbook.Path & "\备份上传.xls"
- SQL = "update [长大王订单池$] set 订单号=null,业务员=null,品名=null,客户名首字缩写=null"
- cnn.Execute SQL
- SQL = "insert into [长大王订单池$] select * from [Excel 8.0;Database=" & ThisWorkbook.FullName & "].[长大王订单池$]"
- cnn.Execute SQL
- MsgBox "数据已经添加到数据库!", vbInformation, "添加数据"
- cnn.Close
- Set cnn = Nothing
- End Sub
- Sub ss()
- '''ss模块因为我想把备份上传放在局域网的共享文件夹内,所以Jet.Oledb.4.0不支持xlsm(数据库格式是xlsm,里面涉及到打开工作表就清空空白行),用下面的方法又会报错 求教
- Set conn = CreateObject("ADODB.Connection")
- conn.Open "Provider = Microsoft.ACE.OLEDB.12.0;extended properties=""excel 12.0;HDR=NO;IMEX=1"";Data Source=" & ThisWorkbook.Path & "\备份上传.xls"
- SQL = "update [长大王订单池$] set 订单号=null,业务员=null,品名=null,客户名首字缩写=null"
- conn.Execute SQL
- SQL = "insert into [长大王订单池$] select * from [Excel 8.0;Database=" & mypath & "].[长大王订单池$"
- conn.Execute SQL
- MsgBox "数据已经添加到数据库!", vbInformation, "添加数据"
- conn.Close
- Set conn = Nothing
- End Sub
- ''''''实际想法 我把前端的数据做完了 需要把前端的指定工作表内容完全复制并覆盖到后端的excel相同名称的工作表,应该如何操作 已经卡了2天了
复制代码
|
|