Yo tengo una pequeña funcion que comprueba si existe la tabla y si la
comprobacion es negativa genera la tabla
' Esto para comprobar si existe
Function MirarDbf(LaTabla As String) As Integer
Dim Resultado%, Tabla As Recordset
Resultadi% = True
On Error GoTo HayError
Set Tabla = MidB.OpenRecordset(LaTabla, dbOpenTable)
On Error Resume Next
Tabla.Close
MirarDbf = Resultado%
Exit Function
HayError:
Resultado% = False
Resume Next
End Function
' Y ahora para generar la tabla
' Variables generales
Dim T As Integer, ElMeuCamp As Field
' Definir les variables per crear la tabla
Dim AvioTb As TableDef, AvioFld(19) As Field, AvioIdx As Index '
Avions
' Comprobar si existe
If MirarDbf("DCH001") = False Then
Label3.Caption = Texte2 & "DCH001"
Set AvioTb = MidB.CreateTableDef("DCH001")
Set AvioFld(0) = AvioTb.CreateField("DCH00101", dbText, NuCar)
Set AvioFld(1) = AvioTb.CreateField("DCH00102", dbText, 10)
Set AvioFld(2) = AvioTb.CreateField("DCH00103", dbBoolean)
Set AvioFld(3) = AvioTb.CreateField("DCH00104", dbText, 5)
Set AvioFld(4) = AvioTb.CreateField("DCH00105", dbText, 5)
Set AvioFld(5) = AvioTb.CreateField("DCH00106", dbText, 10)
Set AvioFld(6) = AvioTb.CreateField("DCH00107", dbText, 10)
Set AvioFld(7) = AvioTb.CreateField("DCH00108", dbText, 10)
Set AvioFld(8) = AvioTb.CreateField("DCH00109", dbText, 10)
Set AvioFld(9) = AvioTb.CreateField("DCH00110", dbBoolean)
Set AvioFld(10) = AvioTb.CreateField("DCH00111", dbText, 40)
Set AvioFld(11) = AvioTb.CreateField("DCH00112", dbText, 10)
Set AvioFld(12) = AvioTb.CreateField("DCH00113", dbText, 25)
Set AvioFld(13) = AvioTb.CreateField("DCH00114", dbText, 25)
Set AvioFld(14) = AvioTb.CreateField("DCH00115", dbText, 25)
Set AvioFld(15) = AvioTb.CreateField("DCH00116", dbDate)
Set AvioFld(16) = AvioTb.CreateField("DCH00117", dbText, 25)
Set AvioFld(17) = AvioTb.CreateField("DCH00118", dbText, 25)
Set AvioFld(18) = AvioTb.CreateField("DCH00119", dbText, 10)
For T = 0 To 18
AvioTb.Fields.Append AvioFld(T)
Next T
LaMevadB.TableDefs.Append AvioTb
Set AvioIdx = AvioTb.CreateIndex("DCHI0101")
Set ElMeuCamp = AvioIdx.CreateField("DCH00101")
AvioIdx.Primary = True
AvioIdx.Unique = True
AvioIdx.Fields.Append ElMeuCamp
AvioTb.Indexes.Append AvioIdx
End If
espero que te sirva, si tienes alguna duda ponte en contacte conmigo
mailto:rdalmau@mx2.redestb.es
Un saludo
Victor Aguayo escribió:
> Hola amigos!!!
> Como puedo crear una tabla access 7 con codigo visual basic.
> Gracias por sus respuestas
> Saludos