|
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件 ★ 免费下载 ★ ★ 使用帮助★
SQLite是一个轻量级的数据库,对于单机的用户还是不错的。要在excel VBA里使用SQLite,首先肯定是需要相关的驱动的。熟悉ADO的人应该知道。我也不多说了。首先安装驱动:http://www.ch-werner.de/sqliteodbc/下载。在里面的Current Version(也就是最新的稳定版).注意驱动跟软件版本走。32位的office就下载sqliteodbc.exe,64位的office就下载sqliteodbc_w64.exe。
由于没有gui.我们无法查看数据文件。这样我们还需要一个图形化的界面来看一下数据结果,这里我推荐一下SQLiteSpy.下载地址:https://www.yunqa.de/delphi/products/sqlitespy/index。点击网页右边的Download Win32或者win64版本下载吧。
SQLiteSpy的界面如下:
可以新建SQLite数据库,也可以打开已有的数据库查看数据文件。这对我们使用vba的人就够了。主要是查看vba是否得到想要的数据结果。下面看一下相关代码:
Sub 创建数据库()
Dim conn As New ADODB.Connection '引用ADO
Dim Connstr As String
Connstr = "Driver={SQLite3 ODBC Driver};Database=" & ThisWorkbook.Path & "\用户数据.db"
conn.Open Connstr
conn.Close
End Sub
上面的代码会打开用”户数据”这个数据库文件,如果不存在会在这个路径上创建一个同名文件。
下面的代码用于在数据库文件里创建一个表。
Sub 创建表()
Dim conn As New ADODB.Connection '引用ADO
Dim Connstr As String
Connstr = "Driver={SQLite3 ODBC Driver};Database=" & ThisWorkbook.Path & "\用户数据.db"
conn.Open Connstr
conn.Execute "Create table 用户清单(用户编号,用户姓名,用户地址,联系电话)" '在用户数据库文件下创建用户清单表,并创建4个字段名
conn.Close
End Sub
用SQLiteSpy查看效果如下图:
下面的代码是插入excel数据到清单数据表。
Sub 更新数据到DB()
Dim conn As New ADODB.Connection '引用ADO
Dim Connstr As String
Connstr = "Driver={SQLite3 ODBC Driver};Database=" & ThisWorkbook.Path & "\用户数据.db"
conn.Open Connstr
conn.Execute "Create table 用户清单(ID,NAME,AGE,ADDRESS,SALARY)" '在用户数据库文件下创建用户清单表,并创建5个字段名,如果表已存在会报错
arr = [A1].CurrentRegion
For i = 2 To UBound(arr)
conn.Execute "Insert into 用户清单 values('" & Join(Application.Rept(Application.Index(arr, i, 0), 1), "','") & "')"
Next
conn.Close
End Sub
运行结果如下图:
|
评分
-
6
查看全部评分
-
|