Ver Mensaje Individual
  #4 (permalink)  
Antiguo 07/02/2008, 11:25
Avellaneda
Colaborador
 
Fecha de Ingreso: enero-2008
Ubicación: Unas veces aquí, otras veces allí
Mensajes: 1.482
Antigüedad: 16 años, 3 meses
Puntos: 37
Re: visualbasic6.0 y acces2003

Te coloco el ejemplo

Nota: tienes que marcar la referencia "Microsoft Access xx.x Object Library"

Código:
Dim sDBTmp As String, NombreMdb As String
Dim oAccess As New Access.Application

NombreMdb = App.Path & "\bd1.mdb"
sDBTmp = "DBTmp.mdb"
' si ya existe el archivo temporal lo eliminamos
If Len(Dir$(sDBTmp)) Then Kill sDBTmp
sDBTmp = App.Path & "\" & sDBTmp
' cerramos la conexión para poder compactar
If cn.State = 1 Then cn.Close
oAccess.CompactRepair NombreMdb, sDBTmp
' Eliminamos la DB original
Kill NombreMdb
' y renombramos la compactada
Name sDBTmp As NombreMdb
' abrimos de nuevo la dbcn.Open "Provider=Microsoft.jet.OLEDB.4.0;Data Source=" & App.Path & "\bd1.mdb"
En azul los datos que tienes que sustituir