问题描述:初次尝试使用VBA去操作Access数据库,执行 INSERT 操作的时候,发生了“运行时错误'-2147217900(80040e14):自动化(Automation)错误”异常。
Sub 连接()
Dim con As ADODB.Connection '声明对象变量
Set con = New ADODB.Connection '创建对象变量
Dim sql As String
'建立数据库连接
'con.Open "provider=microsoft.ace.oledb.12.0;data source =" & ThisWorkbook.Path & "\test.accdb" '连接access数据库
'以下写法等效于 con.Open
With con
.Provider = "microsoft.ace.oledb.12.0"
.ConnectionString = ThisWorkbook.Path & "\test.accdb"
.Open
End With
MsgBox "连接成功"
sql = "insert into check(code,year,month,day) values ('1','2022','1','1')"
'sql = "insert into m_check(m_code,m_year,m_month,m_day) values (3,2022,1,1)"
con.Execute (sql)
con.Close '关闭连接
Set con = Nothing '释放变量
End Sub
解决过程:
1.在Access SQL 查询分析器执行以下SQL,结果类似如图2所示是通过的。但是VBA运行仍然不通过
SQL insert into check(code,year,month,day) values ('1','2022','1','1')
2.考虑是不是因为使用了 code 、year 、month 、day 等字段所引起的,所以将这几个字段更改成了 m_code、m_year、m_month、m_day。问题还是存在。
3.检查字段名前后有无空格
4.参考许多案例,发现值是为数字的时候,不需要加 ''(单引号)。【字段类型设置是短文本类型】,问题解决。如图3成功
sql = "insert into m_check(m_code,m_year,m_month,m_day) values (3,2022,1,1)"
1. 数据库表字段名称不能使用关键字
2.表字段不能使用空格和其他特殊字符
3.排除SQL语法错误
4.值为数字时,不应使用单引号,即使表字段类型是文本类型。
http://cn.voidcc.com/question/p-fowngkyr-qb.html
Lenovo Thinkpad E14系列上GNU / Linux的当前状态
以下存储库提供了有关Lenovo Thinkpad E14系列某些型号的GNU / Linux支持的概述(它也应与E15系列一起使用)。 请注意,本文档基于我们自己的经验,并不代表对这些型号的官方支持。 如果您遵循本指南,则对您的硬件损坏不承担任何责任。 如果您想购买其中一台笔记本电脑,请确保其符合此存储库中指示的相同硬件配置。 请记住,某些设备可能会根据其所属的市场和地区而改变。
如果您想为使Linux在Lenovo Thinkpad E14系列上平稳运行做出贡献,请报告有关如何使设备作为请求请求运行的所有发现! 感谢所有帮助。 另外,请记住共享您的型号ID(虽然不是必须的,但这将有助于我们为每种硬件配置提供更好的文档资料)。
当前的ThinkPad E14型号
最初,我认为该存储库是第一代Lenovo
VBA调用示波器采集时,读取波形数据头,读取数据:
instrument.WriteString ":WAVEFORM:PREamble?" ' Query for the preamble.
Preamble = instrument.ReadList ' Read preamble information and assign to array.
运行时错误 '-214...
本文介绍了几种可以用于获得错误代码消息文本的方法。本文还包含在 Winerror.h 中找到的错误代码和描述的列表。 注意:如果在使用 Visual Basic 中的自动化功能或使用 VBA (Visual Basic for Applications) 时出现错误,则该错误并不总是包括错误消息文本。
请参阅 Winerror.h
How to solve the message "Microsoft Visual Basic: "Automation error: Unspecified error (440)" with MS Office Excel?
It can happen that an export of data to Microsoft Office Excel shows the notificati