Boas noites
Este primeiro código localiza a BD_be
Este segundo, de JPaulo, zipa a BD
Gostaria que este segundo código localizasse a BD_be através do primeiro código.
Em resumo o que pretendo é que o código localize o be através da TableDefs
Este primeiro código localiza a BD_be
- Código:
Function fncPathPrimeiraTabelaLigada()
' Origem..: (Cláudio Más) https://www.maximoaccess.com/t27625-caminho-de-tabelas-ligadas
' Alterado: Alvaro Teixeira (ahteixeira)
' Data ...: 13-08-2016
Dim dbs As DAO.Database
Dim tdf As TableDef
Set dbs = CurrentDb
For Each tdf In dbs.TableDefs
If Len(tdf.Connect) > 0 Then
fncPathPrimeiraTabelaLigada = right$(tdf.Connect, Len(tdf.Connect) - 10)
Exit For
End If
Next tdf
End Function
Este segundo, de JPaulo, zipa a BD
- Código:
Public Sub ZipaBanco()
'JPaulo :registered: Maximo Access
Dim strDate As String, DefPath As String
Dim oApp As Object
Dim FName, FileNameZip
Dim strPrefix As String
On Error Resume Next
DefPath = Application.CurrentProject.Path 'Caminho da pasta onde está o banco a zipar
If Right(DefPath, 1) <> "\" Then
DefPath = DefPath & "\"
End If
strDate = Format(Now, "dd-mmmm-yyyy_hh-mm")
FileNameZip = DefPath & "Backup_" & strDate & ".zip"
strPrefix = "SeuBanco" 'Nome do banco que vai ser zipado
'FName é o caminho da pasta onde vai ficar o banco zipado.
'neste exemplo vai ficar junto ao proprio banco
'Se o seu Ms Access for anterior ao 2007,
'deve alterar a extenção de .accdb para .mdb
FName = Application.CurrentProject.Path & "\" & strPrefix & ".accdb"
On Error Resume Next
CriaNovoZip (FileNameZip)
Set oApp = CreateObject("Shell.Application")
oApp.NameSpace(FileNameZip).CopyHere FName
MsgBox "Criado com Sucesso em: " & FileNameZip
Set oApp = Nothing
Exit Sub
End Sub
Public Sub CriaNovoZip(sPath)
'Criado pelo meu amigo e colega Raw do Canadá
'Adaptado por JPaulo :registered: Maximo Access
Dim ofso, arrHex, sBin, i, Zip
On Error Resume Next
Set ofso = CreateObject("Scripting.FileSystemObject")
arrHex = Array(80, 75, 5, 6, 0, 0, 0, _
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)
For i = 0 To UBound(arrHex)
sBin = sBin & Chr(arrHex(i))
Next
On Error Resume Next
With ofso.CreateTextFile(sPath, True)
.Write sBin
.Close
End With
Exit Sub
End Sub
Gostaria que este segundo código localizasse a BD_be através do primeiro código.
Em resumo o que pretendo é que o código localize o be através da TableDefs