'Este codigo sirve para crear una tabla en la MDB de datos 'ejcutando este codigo en la MDB de formularios 'Ademas una vez creada la tabla lejana, se linka a esta MDB que corre el codigo Sub CreaTabla() Dim cadSQL As String Dim BaseDatos As DAO.Database Set BaseDatos = OpenDatabase(RutaVinculacion) Dim Tabla As DAO.TableDef cadSQL = "CREATE TABLE UnaTabla " _ & "(IdCliente COUNTER PRIMARY KEY," _ & "[Nombre] TEXT(25) NOT NULL, " _ & "[Apellidos] TEXT(50) NOT NULL, " _ & "Direccion TEXT(100), " _ & "Poblacion TEXT(50), " _ & "CodPostal TEXT(5), " _ & "Pais TEXT(50), " _ & "Telefono TEXT(20), " _ & "Email TEXT(50))" BaseDatos.Execute cadSQL Set Tabla = CurrentDb.CreateTableDef("UnaTabla") Tabla.Connect = ";DATABASE=" & RutaVinculacion '& ";PWD=20203959" Tabla.SourceTableName = "UnaTabla" CurrentDb.TableDefs.Append Tabla BaseDatos.Close Set BaseDatos = Nothing End Sub Function RutaVinculacion() As String On Error GoTo Err_Comando7_Click Dim DbEx As Database 'Declaramos DB como Base Dim strNombreTabla As String Dim strRuta As String Dim intX As Integer Dim pstrRutaDBActuAl As String pstrRutaDBActuAl = CodeDb.Name 'Conocer la ruta completa de la base de datos vinculada. Set DbEx = OpenDatabase(CodeDb.Name) 'Buscar las tablas, no seleccionando las tablas del sistema For intX = 0 To DbEx.TableDefs.Count - 1 'desde 0 If Left(DbEx.TableDefs(intX).Name, 4) <> "MSys" Then 'Comprobar si el atributo de la tabla es Vinculada. If (DbEx.TableDefs(intX).Attributes And dbAttachedTable) Or (DbEx.TableDefs(intX).Attributes And dbAttachedODBC) Then 'Asignar el nombre de la tabla. strNombreTabla = DbEx.TableDefs(intX).Name 'Asignar el nombre de la ruta donde esta la tabla vinculada. strRuta = DbEx.TableDefs(strNombreTabla).Connect 'Quitar ;DATABASE= strRuta = Mid(strRuta, 11, Len(strRuta)) 'si hemos entrado aquí es que ya tenemos la ruta de las tablas 'vinculadas. Muestro el mensaje correspondiente.- RutaVinculacion = strRuta 'cierro la base de datos y abandono DbEx.Close Set DbEx = Nothing Exit Function End If End If Next intX RutaVinculacion = "C:\TWPAC\DATOS.MDB" DbEx.Close 'Cerrar la Base de datos Set DbEx = Nothing Exit_Comando7_Click: Exit Function Err_Comando7_Click: MsgBox "Se ha producido el Error Nº: " & Err.Number & " ." & Err.Description, vbCritical + vbOKOnly, "Error de Datos" Resume Exit_Comando7_Click End Function