Informazioni: postmaster@valcos47.it

Un database di Access (.accdb) da VBA in Word e aggiungere tabelle con relazioni

utilizzando il motore di database di Access. Ecco un esempio di come potresti farlo:

Sub CreaDatabaseAccess()

Dim accessApp As Object

Dim accessDB As Object

Dim accessTable1 As Object

Dim accessTable2 As Object

Dim accessRelation As Object

' Crea un nuovo oggetto Access.Application

Set accessApp = CreateObject("Access.Application")

accessApp.Visible = True ' Mostra Access

' Crea un nuovo database di Access

Set accessDB =

accessApp.DBEngine.CreateDatabase("C:\Path\To\Your\Database.accdb",

DB_LANG_GENERAL)

' Crea la prima tabella

Set accessTable1 = accessDB.CreateTableDef("Tabella1")

With accessTable1

' Aggiungi campi alla tabella

.Fields.Append .CreateField("ID", DB_LONG)

.Fields.Append .CreateField("Nome", DB_TEXT)

' Imposta la chiave primaria

.Fields("ID").Attributes = DB_AUTOINCR_FIELD

.Fields("Nome").Size = 255 ' Dimensione del campo Nome

End With

' Aggiungi la tabella al database

accessDB.TableDefs.Append accessTable1

' Crea la seconda tabella

Set accessTable2 = accessDB.CreateTableDef("Tabella2")

With accessTable2

' Aggiungi campi alla tabella

.Fields.Append .CreateField("ID", DB_LONG)

.Fields.Append .CreateField("Tabella1_ID", DB_LONG)

.Fields.Append .CreateField("Valore", DB_TEXT)

' Imposta la chiave primaria

.Fields("ID").Attributes = DB_AUTOINCR_FIELD

.Fields("Tabella1_ID").Required = True

.Fields("Valore").Size = 255 ' Dimensione del campo Valore

End With

' Aggiungi la tabella al database

accessDB.TableDefs.Append accessTable2

' Crea una relazione tra le tabelle

Set accessRelation = accessDB.CreateRelation("Relazione1")

With accessRelation

.Table = "Tabella1"

.ForeignTable = "Tabella2"

.Fields.Append .CreateField("ID")

.ForeignFields.Append .CreateField("Tabella1_ID")

End With

' Aggiungi la relazione al database

accessDB.Relations.Append accessRelation

' Chiudi e salva il database di Access

accessDB.Close

accessApp.Quit

' Rilascia le risorse

Set accessRelation = Nothing

Set accessTable2 = Nothing

Set accessTable1 = Nothing

Set accessDB = Nothing

Set accessApp = Nothing

End Sub

Assicurati di modificare il percorso del database di Access

("C:\Path\To\Your\Database.accdb") nel codice in modo che corrisponda al percorso

desiderato sul tuo sistema. Questo codice crea un nuovo database di Access con

due tabelle e una relazione tra di esse. Puoi espandere questo esempio

aggiungendo più campi alle tabelle o creando più relazioni secondo le tue esigenze

specifiche.

INIZIO Chi sono Home
Notifica sui cookie