【问题标题】:Insert multiple rows into a single table from a textbox form - Access 2010从文本框表单中将多行插入到单个表中 - Access 2010
【发布时间】:2015-04-01 08:26:15
【问题描述】:

我有一个带有单个字段(定义为数字)的表格,我想在表格中从文本框中插入多行。代码是:

Private Sub CmdImportID_Click()

Dim strSQL As String

  strSQL = "DELETE * FROM [Con_ID futcanc BAMB]"  
  DoCmd.RunSQL strSQL

  strSQL = "INSERT INTO [Con_ID futcanc BAMB] (con_id) VALUES (" & Me!conID & ");"   
  DoCmd.RunSQL strSQL    
 End Sub

问题是:它适用于文本框中的单个数字,但是当我尝试插入多个数字时,我收到“运行时错误'3075':查询表达式中的语法错误(缺少运算符)”。 如何修改代码以插入更多数据?抱歉,我对 vba 编码不是很熟练 :(

提前谢谢你。

【问题讨论】:

  • (" & >Me!conID & ") 中的 ">" 字符是一个错误,代码没有它..

标签: sql database vba


【解决方案1】:

您编写的代码用于单行插入,它只会运行一次。如果 Textbox 中的数字存在分隔符,则通过使用分隔符拆分 Text 并在 DB 中作为单独的行插入来循环遍历每个数字。

一般

INSERT INTO [Con_ID futcanc BAMB] (con_id) VALUES (1)

将只插入一行并且

INSERT INTO [Con_ID futcanc BAMB] (con_id) VALUES (1,2) 是无效语句。

编辑:

请参阅以下链接了解拆分和循环代码逻辑

Split and Loop

【讨论】:

  • 好的,谢谢!以及如何修改多行的代码?
  • 参考编辑答案
猜你喜欢
  • 1970-01-01
  • 2013-01-02
  • 1970-01-01
  • 1970-01-01
  • 2013-07-30
  • 1970-01-01
  • 2014-10-19
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多