访问宏不起作用?

发布于 2024-11-25 04:26:43 字数 447 浏览 4 评论 0原文

我在模块中创建了一个函数:

Public Function createTable()
    Dim db As Database
    Dim tdf As TableDef
    Dim fld As Field

    Set db = CurrentDb()
    Set tdf = db.CreateTableDef("161-0363")

    Set fld = tdf.CreateField("SKUS", dbText, 30)
    tdf.Fields.Append fld

    Set fld = tdf.CreateField("Count", dbInteger)
    tdf.Fields.Append fld
End Function

然后使用“RunCode”在宏中调用该函数。但是当我运行宏时没有创建表? 有人可以帮我吗?

谢谢!

I created a function in a module:

Public Function createTable()
    Dim db As Database
    Dim tdf As TableDef
    Dim fld As Field

    Set db = CurrentDb()
    Set tdf = db.CreateTableDef("161-0363")

    Set fld = tdf.CreateField("SKUS", dbText, 30)
    tdf.Fields.Append fld

    Set fld = tdf.CreateField("Count", dbInteger)
    tdf.Fields.Append fld
End Function

Then called this function in a macro using "RunCode". But no table is created when I run the macro?
Can anyone help me out?

Thanks!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

清泪尽 2024-12-02 04:26:43

在您的宏设计视图中,您应该显示 RunCode,然后在您的 Function Name 中应该显示 createTable()

该代码是否创建一个表如果你在没有宏的情况下运行它?

编辑:
将您的代码更新为此然后运行您的宏

Public Function createTable()
   Dim db As DAO.Database
    Dim tdf As DAO.TableDef
    Dim fld As Field

    Set db = CurrentDb()
    Set tdf = db.CreateTableDef("161-0363")

    Set fld = tdf.CreateField("SKUS", dbText, 30)
    tdf.Fields.Append fld

    Set fld = tdf.CreateField("Count", dbInteger)
    tdf.Fields.Append fld

    db.TableDefs.Append tdf
    db.TableDefs.Refresh
End Function

我刚刚测试了上面的代码并创建了表格。您需要添加最后几行代码才能使其正常工作。

On your Macro Design View, you should have it say RunCode, then in your Function Name it should say createTable()

Does the code create a table if you run it without a macro?

EDIT:
Update your code to this then run your macro

Public Function createTable()
   Dim db As DAO.Database
    Dim tdf As DAO.TableDef
    Dim fld As Field

    Set db = CurrentDb()
    Set tdf = db.CreateTableDef("161-0363")

    Set fld = tdf.CreateField("SKUS", dbText, 30)
    tdf.Fields.Append fld

    Set fld = tdf.CreateField("Count", dbInteger)
    tdf.Fields.Append fld

    db.TableDefs.Append tdf
    db.TableDefs.Refresh
End Function

I just tested the above code and it created the table. You needed to add the last lines of code to get it to work.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文