小编MBY*_*MBY的帖子

使用VBA向MS Access表添加字段

我需要将计算字段添加到现有表中。我知道有两种方法可以做到这一点,并且我想知道是否有人对最好的方法以及如何使它们起作用具有任何投入:

  1. 使用TableDef.CreateField,然后使用TableDef.Fields.Append
  2. 使用DDL Alter Table ADD COLUMN语句

我尝试使用第一种方法,但是由于Access无法锁定表,因此我一直收到3211错误。我没有打开桌子。但是,我从已访问表中当前存在哪些字段的窗体调用CreateField。

这是调用CreateField的代码:

`
Public Sub AddFieldToTable(strTable As String, strField As String, nFieldType As     Integer)

    Dim db As DAO.Database
    Dim tdf As DAO.TableDef
    Dim fld As DAO.Field

    On Error GoTo ErrorHandler

    Set db = CurrentDb
    Set tdf = db.TableDefs(strTable)
    Set fld = tdf.CreateField(strField, nFieldType)
    tdf.Fields.Append fld

    MsgBox "The field named [" & strField & "] has been added to table [" & strTable & "]."

    Set tdf = Nothing
    Set db = Nothing

    Exit …
Run Code Online (Sandbox Code Playgroud)

ms-access vba

5
推荐指数
1
解决办法
3万
查看次数

标签 统计

ms-access ×1

vba ×1