Ms access 使用vba强制保存表格

Ms access 使用vba强制保存表格,ms-access,vba,ms-access-2007,Ms Access,Vba,Ms Access 2007,所以我有一个奇怪的问题。我需要在新创建的多值查找字段中插入值。唯一的问题是这样的空列没有它的.Value参数。我注意到,打开表格,更改任何内容,然后会强制弹出“您需要保存此表格,诸如此类……”。保存后,即使它仍然是空的(原文如此!)字段中的属性.Value 我需要使用VBA来完成所有这些,我尝试过 DoCmd.Open(“tablename”) DoCmd.Save(“tablename”) 创建后强制保存,但VBA会抱怨语法,即使我发现的每个示例都使用了这些代码行 也许还有另一种方法可以强制显

所以我有一个奇怪的问题。我需要在新创建的多值查找字段中插入值。唯一的问题是这样的空列没有它的
.Value
参数。我注意到,打开表格,更改任何内容,然后会强制弹出“您需要保存此表格,诸如此类……”。保存后,即使它仍然是空的(原文如此!)字段中的属性
.Value

我需要使用VBA来完成所有这些,我尝试过

DoCmd.Open(“tablename”)
DoCmd.Save(“tablename”)

创建后强制保存,但VBA会抱怨语法,即使我发现的每个示例都使用了这些代码行

也许还有另一种方法可以强制显示
.Value
,而不是试图强制保存表?我不懂自动取款机

---- 编辑:
我设法解决了它。我没有使用DAO VBA指令,而是在设计视图中打开表,保存它,然后关闭表

(在本例中)巨大的区别在于在设计视图中打开它,而不是在简单的数据表视图中打开它


在这两个视图中保存表会产生两种不同的结果(使用或不使用.Value属性)。

我不确定您的代码当前是否正在使用DAO;然而,应该是这样。我发现一个用户与您有类似的问题,另一个用户能够帮助他们:

我为您想象的不同之处在于,您希望修改:

.Properties.Append .CreateProperty("RowSourceType", dbText, "Table/Query")
.Properties.Append .CreateProperty("RowSource", dbText, _
                                       "SELECT [Last Name] FROM Employees")


实际上,我使用了完全相同的代码来创建这些字段。我需要使用另一个(链接的)表作为查找源,因为现在的值列表大于3500,并且可以从外部动态更改。通常避免使用多值字段是一种很好的做法。使用
JOIN
表代替。问题是我无法避免它。这些字段位于SharePoint中的链接列表中,因此我无法更改结构
.Properties.Append .CreateProperty("RowSourceType", dbText, "Value List")
.Properties.Append .CreateProperty("RowSource", dbText, _
                                       "Your;Values;Here")