Я хотел бы добавить одно свойство поля к нескольким вновь создаваемым полям, например:
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")
Может ли кто-нибудь объяснить, почему первый фрагмент не работает и есть ли более элегантный способ, чем использование второго фрагмента? Заранее спасибо!