Vincular bases de datos al .mde

Encontré este ejemplo googleando porque necesito poder revincular las tablas de mi aplicación access con las distintas bases de datos, por años, ya que tengo las tablas ocultas para que no sean copiadas y no me sirve borrarlas y volverlas a vincular.

Este código lo hace pero por defecto solo se enlaza y revincula si las bases de datos y la aplicación estás en mis documentos, disco C:\ y necestito que se haga estando las bases y el .mde en D:\, si me pudieran ayudar

Private Sub Form_Load()
Dim strBaseDatos As String

Me.lstAños.RowSource = ""

' establezco el directorio activo
ChDir CurrentProject.Path & "\"
' recorro en un bucle las bases de datos "*Datos*" del directorio
strBaseDatos = Dir("*.mdb")
Do While Not strBaseDatos = ""
' selecciono los archivos que cumplan las condiciones necesarias
If InStr(strBaseDatos, "BD") <> 0 And InStr(strBaseDatos, "Datos") <> 0 Then
' inserto en el cuadro combinado los años y correspondientes bases de datos (en columna oculta)
Me.lstAños.AddItem "Año " & Mid(strBaseDatos, InStr(strBaseDatos, ".") - 4, 4) & ";" & strBaseDatos
End If
strBaseDatos = Dir
Loop

' selecciono el año actualmente vinculado, para ello lo extraigo de la actual ruta
strBaseDatos = CurrentDb.TableDefs(0).Connect
Me.lstAños = "Año " & Mid(strBaseDatos, InStr(strBaseDatos, ".") - 4, 4)

'AjustarTamaño Me

'DoCmd.OpenForm "frmINFO", , , , , acDialog
End Sub ' Form_Load

Private Sub lstAños_AfterUpdate()
' al seleccionar el año, revinculo las tablas.
ReVinculaTablas Me.lstAños.Column(1)
End Sub ' lstAños_AfterUpdate

1 respuesta

Respuesta
1

Modifiquela línea donde se establece el directorio activo para que sea la unidad D:\ en lugar del directorio actual:

ChDir "D:\"

Actualice la línea donde se busca y recorre las bases de datos para que busque en la unidad D:\ en lugar del directorio actual:

strBaseDatos = Dir("D:\*.mdb")

Con estos cambios, el código buscará y vinculará las bases de datos en la unidad D:\ en lugar de C:\ o Mis documentos.

Es importante asegurarse de que las bases de datos estén ubicadas en la ruta y con los nombres esperados para que puedan ser vinculadas correctamente.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas