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]Reiniciar Aplicação

    avatar
    MCaldeira
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 2
    Registrado : 24/01/2018

    [Resolvido]Reiniciar Aplicação Empty [Resolvido]Reiniciar Aplicação

    Mensagem  MCaldeira em 12/4/2018, 13:16

    Boa tarde,

    Necessito ajuda pra conseguir atraves de VBA reiniciar a aplicação, seja atraves de um simples codigo para reiniciar, seja atraves de codigo para compactar/reparar e reiniciar.

    Já verifiquei varios posts aqui que foram colocados sobre este tema no entanto nenhum tem funcionado e consegui encontrar uma forma simples para o fazer e que não resulta totalmente => [SendKeys "%(FMC)", False]

    Tenho configurada a BD da seguinte forma:
    StartUpShowDBWindow = false
    allowshortcutmenus = False
    allowbuiltintoolbars = False
    allowfullmenus = False

    Neste caso o SendKeys necessita do AllowFullMenus=TRUE caso contrario não tem acesso ao menu para fazer o Compact/Repair. Mesmo alterando primeiro o AllowFullMenus colocando-o a TRUE, e depois fazer o SendKeys, o access apenas abre o access não abre a applicacao porque precisa sempre de efetuar primeiro o restart para tornar efetivas as alteracaoes uma vez que o menu do access ainda não está ativo.

    Existe a possibilidade atraves do comando [ DoCmd.RunCommand (acCmdStartupProperties) ] e depois aceder as configurações do Access sair da aplicação e voltar abrir a aplicação.

    A ideia era fazer isso de uma vez só, atraves de VBA, sem usar acCmdStartupProperties alterando para TRUE as configurações acima e depois reiniciar a aplicação.

    Obrigado
    M.Caldeira

    CassioFabre
    CassioFabre
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 731
    Registrado : 18/01/2013

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  CassioFabre em 12/4/2018, 14:27

    Bom dia,

    Utilize a seguinte função em um módulo:
    Código:
    Public Sub reiniciarAccess()
        Dim strLocal As String
        Dim objWs As Object
       
        'reiniciando
        Set objWs = CreateObject("wscript.shell")
        strLocal = CurrentProject.Path & "\" & CurrentProject.Name
        strLocal = Chr(34) & "MSACCESS.EXE" & Chr(34) & " " & Chr(34) & strLocal & Chr(34)
       
        '0 = oculto / 5 = visível
        objWs.Run strLocal, 5, "false"
       
        'fecha atual
        Application.Quit acQuitSaveAll
    End Sub

    Abraço.


    .................................................................................
    Só não tem código pra morte!
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  Noobezinho em 12/4/2018, 14:42

    Miguel

    Tinha respondido,mas a solução do Cassio é melhor Wink Wink

    [ ]'s
    avatar
    MCaldeira
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Feminino
    Localização : Portugal
    Mensagens : 2
    Registrado : 24/01/2018

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  MCaldeira em 12/4/2018, 14:56

    Boa tarde,

    Obrigado Noobzinho... Funcionou direitinho!!!
    Ficou resolvido

    M.Caldeira
    avatar
    Noobezinho
    Moderador
    Moderador

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3633
    Registrado : 29/06/2012

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  Noobezinho em 12/4/2018, 15:05

    Não fui eu, e sim o Cassio Laughing Laughing

    Valeu o retorno!

    Boa sorte!
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4236
    Registrado : 06/11/2009

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  Assis em 12/4/2018, 17:31

    Boa tarde Amigos

    Cassio

    Criei o modulo e chamei a função num botão ao fazer click .

    call reiniciarAccess


    Mas não reconhece. fica a AZUL " Call reiniciarAccess "

    Office 2013 32 bits


    Obrigado


    .................................................................................
    *** Só sei que nada sei ***
    CassioFabre
    CassioFabre
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 731
    Registrado : 18/01/2013

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  CassioFabre em 12/4/2018, 18:50

    Boa tarde,

    Assis, testei aqui e está funcionando correntamente. Segue modelo.

    Abraço.
    Anexos
    [Resolvido]Reiniciar Aplicação AttachmentDatabase2.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (20 Kb) Baixado 16 vez(es)


    .................................................................................
    Só não tem código pra morte!
    Assis
    Assis
    Maximo VIP
    Maximo VIP

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 4236
    Registrado : 06/11/2009

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  Assis em 12/4/2018, 19:25

    Obrigado Cassio

    Resolvi e vi onde estava a errar.

    Só para poupar um click a seguir a Msgbox ??????


    Private Sub Comando65_Click()

    If MsgBox("Quer Mudar o Caminho das Tabelas Vinculadas ?", vbYesNo, "Aviso") = vbYes Then
    Dim DB As DAO.Database, rs As Recordset
    Set DB = CurrentDb()
    Set rs = DB.OpenRecordset("tblCaminhoBe", dbOpenDynaset)
    rs.Edit
    rs("Path_0") = Null
    rs.Update
    rs.Close
    Set rs = Nothing
    Set DB = Nothing

    MsgBox "O Programa será Fechado" & vbNewLine & "Abrirá Automáticamente" & vbNewLine & "Para Selecionar o Novo Caminho das Tabelas Para Conclusão Da Nova Configuração.", vbInformation, "Aviso"

    'DoCmd.Quit ' deu para alterar este comando e ficou ótimo.
    Call reiniciarAccess

    End If
    End Sub


    .................................................................................
    *** Só sei que nada sei ***
    avatar
    Ronibarros
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 6
    Registrado : 16/03/2016

    [Resolvido]Reiniciar Aplicação Empty Re: [Resolvido]Reiniciar Aplicação

    Mensagem  Ronibarros em 7/7/2020, 17:56

    Caríssimos,

    De acordo com o script do Cassio, na primeira mensagem dele, que funciona muito bem, se o aplicativo tiver senha como proceder?

    Tenho uma base que, quando tiro a senha, reiniciou muito bem com esse script, porém com senha tem que digitar a mesma. Preciso que outra pessoa reinicie, mas não posso compartilhar a senha.

    Muito grato.

      Data/hora atual: 5/12/2020, 08:25