locked
Erro ao abrir o programa em outro pc !!! RRS feed

  • Pergunta

  • Amigos, eu criei um programa no visual basic.net,e nesse programa eu adicionei o excel, para ele buscar dados em uma planilha.Está rodando perfeitamente no meu pc, mas quando eu coloco em outro computador, o programa não acha o caminho da planilha.O que eu devo fazer? pq o programa abre normalmente,o usuário preenche as informações para os cálculos,mas quando clica em calcular,da erro falando que não esta achando o caminho da planilha.Obrigado !!
    quarta-feira, 1 de fevereiro de 2017 13:36

Respostas

  • Olá Kaio,

    Então, você pode fazer algumas coisas... por exemplo, testar antes se o caminho até o xls existe, se caso não existe, você pode abrir um dialog box e falar para o usuário navegar até onde está localizado o arquivo .xls. Uma vez localizado você pega o path e guarda num .txt ou no banco de dados. Daí para frente não vai dar mais erro. Se caso no futuro o arquivo mude de lugar o sistema vai ver que o arquivo não se encontra e vai abrir o dialog box de novo e repetir o processo.

    Para testar se o arquivo existe:

    path = {aqui colocar o código para buscar o path padrão no banco ou num txt}
    
    FileInfo fi = new FileInfo(path + "\\planilha.xlsx");
    if(fi.Exists)
    {
        System.Diagnostics.Process.Start(@path + "\planilha.xlsx");
    }
    else
    {
        //se não encontra o xls
        //abre dialog box para procurar manualmente
        //salva o path em algum lugar
    }

    • Marcado como Resposta Kaio Mendes quarta-feira, 8 de fevereiro de 2017 10:41
    terça-feira, 7 de fevereiro de 2017 12:21
  • Bom dia Kaio,

    Na verdade nos links que te passei estão as ferramentas que você precisa, agora é só juntar as partes e desenvolver o que você precisa como mais ou menos te orientei ai encima.

    Repetindo, basicamente você precisa ao iniciar a aplicação e antes de tentar abrir o arquivo, abrir o txt (onde vc vai ter um caminho padrão), testar se existe o xls no caminho que foi passado como padrão. Se não existe abre um dialog para que o usuário o busque manualmente. Selecionado o "path" ou caminho até o xls, você vai guardar isso no mesmo txt.

    Caso ao testar se o arquivo existe, ele exista realmente, você abre diretamente o arquivo com aquele path.

    quinta-feira, 9 de fevereiro de 2017 10:50

Todas as Respostas

  • Olá Kaio tudo bem?

    Para poder te ajudar vamos precisar ver seu código, ver como você esta carregando a planilha.

    quarta-feira, 1 de fevereiro de 2017 13:59
  • Olá tudo bem, vou explicar o que eu fiz :

    Antes de tudo eu adicionei a referência do excel normalmente, depois coloquei no código isso :

    Imports Excel = Microsoft.Office.Interop.Excel

    E para encontra a planilha desejada eu coloquei isso :

    xlW = xl.Workbooks.Open("C:Visual Studio 2012\Projects\Cálculo seção de condutor\Cálculo.xlsx")

    Já mudei varias vezes o caminho, e sempre no meu computador abre, aí eu passo o programa para outro computador, ele abre normalmente tbm, mas quando vai fazer o calculo ele da erro, pq não encontra a planilha nesse computador.

    Obs : Eu tbm passo a planilha para o outro computador. Coloco nos mesmos locais, mas o programa não encontra ele.

    Eu queria saber um jeito de sempre quando eu for passar o programa para outro computador, tiver um local que tbm coloco a planilha. Ou então, não sei se daria certo ou se tem jeito, de criar um banco para colocar essa planilha dentro dele, aí sempre a planilha vai junto com o programa, mas não tenho informações de que isso daria certo.

    Obs : Eu penso que se eu colocasse a planilha no "disco C" e mudasse o caminho que o programa procura, ele funcionaria em outro pc se eu tbm colocasse no disco C. Porem eu não tenho permissão aqui para adicionar algo no "Disco C".Ou pode ser que não daria certo tbm,pq já que eu coloco a planilha no msm lugar ele não abre kkk pq no "Disco C" seria diferente ?kkk

    Aguardo ajudas !!! Muito obrigado. Bom dia !!!

    sexta-feira, 3 de fevereiro de 2017 10:21
  • Alguém???
    terça-feira, 7 de fevereiro de 2017 12:01
  • Olá Kaio,

    Então, você pode fazer algumas coisas... por exemplo, testar antes se o caminho até o xls existe, se caso não existe, você pode abrir um dialog box e falar para o usuário navegar até onde está localizado o arquivo .xls. Uma vez localizado você pega o path e guarda num .txt ou no banco de dados. Daí para frente não vai dar mais erro. Se caso no futuro o arquivo mude de lugar o sistema vai ver que o arquivo não se encontra e vai abrir o dialog box de novo e repetir o processo.

    Para testar se o arquivo existe:

    path = {aqui colocar o código para buscar o path padrão no banco ou num txt}
    
    FileInfo fi = new FileInfo(path + "\\planilha.xlsx");
    if(fi.Exists)
    {
        System.Diagnostics.Process.Start(@path + "\planilha.xlsx");
    }
    else
    {
        //se não encontra o xls
        //abre dialog box para procurar manualmente
        //salva o path em algum lugar
    }

    • Marcado como Resposta Kaio Mendes quarta-feira, 8 de fevereiro de 2017 10:41
    terça-feira, 7 de fevereiro de 2017 12:21
  • Bom dia Pablo, estou fazendo o programa na linguagem visual basic, com a sua informação eu coloquei um textbox no programa para o usuário colocar o caminho da planilha. Aí deu certinho, mas não tenho banco de dados, por isso o usuário teria que fazer isso toda vez. Se tiver como, gostaria de uma ajuda para eu criar ele, pois até hoje eu não usei banco de dados nos meus programas. Muito Obrigado !!!



    • Editado Kaio Mendes terça-feira, 7 de fevereiro de 2017 12:45
    terça-feira, 7 de fevereiro de 2017 12:28
  • Kaio,

    O usuário só vai buscar o arquivo manualmente apenas quando o sistema não achar o arquivo de forma automática.

    Como você não usa banco de dados, você pode usar um .txt para guardar o path.

    Neste link que te deixo aqui embaixo mostra como fazer para criar, abrir, ler, alterar ou deletar num .txt e como fazer isso no VB. Inclusive te mostra como abrir um dialog box para o usuário buscar manualmente um arquivo. Da uma olhada.

    http://www.macoratti.net/vbn_txt.htm

    • Sugerido como Resposta JoaoMarques- terça-feira, 7 de fevereiro de 2017 13:01
    terça-feira, 7 de fevereiro de 2017 12:44
  • Bom dia Pablo, vc tem mais alguma ideia do que posso fazer?
    quarta-feira, 8 de fevereiro de 2017 10:54
  • Bom dia Kaio,

    Na verdade nos links que te passei estão as ferramentas que você precisa, agora é só juntar as partes e desenvolver o que você precisa como mais ou menos te orientei ai encima.

    Repetindo, basicamente você precisa ao iniciar a aplicação e antes de tentar abrir o arquivo, abrir o txt (onde vc vai ter um caminho padrão), testar se existe o xls no caminho que foi passado como padrão. Se não existe abre um dialog para que o usuário o busque manualmente. Selecionado o "path" ou caminho até o xls, você vai guardar isso no mesmo txt.

    Caso ao testar se o arquivo existe, ele exista realmente, você abre diretamente o arquivo com aquele path.

    quinta-feira, 9 de fevereiro de 2017 10:50