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

Integração Word Excel


Angelo Augusto

Pergunta

Ai pessoal estou com um serio problema, na hora que eu vou fazer um relatório eu não consigo incluir os valores das variaveis no word , sou novo em VB , não sei o que esta acontecendo , na verdade não sei como é que tenho que deixar as variaveis a serem substituidas no word. segue o codigo.... ME AJUDEM é de extrema importancia para meu trabalho!

Private Sub CB_relatorioParcial_Click()

Dim Word As Object

Dim TempoImp As Date

Dim sair As Boolean

Set Word = CreateObject("Word.Application")

'Abre o documento

Word.Documents.Open "C:\relatorioparcial.doc"

'não mostra o documento para usuario

Word.Visible = False

'Seleciona o documento inteiro

Word.Documents("relatorioparcial.doc").Select

If OB_IE.Value = True Then

FAM = OB_IE.Caption

ElseIf OB_SE.Value = True Then

FAM = OB_SE.Caption

ElseIf OB_AMV.Value = True Then

FAM = OB_AMV.Caption

ElseIf OB_SC.Value = True Then

FAM = OB_SC.Caption

End If

If OB_AFJ.Value = True Then

SubFAM = OB_AFJ.Caption

ElseIf OB_COMPONENTES.Value = True Then

SubFAM = OB_COMPONENTES.Caption

ElseIf OB_CONSTRUCAO.Value = True Then

SubFAM = OB_CONSTRUCAO.Caption

ElseIf OB_CORRECAO.Value = True Then

SubFAM = OB_CORRECAO.Caption

ElseIf OB_DEMOLICAO.Value = True Then

SubFAM = OB_DEMOLICAO.Caption

ElseIf OB_DORMENTE.Value = True Then

SubFAM = OB_DORMENTE.Caption

ElseIf OB_LASTRO.Value = True Then

SubFAM = OB_LASTRO.Caption

ElseIf OB_TRILHO.Value = True Then

SubFAM = OB_TRILHO.Caption

ElseIf OB_REMODELACAO.Value = True Then

SubFAM = OB_REMODELACAO.Caption

ElseIf OB_Nenhuma.Value = True Then

SubFAM = OB_Nenhuma.Caption

End If

' chama rotina para substituicao

Call Substitui_Var("@familia", OB_IE.Caption)

Call Substitui_Var("@subfamilia", OB_Nenhuma.Caption)

Call Substitui_Var("@item", CB_Item.Text)

Call Substitui_Var("@especificacao", RTB_Especificacao.Text)

' Salva o documento com um novo nome

ObjWord.ActiveDocument.SaveAs (relatorioparcial.doc)

'Imprime o documento aberto

Word.PrintOut True, True

TempoImp = Time

'testa se ouve erro de impressão

While Word.BackGroundPrintingStatus <> 0 And Not sairLaco

If Minute(Time - TempoImp) > 1 Then

Resp = MsgBox("O Word est´pa levando muito tempo para imprimir!!!" & vbCrLf & "Deseja encerrar?", vbYesNo)

If Resp = vbYes Then

sair = True

Else

TempoImp = Time

End If

End If

Wend

Word.Quit

MsgBox "Documento Salvo e impresso!!"

'Encerra o word

Word.Quit

' libera memoria

Set Word = Nothing

Exit Sub

'trata_erro:

MsgBox "Ocorreu um erro durante o processamento " & " - Erro numero : " & Err.Number

End Sub

'a rotina que faz a substituição das variáveis do texto

Private Sub Substitui_Var(Header As String, Data As String)

Dim Word As Object

Set Word = CreateObject("Word.Application")

'Abre o documento

Word.Documents.Open "C:\relatorioparcial.doc"

'não mostra o documento para usuario

Word.Visible = False

'Seleciona o documento inteiro

Word.Documents("relatorioparcial.doc").Select

With Word.Selection.Find

.ClearFormatting

.Text = Header

.Execute Forward:=True

End With

Clipboard.Clear /// está DANDO ERRO AQUI

Clipboard.SetText (Data)

Word.Selection.Paste

Clipboard.Clear

End Sub

EU não SEI O QUE EU TENHO que COLOCRA NO WORD PARA FAZER ISSO FUNCIONAR POIS ABRE O ARQUIVO SELECIONA MAS não TROCA OS VALORES..

MUITO OBRIGADO

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

2 respostass a esta questão

Posts Recomendados

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,2k
    • Posts
      652k
×
×
  • Criar Novo...