MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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]Abrir BD com fundo transparete através de outro

    avatar
    Buscador
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 260
    Registrado : 26/02/2011

    [Resolvido]Abrir BD com fundo transparete através de outro Empty [Resolvido]Abrir BD com fundo transparete através de outro

    Mensagem  Buscador 18/5/2014, 00:57

    Boa noite pessoal,
    Estava tentando fazer um aplicativo abrir o outro quando me deparei com algo que eu não entendi.
    Usei meu próprio exemplo postado em:
    Exemplo usado

    O que fiz foi colocar o mesmo BD com outro nome (Reciclagemexemplo - abre.accdb) e fazer com que, ao fechar o Reciclagemexemplo.accdb pudesse abre o Reciclagemexemplo - abre.accdb com o código abaixo:
    Private Sub Form_Unload(Cancel As Integer)
       Cancel = True
     
         On Error GoTo Err_BtnExcluir_Click


    Dim msg, Estilo, título, resposta, minhasequência
       msg = "Deseja fazer o back up agora? "
           Estilo = vbYesNo + vbQuestion + vbDefaultButton2 'Define os botões
           título = "Reciclagem" 'Define o título
               resposta = MsgBox(msg, Estilo, título)
           If resposta = vbYes Then 'O usuário escolheu sim.
           Dim strCminho As String
          strCaminho = "C:\Users\marcelo\Documents\Teste fundo access\ReciclagemExemplo - abre.accdb"
           Application.FollowHyperlink strCaminho
           DoCmd.Quit
           
           minhasequência = "Sim" 'Executa alguma ação.
                     
       Else 'O usuário escolheu não.
           If resposta = vbNo Then
           DoCmd.Quit acQuitSaveAll
           minhasequência = "Não" 'Executa alguma ação
           DoCmd.Close
       End If
           End If
    Exit_BtnExcluir_Click:
       Exit Sub

    Err_BtnExcluir_Click:
       'MsgBox Err.Description
       Resume Exit_BtnExcluir_Click
    End Sub

    Ocorre que abre porém a função de esconder o fundo access deixa de funcionar a contento. Individualmente o arquivo se abre com o fundo escondido mas usando o código acima fica um fundo esquisito com a barra de títudo aparecendo em um quadrado azul.
    Então pergunto:
    Esta forma de abrir outro BD interfere em outras funções ? (Esconder o fundo, retirar os botões minimizar, fechar e restaurar).
    Alguém fez este teste?
    Grato


    Última edição por Buscador em 18/5/2014, 03:00, editado 1 vez(es)
    avatar
    Buscador
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 260
    Registrado : 26/02/2011

    [Resolvido]Abrir BD com fundo transparete através de outro Empty Re: [Resolvido]Abrir BD com fundo transparete através de outro

    Mensagem  Buscador 18/5/2014, 02:47

    Olá pessoal, boa noite.

    Consegui resolver criando um módulo:

    Option Compare Database

    Option Explicit

    Private Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hwnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
    ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
    Function ExecutarAplicativo(strCaminhoArq As String, Optional lngJanela As Long = 1)
    ShellExecute hWndAccessApp, vbNullString, strCaminhoArq, vbNullString, vbNullString, lngJanela
    End Function

    E no evento "Ao Descarregar"
       Cancel = True
     
         On Error GoTo Err_BtnExcluir_Click


    Dim msg, Estilo, título, resposta, minhasequência
       msg = "Deseja fazer o back up agora? "
           Estilo = vbYesNo + vbQuestion + vbDefaultButton2 'Define os botões
           título = "Reciclagem" 'Define o título
               resposta = MsgBox(msg, Estilo, título)
           If resposta = vbYes Then 'O usuário escolheu sim.
            Call ExecutarAplicativo("C:\Reciclagem\BackupReciclagem.accdb")  'Aqui o BD que será aberto.
            DoCmd.Quit acQuitSaveAll
           
           minhasequência = "Sim" 'Executa alguma ação.
                     
       Else 'O usuário escolheu não.
           If resposta = vbNo Then
           DoCmd.Quit acQuitSaveAll
           minhasequência = "Não" 'Executa alguma ação
           DoCmd.Close
       End If
           End If
    Exit_BtnExcluir_Click:
       Exit Sub

    Err_BtnExcluir_Click:
        Resume Exit_BtnExcluir_Click

    Muito obrigado e desculpem não ter tentado mais vezes antes de postar.
    De toda forma serve para quem passar pela mesma situação

      Data/hora atual: 19/4/2024, 04:40