Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
应用程序将Excel工作表连接到Access_Excel_Ms Access_Vba - Fatal编程技术网

应用程序将Excel工作表连接到Access

应用程序将Excel工作表连接到Access,excel,ms-access,vba,Excel,Ms Access,Vba,我被困在下面提到的情况指导我。我有一个用excel制作的用户表单。我可以尝试执行已完成插入的crud。我可以尝试更新或删除不工作,请给我一些想法。 这是我的插入代码,它工作正常 插入:- 私有子命令按钮1_单击() 将cn作为对象 作为字符串的Dim strQuery 将名称设置为字符串 朦胧的城市 将myDB设置为字符串 暗淡无光 将ws设置为工作表 设置ws=工作表(“表1”) '初始化变量 Name=Me.TextBox1.Value 城市=Me.TextBox2.Value Dept=M

我被困在下面提到的情况指导我。我有一个用excel制作的用户表单。我可以尝试执行已完成插入的crud。我可以尝试更新或删除不工作,请给我一些想法。 这是我的插入代码,它工作正常

插入:-
私有子命令按钮1_单击()
将cn作为对象
作为字符串的Dim strQuery
将名称设置为字符串
朦胧的城市
将myDB设置为字符串
暗淡无光
将ws设置为工作表
设置ws=工作表(“表1”)
'初始化变量
Name=Me.TextBox1.Value
城市=Me.TextBox2.Value
Dept=Me.ComboBox1.Value
myDB=“C:\Users\abc\Desktop\nis\ni2\em.accdb”
'Set cn=CreateObject(“ADODB.Connection”)
与cn
.Provider=“Microsoft.ACE.OLEDB.12.0”用于*.ACCDB数据库
.ConnectionString=myDB
打开
MsgBox“con已创建”
以
strQuery=“插入emp([名称],[城市],[部门]”&_
“值(”“&Name&”“,”“&City&”“,”“&Dept&”“)”
MsgBox“成功完全插入”
cn.执行strQuery
cn.Close
设置cn=Nothing
Me.TextBox1.Value=“”
Me.TextBox2.Value=“”
Me.ComboBox1.Value=“”
端接头
更新代码:-
将cn作为对象
作为字符串的Dim strQuery
将名称设置为字符串
朦胧的城市
将myDB设置为字符串
暗淡无光
将ws设置为工作表
设置ws=工作表(“表1”)
'初始化变量
'Name=Me.TextBox1.Value
'City=Me.TextBox2.Value
'Dept=Me.ComboBox1.Value
myDB=“C:\Users\abc\Desktop\nis\ni2\em.accdb”
'Set cn=CreateObject(“ADODB.Connection”)
与cn
.Provider=“Microsoft.ACE.OLEDB.12.0”用于*.ACCDB数据库
.ConnectionString=myDB
打开
MsgBox“con已创建”
以
strQuery=“Update emp Set[Name]=”&Me.TextBox1.Value&“,”&[City]=”&TextBox2.Value&“,&[Dept]=”&Me.ComboBox1.Value&“”
MsgBox“成功完全插入”
cn.执行strQuery
cn.Close
设置cn=Nothing
Me.TextBox1.Value=“”
Me.TextBox2.Value=“”
Me.ComboBox1.Value=“”
端接头
你的线路

  strQuery = "Update emp Set  [Name]='" & Me.TextBox1.Value & "',"&[City]='" & TextBox2.Value & "',&[Dept]='" & Me.ComboBox1.Value & "'"
正在尝试使用这些值更新emp表中的所有行。我怀疑您只想更新一行。您需要添加WHERE子句来指定哪一行

编辑:刚刚注意到那一行也有语法错误。应该是

 strQuery = "Update emp Set [Name]='" & Me.TextBox1.Value & "', [City]='" & TextBox2.Value & "',[Dept]='" & Me.ComboBox1.Value & "' Where "
然后应该用where子句完成“不工作”不是问题描述。请阅读。