Ir para conteúdo
Fórum Script Brasil
  • 0

Abrir 2 documeto Word


Chiron

Pergunta

Tenho dois arquivos em word ( YYY-61-20-FT-001.doc e XXX-61-20-HV-001), preciso abri-los na seguinte forma:

em um form chamado "frmProcedimentos" contém:

botão "btnFichaCalibracao"

toolStrip1 para buscar dados no banco access

ao clicar no botao deve-se abrir um documento word OU o outro dependendo do que estiver escrito no toolStrip1.

Para abrir apenas um documento eu fiz desta maneira:

Private sub btnFichaCalibracao_click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFichaCalibracao.click

Dim x As String

Try
     x = ToolStripTextBox.Text
     ObjWord = CreateObjetc("word.application")
     ObjWord.documents.open("C:VBProcedimentosYYY-" & x & ".doc")
     ObjWord.visible = true
     Me.hide()
     Me.Validade()
Catch ex As Exception
     MessageBox.Show ("Ficha de Calibração indisponivel", "",MessageBoxButtons.OK, MessageBoxIcon.Information)
End Try

deu certinho para abrir esse documento onde inicia a toolStrip com YYY porem como abrir o documento que inicia com XXX ?

Editado por quintelab
Adicionado BBCode Code
Link para o comentário
Compartilhar em outros sites

12 respostass a esta questão

Posts Recomendados

  • 0
Chiron, seja bem vindo ao Fórum ScriptBrasil, de uma olhada em nossas regras: Regras do Fórum ScriptBrasil

Não consegui entender a sua dificuldade.

Abraços...

Obrigado pela boa vinda,

Passa uma borracha , pois ate eu não consegui entender a duvida lol.

já estou desesperdo onde resolver isso, já fui nuns 5 forum, orkut, marcoratty, etc e não tem cristo de resolver isso.

Quero adicionar no projeto o Basico do Basico, abrir um documento que esta em Word no meu diretorio. deve-se abrir esse documento ao clicar num botao. Parece simples, mas são mais de 3500 documentos, sendo assim não posso usar if end if 3500 vezes.

Se dar uma olhada o codigo que fiz para abrir apenas um documento vai notar que fiz certo porem preciso colocar inteligencia nesse botao para que ele saiba qual o documento word estou precisando que ele abra entre esses 3500 que estao salvo no meu PC.

Link para o comentário
Compartilhar em outros sites

  • 0
ue mas pra abrir com XXX é so escrever XXX no lugar de YYY ue.

o q vai estar escrito no toolstrip?? é o nome do arquivo??

então não é so passar o nome q ta na toolstrip e acabou??

como você sabe qual arquivo quer abrir??

Kuroi agradeço de coração a atençao pois já estou 5 dias com o projeto parado nessa "pendenga" basica.

asim:

esse é o codigo onde eu abro um procedimento em word:

Private sub btnFichaCalibracao_click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFichaCalibracao.click

Dim x As String

Try

x = ToolStripTextBox.Text

ObjWord = CreateObjetc("word.application")

ObjWord.documents.open("C:VBProcedimentosYYY-" & x & ".doc")

ObjWord.visible = true

Me.hide()

Me.Validade()

Catch ex As Exception

MessageBox.Show ("Ficha de Calibração indisponivel", "",MessageBoxButtons.OK, MessageBoxIcon.Information)

End Try

o que vai aparecer no tollstrip?

vai aparecer somente o TAG do instrumento. Exemplo: 61-10-FT-001

Qual o nome do documento word refernte ao procedimento que vai abrir qaundo aparecer 61-10-FT-001 no toolstrip ?

YYY-61-10-FT-001

Onde esta esse arquivo?

C:VBProcedimentos\yyy-61-10-ft-001

Como sei o arquivo que deve-se abrir?

Quando clico em um dos 3500 espalhado pelo projeto, aparece no toostrip o tag. exemplo: 61-10-ft-001.

OBS: No codigo acima em vermelho tem :

("C:VBProcedimentosYYY-" & x & ".doc") apos o & tem o x que é declarado como sendo a variavel que vai aparecer dentro do toolstrip ( os TAGs "61-10-FT-001"; "61-10-HV-068"; "61-45-LT-002"; etc...)

Como esta salvo os outros documentos word que devem ser aberto ao clicar no btnFichaCalibracao ?

C:VBProcedimentos\yyy-

C:VBProcedimentos\zzz-

C:VBProcedimentos\xxx-

C:VBProcedimentos\aaa-

etc...

Gente to quase perdendo o emprego pelos dias inativo, não sou programador, sou tecnico em automação, trabalho com PLCs mas o cliente tava precisando disso e me meti a besta de me meter nessa furada, já fiz 90% do projeto so faltou abrir esses procedimentos. POR FAVOR tentem dar uma forçinha ai.

Muito Obrigado.

Editado por Chiron
Link para o comentário
Compartilhar em outros sites

  • 0

se eu entendi, o problema é q a tag so vai trazer por exemplo 61-10-ft-001, mas o comeco do nome tb é variavel, e pode ser yyy, xxx e etc, certo??

mas ai é q ta. como você sabe se é yyy, xxx e etc?? no toolstrip não vai tar escrito certo?? mas como você vai saber?? tem alguma coisa a mais??

Quando clico em um dos 3500 espalhado pelo projeto, aparece no toostrip o tag. exemplo: 61-10-ft-001.

essa parte eu não entendi. você quer dizer 3500 arquivos?? eles tão espalhados no projeto onde?? e onde você clica?? tipo em q objeto?? é um listbox ou qualquer coisa assim?? ele tras os nomes dos arquivos?? então acho q o melhor seria você pegar de la, não??

ou ele vai te passar a tag e você vai ter q procurar na pasta qualquer arquivo q tenha essa tag no nome e abri-lo, seria isso??

Link para o comentário
Compartilhar em outros sites

  • 0
se eu entendi, o problema é q a tag so vai trazer por exemplo 61-10-ft-001, mas o comeco do nome tb é variavel, e pode ser yyy, xxx e etc, certo??
Não, a variavel é so o TAG "61-10-FT-001, etc..."; o yyy é o nome do arquivo que corresponde ao procedimento de calibração para transmissores, xxx eu defini para diferenciar procedimentos para valvulas de controle, etc cada instrumento vai levar essas letras apenas para diferenciar os TAGs dentro do diretorio que encontram-se todos os procedimentos

mas ai é q ta. como você sabe se é yyy, xxx e etc??

no toolstrip não vai tar escrito certo??
CERTO, apenas o TAG vai estar no tollstrip

Quando clico em um dos 3500 espalhado pelo projeto, aparece no toostrip o tag. exemplo: 61-10-ft-001.

essa parte eu não entendi. você quer dizer 3500 arquivos?? eles tão espalhados no projeto onde?? e onde você clica?? tipo em q objeto?? é um listbox ou qualquer coisa assim?? ele tras os nomes dos arquivos?? então acho q o melhor seria você pegar de la, não??

Bem...

Sim são mais de 3500 TAGS (61-19-FT-001, 61-32-HV-001, etc)

Estao espalhado em 32 Forms, esses forms possuem uma picture box que mostra a distribuição dos TAGs pela area industrial, cada TAG possui um Botao que ao ser clicado abre o frmCadastro, nesse forme de cadastro esta os dados do instrumento que sera exibido apos clicar no botao.

Exemplo:

Num form de uma determinada area industrial tem 27 TAGs então tem 27 btns você pecisa saber os dados desse TAG como, localização, range de calibração, quem instalou, quando foi a ultima manutençao, etc... então você clica no botao e abre-se o frmCadastro com todas essa informaçoes (buscada no banco dados ) esse form de cadastro tambem possui o botao Ficha de calibração, cada instrumento tem uma ficha diferente uma da outra.

Por favor não desiste da minha duvida. se mesmo assim não entender por favor pergunte. estou disposto a abrir o MSN e autorizar a rodar o software via o suporte do windows para tirar as duvidas e achar uma solução

Link para o comentário
Compartilhar em outros sites

  • 0

não vo desistir, entretando ta meio dificil mesmo pra entender...

deu certinho para abrir esse documento onde inicia a toolStrip com YYY porem como abrir o documento que inicia com XXX ?

tipo, o q preciso saber é: como você sabe quando tem q ser YYY e quando tem q ser XXX?? essa informacao não vem de algum lugar??

essa informacao simplesmente é a chave pra resolver o seu problema.

você diz aqui q:

o yyy é o nome do arquivo que corresponde ao procedimento de calibração para transmissores, xxx eu defini para diferenciar procedimentos para valvulas de controle

ta bom, você sabe isso... mas o programa sabe?? tem algum lugar no programa q diz se é procedimento de calibração ou se é procedimento de valvula??

você so precisa ler essa informacao e escrever na string.

Link para o comentário
Compartilhar em outros sites

  • 0

BINGO!!!!!! começou a clarear as ideias, lol. :D

deu certinho para abrir esse documento onde inicia a toolStrip com YYY porem como abrir o documento que inicia com XXX ?
tipo, o q preciso saber é: como você sabe quando tem q ser YYY e quando tem q ser XXX?? essa informacao não vem de algum lugar??

essa informacao simplesmente é a chave pra resolver o seu problema.

Realmente so eu sei, pois coloquei essa 3 letras "YYY, XXX, ZZZ, etc..." no nome do arquivo salvo no pc, isso serve para diferenciar os diversos "procedimentos de calibração" dos instrumentos. Lembrando que quando desejo abrir procedimento de calibração de válvulas, vai estar na frente do TAG as 3 letras XXX.

você diz aqui q:

o yyy é o nome do arquivo que corresponde ao procedimento de calibração para transmissores, xxx eu defini para diferenciar procedimentos para valvulas de controle
ta bom, você sabe isso... mas o programa sabe?? tem algum lugar no programa que diz se é procedimento de calibração ou se é procedimento de valvula??

você so precisa ler essa informacao e escrever na string.

Kuroi voce matou a charada, o mais importante nisso tudo foi que voce não me deu de mao beijada, voce fez eu pensar, isso é que mais me deixa feliz. Bem...partindo do principio que não mais é indicado colocar o IF / end if e sim uma string, colocarei uma string para ler o caminho? exemplo: C:/VBProcedimentos/ ... então a string deveria ler o que segue dentro desse aminho apos o /, ler se é xxx, yyy, zzz, etc... mas dai terei que declarar novas variaveis ? é esse o caminho?

Link para o comentário
Compartilhar em outros sites

  • 0

mas então, o nome do arquivo ta escrito em algum lugar no programa??

em algum lugar no programa, esta indicado se é xxx ou yyy??

você não precisa de um if pra cada arquivo, mas talvez precise pra verificar o procedimento.

exemplo, se for "calibração para transmissores", você preenche a variavel com "xxx".

se for "valvulas de controle", você preenche com "yyy".

Link para o comentário
Compartilhar em outros sites

  • 0
mas então, o nome do arquivo ta escrito em algum lugar no programa??
Sim, ObjWord.documents.open("C:VBProcedimentosYYY-" & x & ".doc")

em algum lugar no programa, esta indicado se é xxx ou yyy?
informado acima

você não precisa de um if pra cada arquivo, mas talvez precise pra verificar o procedimento.

exemplo, se for "calibração para transmissores", você preenche a variavel com "xxx".

se for "valvulas de controle", você preenche com "yyy".

è essa a ideia, pois salvei os arquivos com yyy para serem referente a valvulas e xxx para transmissore e assim vai indo.

Não seria mais facil algo to tipo assim:

Private sub btnFichaCalibracao_click (ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnFichaCalibracao.click

Dim x As String

Try

x = ToolStripTextBox.Text

ObjWord = CreateObjetc("word.application")

IF NOT 'se não encontar

ObjWord.documents.open("C:VBProcedimentosYYY-" & x & ".doc") THEN ' então encontra

ObjWord.documents.open("C:VBProcedimentosZZZ-" & x & ".doc") THEN ' ou então

ObjWord.documents.open("C:VBProcedimentosXXX-" & x & ".doc") THEN ' ou então

ObjWord.documents.open("C:VBProcedimentosAAA-" & x & ".doc") THEN ' ou então

ObjWord.documents.open("C:VBProcedimentosBBB-" & x & ".doc") THEN ' ou então

ObjWord.documents.open("C:VBProcedimentosCCC-" & x & ".doc")

ObjWord.visible = true

Me.hide()

Me.Validade()

Catch ex As Exception

MessageBox.Show ("Ficha de Calibração indisponivel", "",MessageBoxButtons.OK, MessageBoxIcon.Information)

END IF

End Try

Claro que esse codigo é doido, mas a ideia seria essa, se não encontrar um arquivo YYY procure pelo ZZZ, se não achar ele procure pelo XXX e vai indo ate achar o maldito.

Recordadno que essas letras estariam dentro do codigo desse modo que estas ai, apos as letras o & e a variavel. E os arquivos estariam salvo naquele sistema de ZZZ-61-10-FT-001, YYY-61-10-HV-001

Link para o comentário
Compartilhar em outros sites

  • 0
Claro que esse codigo é doido, mas a ideia seria essa, se não encontrar um arquivo YYY procure pelo ZZZ, se não achar ele procure pelo XXX e vai indo ate achar o maldito.

a boa, ideia. se não existir a mesma tag em XXX e YYY por exemplo, então vai funcionar sem problemas.

usa a funcao Dir() pra isso:

If Dir("C:VBProcedimentosYYY-" & x & ".doc") <> "" Then
    ObjWord.documents.open("C:VBProcedimentosYYY-" & x & ".doc")
ElseIf Dir("C:VBProcedimentosXXX-" & x & ".doc") <> "" Then
    ObjWord.documents.open("C:VBProcedimentosXXX-" & x & ".doc")
ElseIf ...
    ...
    ...
End If[/code]

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...