OVH Cloud OVH Cloud

Compacter automatiquement par VBA

2 réponses
Avatar
flomen
Bonjour,
Je suis à la recherche d'un code VBA pour automatiser le compactage d'une
base de données fractionnée
Merci pour votre aide

2 réponses

Avatar
Gilbert
Bonjour,

A partir d'Access 2000 tu peux utiliser l'option 'Compacter à la fermeture'
Sinon dans les archives tu peux trouver ça :
http://groups.google.fr/group/microsoft.public.fr.access/browse_thread/thread/622233d4c93cfe76/7582abd233d5e3aa?lnk=gst&q=compacter+vba&rnum#7582abd233d5e3aa

ou ça
http://groups.google.fr/group/microsoft.public.fr.access/browse_thread/thread/13a16b87e9c2f612/fb5e68902632dc5a?lnk=gst&q=compacter+vba&rnum=2#fb5e68902632dc5a

etc

Gilbert

"flomen" a écrit dans le message de
news:
Bonjour,
Je suis à la recherche d'un code VBA pour automatiser le compactage d'une
base de données fractionnée
Merci pour votre aide


Avatar
Eduardo Olaz
Public Sub CompactarDatos(FicheroMDB)
MsgBox "Inicio compactación"
On Error GoTo HayError
Dim app As Access.Application
Dim strLdb As String

strLdb = FicheroMDB
strLdb = Replace(strLdb, ".mdb", ".ldb")
' Compactaremos la base de datos si ésta no está abierta
If Dir(strLdb) = "" Then
Set app = New Access.Application
With app
.OpenCurrentDatabase FicheroMDB
' .RunCommand acCmdRepairDatabase (Opcional)
.RunCommand acCmdCompactDatabase
.Quit
End With
End If
Salir:
Set app = Nothing
Exit Sub

HayError:
MuestraError "CompactarDatos"
Resume Salir
End Sub

Private Sub MuestraError(ByVal Procedimiento As String)
Dim strMensaje As String
Dim strTitulo As String
' Aquí procedimiento GrabarError (a desarrollar)
strTitulo = "Error en el procedimiento " & Procedimiento
strMensaje = "Se ha producido el error Nº " & Format(Err.Number,
"#,##0") _
& vbCrLf _
& Err.Description
MsgBox strMensaje, vbCritical + vbOKOnly, strTitulo
End Sub


Saludos desde la calle Estafeta de Pamplona:

Eduardo Olaz
Microsoft [MVP] Access

eduardoALGARROBAolaz.net
ALGARROBA = @




"flomen" escribió en el mensaje
news:
Bonjour,
Je suis à la recherche d'un code VBA pour automatiser le compactage d'une
base de données fractionnée
Merci pour votre aide