我想将一个字段属性附加到多个新创建的字段,如下所示:
Set Robo0 = RoboCallDB.CreateProperty("Format", dbText, "0")
With RoboCallDB.TableDefs(sTableName)
.Fields("Account").Properties.Append Robo0
.Fields("ServAddrPhone").Properties.Append Robo0
.Fields("CustWorkPhone").Properties.Append Robo0
.Fields("SpouseWorkPhone").Properties.Append Robo0
End With
但代码在第一次追加后停止并给出运行时错误3367.(“无法追加。集合中已存在具有该名称的对象。”)
我最终这样做了:
RoboCallDB.TableDefs(sTableName).Fields("Account").Properties.Append & _
RoboCallDB.CreateProperty("Format", dbText, "0")
RoboCallDB.TableDefs(sTableName).Fields("ServAddrPhone").Properties.Append & _
RoboCallDB.CreateProperty("Format", dbText, "0")
RoboCallDB.TableDefs(sTableName).Fields("CustWorkPhone").Properties.Append & _
RoboCallDB.CreateProperty("Format", dbText, "0")
RoboCallDB.TableDefs(sTableName).Fields("SpouseWorkPhone").Properties.Append & _
RoboCallDB.CreateProperty("Format", dbText, "0")
有人能够解释为什么第一个代码段不起作用,以及是否有比使用第二个代码段更优雅的方式?提前谢谢!
答案 0 :(得分:0)
我认为在第一个版本中,您尝试将相同的属性实例添加到多个字段中,这是不可能的。
在第二个代码示例中,您将为每个字段添加一个新实例
换句话说,您为每个字段创建一个属性,而不是尝试将同一属性分配给多个字段。