MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    [Resolvido]VBS x VBA - Compactando Front End por VBS

    Access365
    Access365
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]VBS x VBA - Compactando Front End por VBS Empty [Resolvido]VBS x VBA - Compactando Front End por VBS

    Mensagem  Access365 em 12/10/2012, 19:37

    Olá pessoal...
    Certa vez eu li este tópico sobre VBSCRIPT
    http://maximoaccess.forumeiros.com/t2335-compactar-e-reparar-por-vbscript?highlight=compactar

    JPaulo deixou um exemplo significante, resolvendo o problema para quem necessita compactar um Back End, como eu... Mas fiquei com uma dúvida...
    Minha história:
    Estava difícil de conseguir uma compactação, chamando uma função pelo Form principal de meu DB, então estou compactando via VBS.
    Minha dúvida é: Quando eu compacto pelo menu Ferramentas, o meu Front End, com acréscimo de 17MB, cai para 12MB, mas quando eu compacto por um *.vbs, cai para 16MB... O código disponibilizado pelo JPaulo é:
    ------- Numa folha de bloco de notas e salve como *.vbs --------------
    Dim objScript
    Dim objAccess
    Dim strPathToMDB
    Dim strMsg
    'caminho e banco a compactar
    strPathToMDB = "C:\teste.mdb"
    'Caminho e banco virtual para permitir a compressão
    strTempDB = "C:\testeCompress.mdb"
    Set objAccess = CreateObject("Access.Application.11") 'No exemplo o 11 está em negrito (PQ?)
    objAccess.DbEngine.CompactDatabase strPathToMDB ,strTempDB
    If Err.Number > 0 Then
    strMsg = "O seguinte erro foi encontrado durante a compactação do banco de dados:"
    strMsg = strMsg & vbCrLf & vbCrLf & Err.Description
    Else
    Set objScript= CreateObject("Scripting.FileSystemObject")
    objScript.CopyFile strPathToMDB , strPathToMDB & "z", True
    objScript.CopyFile strTempDB, strPathToMDB, True
    objScript.DeleteFile strTempDB
    End If
    Set objAccess = Nothing
    Set objScript = Nothing
    WScript.Echo "Banco compactado com sucesso..."
    ---------------------
    Será que este tipo de compactação por VBS só compacta isso mesmo?

    Agradeço desde já!
    Paulo César
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2097
    Registrado : 13/04/2012

    [Resolvido]VBS x VBA - Compactando Front End por VBS Empty Re: [Resolvido]VBS x VBA - Compactando Front End por VBS

    Mensagem  Fernando Bueno em 13/10/2012, 04:46

    infosoft

    Ja vi alguma coisa desse tipo no evento ao clicar do botão, porem nunca testei

    Talvez sirva para sua necessidade.

    Shell ("C:\Arquivos de programas\Microsoft Office\Office11\Msaccess.exe C:\Temp\SGD2-0.mdb /repair /compact")


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    [Resolvido]VBS x VBA - Compactando Front End por VBS 16rzeq
    Access365
    Access365
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]VBS x VBA - Compactando Front End por VBS Empty Re: [Resolvido]VBS x VBA - Compactando Front End por VBS

    Mensagem  Access365 em 13/10/2012, 05:10

    Obrigado Fernando Bueno, mas eu preciso para VBS.
    Valeu!
    Fernando Bueno
    Fernando Bueno
    Developer
    Developer

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2097
    Registrado : 13/04/2012

    [Resolvido]VBS x VBA - Compactando Front End por VBS Empty Re: [Resolvido]VBS x VBA - Compactando Front End por VBS

    Mensagem  Fernando Bueno em 13/10/2012, 05:16

    Entendi, não prestei muita atenção na sua mensagem..

    Vou dar uma pesquisada se achar alguma coisa legal te aviso


    .................................................................................
    Um abraço
    Fernando Bueno


    O aumento do conhecimento é como uma esfera dilatando-se no espaço
    quanto maior a nossa compreensão,
    maior o nosso contacto com o desconhecido
    [Resolvido]VBS x VBA - Compactando Front End por VBS 16rzeq
    Access365
    Access365
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]VBS x VBA - Compactando Front End por VBS Empty Re: [Resolvido]VBS x VBA - Compactando Front End por VBS

    Mensagem  Access365 em 13/10/2012, 05:54

    Beleza cara... valeu muito.
    Obrigado!
    Access365
    Access365
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 288
    Registrado : 09/07/2012

    [Resolvido]VBS x VBA - Compactando Front End por VBS Empty Re: [Resolvido]VBS x VBA - Compactando Front End por VBS

    Mensagem  Access365 em 2/8/2020, 18:28

    Adaptei esse código às minhas necessidades e consegui resolver:
    http://maximoaccess.forumeiros.com/t2335-compactar-e-reparar-por-vbscript?highlight=compactar

      Data/hora atual: 30/11/2020, 08:06