分割データベースがあります。フロントエンドを試してみると、パスワードでバックエンドを暗号化するまで、VBAを使用してリンクされたバックエンドのテーブルにフィールドを追加することができました。
バックエンドを手動で復号化せずに、フロントエンドでVBAを使用して、バックエンドのテーブルにフィールドを追加することは可能ですか?
返信ありがとうございます。
そのはず。これらのメモを試してください:
Sub AlterDB()
Dim db As DAO.Database
Dim sDB As String
Dim tdf As TableDef
Dim fld As Field
''Encrypted
sDB = "Z:\Docs\Test.enc"
''http://msdn.microsoft.com/en-us/library/office/ff193474.aspx
''Password is case sensitive
Set db = OpenDatabase(sDB, False, False, "MS Access;PWD=pW")
''Option with tabledef
''The table is currently closed
Set tdf = db.TableDefs("table1")
Set fld = tdf.CreateField("NewField", dbText, 20)
tdf.Fields.Append fld
''Option with DDL
ssql = "ALTER TABLE table1 ADD COLUMN AnotherNew Int"
db.Execute ssql, dbFailOnError
End Sub
Sub ListFields()
sDB = "Z:\Docs\Test.enc"
Set db = OpenDatabase(sDB, False, False, "MS Access;PWD=FB")
Set tdf = db.TableDefs("table1")
For Each f In tdf.Fields
Debug.Print f.Name
Next
End Sub