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


+3
sergiosdl
Alvaro Teixeira
lrossato
7 participantes

    Fechar arquivo externo via VBA

    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Fechar arquivo externo via VBA

    Mensagem  lrossato 20/5/2015, 19:24

    Olá Pessoal,

    Por favor, alguém conhece algum comando ou uma função VBA para fechar um arquivo específico do word, excel, etc., e um outro comando/função que feche todos os arquivos de um aplicativo, por exemplo todos do excel ou todos do word, etc., sem precisar citar nomes.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 20/5/2015, 20:05

    Olá, bem vindo ao fórum.
    Veja se ajuda:
    http://www.taltech.com/support/entry/opening_and_closing_an_application_from_vba
    Ou
    https://www.google.pt/#q=ms+access+vba+kill+process
    Abraço
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 20/5/2015, 20:24

    Olá ahteixeira,

    Obrigado pelas boas vindas.

    Pelo que entendi o primeiro link é para abrir um arquivo executável e o segundo é para deletar.
    Até já conheço o comando Kill no access para excluir arquivos, mas o que eu quero é apenas fechar.
    Eu mencionei comando ou função quando criei este forum porque vou colocar no procedimento de evento "ao clicar" de um botão que criei no form.
    Mesmo assim valeu.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 20/5/2015, 21:12

    Olá, não vai apagar o ficheiro.
    A única forma que conheço "matar o processo" do Windows.
    Ou seja, se for ao gestor de processos do Windows, vai verificar o(s) processo(s) abertos.
    O que o primeiro exemplo faz é demonstração dos dois passos.
    Abrir processo (ficheiro)
    Fechar "matar" processo.

    Caso pretenda fazer desta forma, terá de saber o nome do processo que pretende matar.

    Ficamos aguardar alguma sugestão de outro colega.

    Abraco
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 20/5/2015, 22:13

    Olá,

    Por favor então posta o que devo escrever no procedimento do evento "ao clicar" para o botão que criei se eu quisesse por exemplo fechar o arquivo "c:\frequencia.xls" ?
    Abç.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 21/5/2015, 12:24

    Olá Luis Henrique,
    Antes de tudo recomendo a leitura do n. 12 das regras do fórum em: https://www.maximoaccess.com/t48-regras-do-forum.
    Espero que proceda ao ajuste.

    Relativamente ao tópico, segue exemplo conforme solicitado.
    O metodo utilizado é "terminar tarefa/kill task", obtemos o resultado pretendido, o entanto não está a fechar, mas sim "matar a tarefa".
    Caso tenha mais que um ficheiro excel aberto, vai encerrar todos.

    Se o ficheiro excel que se pretende fechar foi aberto pelo access, recomendo que seja aplicada a tecnica deste post:
    http://www.taltech.com/support/entry/opening_and_closing_an_application_from_vba
    Abraço
    Anexos
    Fechar arquivo externo via VBA AttachmentTerminarApp.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (18 Kb) Baixado 132 vez(es)
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 21/5/2015, 14:04

    Olá Alvaro,

    Acabo de ler a linha 12 que vc sugeriu das regras. Não entendi. Não escrevi nada em maiúsculo a não ser o título do tópico.

    Peço desculpas. Na verdade me precipitei ontem quando refutei aquele link que vc postou.
    À noite parei para analisar melhor aquele código e concluí que vc tinha toda razão. Ele serve sim para fechar processos (entenda-se aplicativos).
    Para saber o nome do processo eu teclei o famoso control-alt-del. Abri o gerenciador de tarefas e na aba "processos" vi qual era o do excel e aí foi só substituir no código.
    E agora cedo eu recebo o seu post para confirmar. Vc foi perfeito!

    Bom, desta forma fica resolvida a segunda parte do tópico.

    Fica faltando só um código, ou o que seja, para fechar um arquivo especificamente.

    Obrigado
    Abç.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 21/5/2015, 15:07

    Olá, obrigado pelo retorno, os utilizadores do fórum agradecem.
    Quanto ao nº 12 é mesmo isso e só você é que podem alterar o titulo do tópico.
    Entretanto, se está concluído, não se esqueça de dar o tópico como resolvido, veja link abaixo:
    https://www.maximoaccess.com/t860-resolucao-de-topicos
    Abraço
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 21/5/2015, 15:55

    Olá,

    O tópico ainda não foi resolvido.
    Ainda falta uma parte.
    Abç.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 21/5/2015, 16:45

    Olá, e que parte está a faltar, podemos ajudar?
    Abraço
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 21/5/2015, 17:55

    Oi,
    A primeira parte que é:
    Fechar apenas um arquivo específico sem fechar todo o processo.
    Abç.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 21/5/2015, 18:56

    Olá de novo, a única forma que conheço para fechar arquivo específico é se também for aberto pelo Access.
    Pois assim o Acceess dispõe da informação do ficheiro que foi aberto e sabe qual fechar.
    Ficamos aguardar se algum colega aqui do fórum apresenta outra ideia.
    Abraço
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 143
    Registrado : 04/12/2009

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  sergiosdl 22/5/2015, 00:09

    amigo eu finalizo com um arquivo externo.

    Crie um arquivo VBS que ele poderá fechar inclusive o proprio access
    No arquivo VBS coloque o codigo

    dim escript, execu
    Set escript = WScript.CreateObject("WScript.Shell")
    set execu = escript.exec("c:\windows\system32\taskkill -U -F -im wp* ")

    neste exemplo ele ira finalizar qualquer processo que se inicie com as letras wp

    Abraços
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 22/5/2015, 13:43

    Olá Sérgio, obridado pela dica.
    Com o MaximoAccess estamos sempre aprender.
    Vamos aguardar o retorno do colega.
    Abraço
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 22/5/2015, 15:06

    Colegas,

    Que show de bola este VBS. Não conhecia, mas pesquisei e consegui criar um.
    Inseri nele, conforme proposto, o seguinte código:

    dim escript, execu
    Set escript = WScript.CreateObject("WScript.Shell")
    set execu = escript.exec("c:\windows\system32\taskkill -U -F -im DP4-FREQUENCIA1.csv")

    No lugar do wp* eu coloquei o nome do arquivo que quero fechar. Não fechou.
    Até renomeei o meu arquivo para wp1 pensando que talvez o hífen no nome fosse o problema, mas tbém não fechou.

    Abç.
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 143
    Registrado : 04/12/2009

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  sergiosdl 22/5/2015, 15:39

    Amigo
    no local que estou no momento não consigo testar, mas você não deve colocar o nome do arquivo que esta aberto, e sim o nome do processo, por exemplo:
    Um arquivo do Word chamado teste.docx.
    para fecha-lo você deve fechar o Word que é o processo, logo seria o arquivo winword.exe
    então modifique para o nome do processo que esta abrindo o seu arquivo, para verificar o nome do processo, utilize o tradicional CTRL + ALT + DEL para ver o nome dos processos
    cuidado ao ultilizar * como eu postei no exemplo, você poderá fechar outros processos que de repente nem os conheça, mas são de utilização do sistema
    Abraços
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 22/5/2015, 18:06

    Olá Sérgio,

    Acho que vc não pegou o tópico desde o começo.
    Esta parte de fechar o processo a gente já resolveu.
    Quando se fecha o processo se fecham todos os arquivos daquele aplicativo.

    O que a gente quer agora é fechar só um determinado arquivo daquele processo.
    Porém o nome do arquivo não aparece no gerenciador de tarefas.

    Abç.
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 143
    Registrado : 04/12/2009

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  sergiosdl 22/5/2015, 19:32

    Meu Irmão
    Peço desculpas, realmente não tinha me atentado a este ponto importante.
    Fechando apenas o arquivo eu nunca fiz, mesmo porque fazendo manualmente(CTRL + ALT + DEL) eu nao consegui finalizar apenas um arquivo

    Abraços
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 22/5/2015, 20:09

    Sérgio,

    No gerenciador de tarefas que aparece depois do ctrl-alt-del, dentro da aba "aplicativos" aparece no nome das tarefas.
    O nome de cada arquivo aberto aparece ali.
    Se desse pra fazer menção, usando um código, àquela tarefa especifica, daria pra fechar só aquele arquivo.
    Abç.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 25/5/2015, 13:42

    Colega,

    Esta função já foi sugerida no início do tópico e ela funciona mesmo, mas não é isso que a gente quer.
    A gente quer é fechar um único arquivo (.doc, .xls, .pdf, etc).
    Abç.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Noobezinho 25/5/2015, 15:14

    Então veja aqui

    Também irá precisar disso aqui

    Não me interessei em testar, apena fica a dica


    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 25/5/2015, 15:35

    Olá Noob,

    Antes de iniciar o tópico eu já havia pesquisado na Web buscando soluções.
    Estes links que você postou servem para fechar a janela do aplicativo. Eu já tinha testado eles funcionam mesmo.
    Mas eles nem sequer fecham o aplicativo e apenas ocultam as suas janelas da barra de status do windows.
    Volto a dizer que queremos apenas fechar um único arquivo de um aplicativo.
    Mesmo assim obrigado.
    Abç.
    avatar
    sergiosdl
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 143
    Registrado : 04/12/2009

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  sergiosdl 25/5/2015, 15:51

    Realmente está um desafio
    Acredito que o caminho é varrer na net procurando como fechar um arquivo pelo windows(prompt de comando), pra gente colocar isto no VBA

    Abraços
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 8/12/2015, 19:26

    Olá Luiz Rossato, como está a situação!
    Encontrou outra solução? Usou alguma das apresentadas?

    Os utilizadores do fórum agradecem o retorno.
    Abraço
    walisilva
    walisilva
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 10/09/2015

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  walisilva 9/12/2015, 12:19

    Olá a todos!

    Bem, eu sempre uso um CMD "Taskkill /im msaccess.exe /f" onde o "msaccess.exe" pode ser qualquer .exe que eu quiser.

    Porém ele fecha todos abertos, não tem como especificar qual em específico, até porque pra isso eu teria que especificar o id do processo (PID) que não sei como automatizar.

    Fica a dica ai para o amigo, também sugiro que pense bem o que quer fazer pois, pra finalizar um processo específico você tem que saber o id do processo, acredito que seja a única forma, mas aí já é um outro problema, talvez precise digitar manualmente o PID.

    Abçs


    .................................................................................
    --
    Walison Silva Cool
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 10/12/2015, 18:08

    Olá Walison, obrigado por mais uma dica.
    Ficamos (continuamos) aguardar o retorno do Luiz Rossato que abriu o tópico.
    Abraço
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 10/12/2015, 18:28

    Olá Pessoal,

    Infelizmente não pude utilizar nenhuma opção dos colegas. Repiso que o que eu queria era fechar um arquivo específico do excel sem fechar outros que estão aberto do mesmo aplicativo, ou seja, n~]ao quero fechar o processo, apenas um arquivo.
    Tem como encerrar o tópico sem solução?
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 10/12/2015, 18:30

    Olá Luiz, sim tem, veja como fazer:
    https://www.maximoaccess.com/t860-resolucao-de-topicos
    Abraço
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 10/12/2015, 18:57

    Colega,

    Pelo que li é melhor deixar aberto, pois não foi resolvido e quem entrar não vai achar solução para o que procura.
    Abç.
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7914
    Registrado : 15/03/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Alvaro Teixeira 10/12/2015, 19:07

    Olá Luiz, sou da opinião de fechar o tópico.

    Pode colocar uma mensagem final de agradecimento aos intervenientes e que vai dar o tópico como resolvido apesar de não ter obtido uma solução.

    No entanto deixo ao seu critério, podendo também ficar aberto.
    Abraço
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3877
    Registrado : 04/04/2010

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Avelino Sampaio 10/12/2015, 21:39

    Olá!

    Uma alternativa é passar o foco para janela do arquivo aberto e então fechar com o ALT + F4

    Public Declare PtrSafe Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As Long
    Private Declare PtrSafe Function SetForegroundWindow Lib "user32" (ByVal hwnd As Long) As Long

    Public Sub fncFecharApp(NomeJanela As String)
    Dim CloseIt As Long
    Dim ws As Object
    DoEvents
    CloseIt = FindWindow(vbNullString, NomeJanela)
    SetForegroundWindow CloseIt
    Call fncAguardar(50)
    Set ws = CreateObject("WScript.shell")
    ws.SendKeys "%{f4}"
    Set ws = Nothing
    End Sub


    Public Sub fncAguardar(lngMilesegundos&)
    Dim varStart
    varStart = Timer  'Tempo inicial
    Do While Timer < varStart + (lngMilesegundos / 1000)
       DoEvents  'Libera outros processos
    Loop
    End Sub


    Supondo que eu tenha um arquivo de nome Carga.xlsx e na janela Excel temos escrito "Carga.xlsx - excel"

    call fncFecharApp("Carga.xlsx - excel")

    Nota:  se seu Access for versão 2007 ou inferior, retire o Ptrsafe da API
    Nota: Abra mais de um arquivo excel para testar.

    Aguardamos


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 11/12/2015, 13:42

    Olá,

    Copiei todo o conteúdo dentro de um módulo.
    Porém está dando erro ao copiar esta linha:

    Public Sub fncFecharApp(cópia de saldo lp dez 2015 dp.xlsx - microsoft excel As String)

    Coloquei aspas no nome da janela mas ainda continua com erro:
    Public Sub fncFecharApp("cópia de saldo lp dez 2015 dp.xlsx - microsoft excel" As String)

    Por favor verifique e me retorne
    Abç.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Noobezinho 11/12/2015, 13:50

    Luiz


    Isso fica na função:

    Public Sub fncFecharApp(NomeJanela As String)

    O que está dentro dos parênteses chama-se argumento,
    nesse caso, o argumento diz que a variável NomeJanela é string

    Para chamar esse função ali de cima, tem que fazer como o Avelino colocou:

    call fncFecharApp("Carga.xlsx - excel")

    Que no teu caso ficará:

    call fncFecharApp("cópia de saldo lp dez 2015 dp.xlsx - microsoft excel")

    [ ]'s


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 11/12/2015, 14:11

    Noobezinho,

    Eu entendi isso.
    Para testar eu criei um formulário e coloquei um botão para chamar a função, no evento ao clicar:
    call fncFecharApp("cópia de saldo lp dez 2015 dp.xlsx - microsoft excel")
    O erro está na hora de declarar a função no módulo.

    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3877
    Registrado : 04/04/2010

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Avelino Sampaio 11/12/2015, 14:20

    Qual é a versão do seu Access ?


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    walisilva
    walisilva
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 34
    Registrado : 10/09/2015

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  walisilva 11/12/2015, 14:27

    Código:
    taskkill /f /FI "windowtitle eq nomedoxls"

    Onde nomedoxls é o nome do seu arquivo que quando é aberto pelo excel, assume o titulo da janela. Com esse código você pode matar qualquer processo apenas com o nome da janela.

    Acho que com isso resolve o seu problema.

    -- João 3:16


    .................................................................................
    --
    Walison Silva Cool
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3877
    Registrado : 04/04/2010

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Avelino Sampaio 11/12/2015, 14:51

    Walison, leia o tópico. A questão final aqui é ter uma solução sem matar o processo.


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 11/12/2015, 15:35

    Meu access é 2010
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3877
    Registrado : 04/04/2010

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Avelino Sampaio 11/12/2015, 17:09

    Segue o arquivo exemplo.

    Aguardamos

    Anexos
    Fechar arquivo externo via VBA Attachmentrossato.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (24 Kb) Baixado 57 vez(es)


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    Noobezinho
    Noobezinho
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

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

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Noobezinho 11/12/2015, 18:24

    Avelino

    Não funfou, tentei com o Excel e MsAccess e não foi.

    Usando o windows 7 -ms Access 2010.

    Com exceção da API findWindow, todas as outras pedem o nome de classe.

    Será que realmente tem API que o windows 7 não reconhece?

    A exemplo disso é a API SetMessage(), onde nos fórum em inglês

    dizem isso.


    .................................................................................
    A pergunta que não quer calar:
    Por quê quando alguém vem pedir ajuda e conforme o caso pedimos
    para enviar parte do projeto, não temos mais continuidade do tópico?  
    Crê que temos bolas de cristal ou está com medo que "roubemos"  a
    idéia/projeto dele?  Twisted Evil
    Se é tão bom assim...


    Ajude a ser ajudado:
    Seja objetivo na dúvida, dê os detalhes do que precisa, sem rodeios.
    Quando anexar teu projeto, diga onde está o problema, ganhamos mais tempo
    sem precisar procurar o mesmo.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 11/12/2015, 18:37

    Avelino,

    Tirei um print da tela (excel ao fundo) pra vc ver que eu coloquei exatamente o nome da tela e não foi.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 11/12/2015, 18:44

    Agora foi.
    Por favor dá uma olhada.
    Anexos
    Fechar arquivo externo via VBA Attachmentrossato.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (266 Kb) Baixado 30 vez(es)

    joaquim.oliveira903 gosta desta mensagem

    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 11/12/2015, 19:04

    Pessoal,

    17:30h tenho que ir embora.
    Estou sem internet em casa.
    Se não conseguirmos resolver até esta hora, na segunda a gente continua.
    Abç.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3877
    Registrado : 04/04/2010

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Avelino Sampaio 12/12/2015, 10:43

    Rossato,

    atente para os dois espaços existentes, ao invés de um, após a extensão xls.

    peso ideal.xlsdois espaços[Modo de Compatibilidade] - Microsoft Excel

    Nobezinho,

    estou rodando aqui no Windows 7 com Access 2013.  Rodei também no Access 2007 com Windows 7.

    Aguardamos


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso irrestrito ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    lrossato
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 33
    Registrado : 25/10/2013

    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  lrossato 14/12/2015, 13:27

    Avelino,

    Coloquei os dois espaços.
    To mandando a planilha e o resultado pra vc analisar.
    Anexos
    Fechar arquivo externo via VBA Attachmentpeso ideal.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (230 Kb) Baixado 28 vez(es)
    avatar
    joaquim.oliveira903
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11
    Registrado : 19/04/2016

    Fechar arquivo externo via VBA Empty Sensacional esse código

    Mensagem  joaquim.oliveira903 22/3/2021, 01:23

    lrossato

    Sensacional esse código, fiz uma pequena alteração e consigo fechar qualquer aplicativo. Muito legal!

    Bastou eu alterar a caixa de endereço para uma caixa de combinação e cadastrar algums arquivos com extensão e pronto. Ele fecha qualquer arquivo

    bounce: Parabéns!!

    vou postar o anexo

    Créditos aos colegas que postaram o arquivo e código
    Anexos
    Fechar arquivo externo via VBA Attachmentrossato.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (161 Kb) Baixado 36 vez(es)

    Conteúdo patrocinado


    Fechar arquivo externo via VBA Empty Re: Fechar arquivo externo via VBA

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 28/3/2024, 22:42