VBA 使用变量表名设置记录
Posted
技术标签:
【中文标题】VBA 使用变量表名设置记录【英文标题】:VBA Set Recordet using a variable table name 【发布时间】:2012-03-06 15:03:06 【问题描述】:我正在尝试从一个调用函数访问表单的记录集克隆,我们使用该函数实质上将记录集中的数据转储到我们正在创建的表中。我试图从 Forms 集合中调用表单,但我不知道如何将表单名称(保存在传递给函数的字符串中)插入到 set 语句的中间。基本上是这样的:
Public Function EditFormData(frmName As String)
Dim strSQL As String
Dim strTableName As String
Dim rst As DAO.Recordset
Dim i As Integer
Set rst = Forms![[[frmName]]].RecordsetClone
我在这里有点茫然。对于这个特定的函数,我可以将记录集传递给函数,但我在另一个地方也有类似的困惑,传递一个不是一种选择。想法?
【问题讨论】:
【参考方案1】:试试这个:
Set rst = Forms(frmName).RecordsetClone
【讨论】:
+1 我一般用表单名,不过也可以传表单本身EditFormData(frm As Form)
好点。那么 set 语句将是:Set rst = frm.RecordsetClone
没错。两者都有效,我觉得自己像个白痴。非常感谢,我会在允许时标记为答案。以上是关于VBA 使用变量表名设置记录的主要内容,如果未能解决你的问题,请参考以下文章