|
我想通过vba代码,用附件中的原表.xls里的数据创建一个access数据库data.mdb,并为该数据库添加可读写的用户名admin,密码1234。
然后另外一段代码可以把“添加新数据.xls”的数据添加到该数据库。
请问各位大哥老师,这个可以通过vba代码实现吗?该怎么做啊
谢谢
- Sub 创建()
- Dim Sql As String, mdbNa As String, mdbStr As String
- Dim xlsNa As String, xlsStr As String, Pw As String
- Dim Ca As Object, Cnn As Object
- Set Ca = CreateObject("adox.catalog")
- Set Cnn = CreateObject("adodb.connection")
- Pw = "1234"
- mdbNa = ThisWorkbook.Path & "\data.mdb"
- xlsNa = ThisWorkbook.Path & "\原表.xls"
- mdbStr = "Provider=Microsoft.jet.OLEDB.4.0;Jet OLEDB:Database password=" & Pw & ";Data Source="
- xlsStr = "[excel 8.0;database=" & xlsNa & "].[data$]"
-
- If Len(Dir(mdbNa)) Then '如果表已存在则删除
- Kill mdbNa
- End If
-
- Ca.Create mdbStr & mdbNa
- Cnn.Open mdbStr & mdbNa
- Sql = "select * into [data] from " & xlsStr
- Cnn.Execute (Sql)
-
- Ca.ActiveConnection.Close
- Cnn.Close
- Set Cnn = Nothing
- Set Ca = Nothing
- End Sub
复制代码- Sub 添加()
- Dim Sql As String, mdbNa As String, mdbStr As String
- Dim xlsNa As String, xlsStr As String, Pw As String
- Dim Cnn As Object
-
- Set Cnn = CreateObject("adodb.connection")
- Pw = "1234"
- mdbNa = ThisWorkbook.Path & "\data.mdb"
- xlsNa = ThisWorkbook.Path & "\添加新数据.xls"
- mdbStr = "Provider=Microsoft.jet.OLEDB.4.0;Jet OLEDB:Database password=" & Pw & ";Data Source="
- xlsStr = "[excel 8.0;database=" & xlsNa & "].[Sheet1$]"
-
- Cnn.Open mdbStr & mdbNa
- Sql = "insert into [data] select * from " & xlsStr
- Cnn.Execute (Sql)
-
- Cnn.Close
- Set Cnn = Nothing
- End Sub
复制代码
|
|