olá, estou tentando fazer um recibo em vb6 com impressao no word. já estou na parte final, foi criado um banco mdb e um formulario de recibo no word mas quando mando gerar o recibo o mesmo é visualizado de forma correta mas as variaveis não estao sendo trocadas como o nome de cliente código etc.. fiz em tres tipos de conexao em mala direta, conexao variaveis direta e Bookmarks mas nehuma das opçoes foram bem sucedidas gostaria de saber se alguém pode me ajudar!
exemplo
Recibo R$ @valor
RECEBEMOS do(s) Sr(a.) @nome a importância de R$ @valor (@extenso ), correspondente a @correspondente
Utilizamos cookies e tecnologias semelhantes de acordo com a nossa Política de Privacidade, e ao continuar navegando, você concorda com estas condições.
Pergunta
GILBERTO NOBRE
olá, estou tentando fazer um recibo em vb6 com impressao no word. já estou na parte final, foi criado um banco mdb e um formulario de recibo no word mas quando mando gerar o recibo o mesmo é visualizado de forma correta mas as variaveis não estao sendo trocadas como o nome de cliente código etc.. fiz em tres tipos de conexao em mala direta, conexao variaveis direta e Bookmarks mas nehuma das opçoes foram bem sucedidas gostaria de saber se alguém pode me ajudar!
exemplo
Recibo R$ @valor
RECEBEMOS do(s) Sr(a.) @nome a importância de R$ @valor (@extenso ), correspondente a @correspondente
Natal/RN, @dia de @mes de @ano
____________________________
Assinatura
cód
Private Sub Command1_Click()
Dim temp As String
On Error GoTo trata_erro
Set objWord = New Word.Application
' Desabilita o botao de comando
cmdContrato.Enabled = False
' nome do relatorio pré montado
objWord.Documents.Open (".\recibo1.doc")
' chama rotina para substituicao
Call Substitui_Var("@nome", txtNome)
Call Substitui_Var("@valor", txtValor)
Call Substitui_Var("@extenso", txtExtenso)
Call Substitui_Var("@correspondente", Data1.Recordset("correspondente"))
Call Substitui_Var("@dia", Data1.Recordset("dia"))
Call Substitui_Var("@mes", Data1.Recordset("mes"))
Call Substitui_Var("@ano", Data1.Recordset("ano"))
' Salva o documento com um novo nome
objWord.ActiveDocument.SaveAs (txtcontrato)
'Encerra o word
objWord.Quit
' informa ao usuario que o contrato foi gerado
MsgBox "Contrato gerado com sucesso! em : " & txtcontrato, vbInformation, " Contrato Gerado "
' libera memoria
Set objWord = Nothing
Exit Sub
trata_erro:
MsgBox "Ocorreu um erro durante o processamento " & " - Erro numero : " & Err.Number
End Sub
___________________
Private Sub Substitui_Var(Header As String, Data As String)
With objWord.Selection.Find
.ClearFormatting
.Text = Header
.Execute Forward:=True
End With
Clipboard.Clear
Clipboard.SetText (Data)
objWord.Selection.Paste
Clipboard.Clear
End Sub
________________
errro apresentado, apresenta erro no" With objWord.Selection.Find" e informa "object required"
Private Sub Substitui_Var(Header As String, Data As String)
>>>> With objWord.Selection.Find<<<<<
.ClearFormatting
.Text = Header
.Execute Forward:=True
End With
Clipboard.Clear
Clipboard.SetText (Data)
objWord.Selection.Paste
Clipboard.Clear
End Sub
____
obs. peço aos colegas que me ajudem!
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.