如何将MySQL中的数据插入/选择到Excel/VBA?
我正在尝试将数据从MySQL提取到Excel。我看了很多教程,但我总是犯同样的错误 这是我的密码:如何将MySQL中的数据插入/选择到Excel/VBA?,mysql,excel,vba,Mysql,Excel,Vba,我正在尝试将数据从MySQL提取到Excel。我看了很多教程,但我总是犯同样的错误 这是我的密码: 副领事馆() Dim conn作为新的ADODB连接 Dim服务器名称为字符串 Dim数据库名称为字符串 将用户id设置为字符串 将密码设置为字符串 我想我会坚持多久 作为字符串的Dim sqlstr 将表1变暗为字符串,将表2变暗为字符串 Dim字段1作为字符串,字段2作为字符串 将rs设置为ADODB.Recordset Dim vtype作为变体 服务器名称=“本地主机” 数据库\u nam
副领事馆()
Dim conn作为新的ADODB连接
Dim服务器名称为字符串
Dim数据库名称为字符串
将用户id设置为字符串
将密码设置为字符串
我想我会坚持多久
作为字符串的Dim sqlstr
将表1变暗为字符串,将表2变暗为字符串
Dim字段1作为字符串,字段2作为字符串
将rs设置为ADODB.Recordset
Dim vtype作为变体
服务器名称=“本地主机”
数据库\u name=“controle\u fin”
用户\u id=“root”
password=“userpassword”
Set conn=新的ADODB.连接
连接打开“驱动程序={MySQL ODBC 3.51驱动程序}”_
&“SERVER=”服务器名称(&U)_
&“DATABASE=“&DATABASE\u名称”_
&“UID=”用户id(&U)_
&“PWD=”&密码_
&“选项=16427”
表1=“classe”
GoTo skipextract
Set rs=New ADODB.Recordset
sqlstr=“选择*自”&表1
rs.开放式sqlstr、conn、adOpenStatic
平面1.范围(“A1”).从记录集复制
skipextract:
出错时继续下一步
rs.Close
设置rs=无
关闭连接
设置连接=无
错误转到0
端接头
我得到的错误:
“ODBC错误。找不到数据源名称,也未指定默认驱动程序”
通常,此错误是由以下原因造成的:
Get OdbcDriver | Format Table name,platform-AutoSize
,以输出类似于以下内容的表格:
name platform
---- --------
Microsoft Access Driver (*.mdb) 32-bit
Microsoft dBase Driver (*.dbf) 32-bit
Microsoft Excel Driver (*.xls) 32-bit
Microsoft ODBC for Oracle 32-bit
SQL Server 32-bit
SQL Server Native Client 11.0 32-bit
ODBC Driver 13 for SQL Server 32-bit
SQL Server 64-bit
Microsoft Access Driver (*.mdb, *.accdb) 64-bit
Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb) 64-bit
Microsoft Access Text Driver (*.txt, *.csv) 64-bit
SQL Server Native Client 11.0 64-bit
PostgreSQL ANSI(x64) 64-bit
PostgreSQL Unicode(x64) 64-bit
ODBC Driver 13 for SQL Server 64-bit
Microsoft Access dBASE Driver (*.dbf, *.ndx, *.mdx) 64-bit
...
chmod
或chown
处理的Windows。对于Windows,在资源管理器中调整文件或文件夹的属性以获得读/写/执行权限您是从mysql转到excel还是viceversa?title说问题的反面是
.open
行上的错误?现在来看,是否需要指定驱动程序?是否确定数据库正在运行?1。不确定“localhost”是否能正确解析。将其替换为127.0.0.1(或您的本地主机ip设置),以便至少进行测试。2.确保已安装MySQL ODBC 3.51。相信您可以通过启动->ODBC连接并点击NEW来快速检查这一点。查看它是否在该列表中。为什么在执行连接和SQL语句之前要执行GoTo skipextract
?这并没有解决OP的问题,只是一个观察。