Ir ao conteúdo

Posts recomendados

Postado

Estou realizando um programa no qual desejo substituir palavras-chaves em um texto word pela entrada de dados no use form do excel. O problema é que estou tentando realizar o mesmo procedimento para imagens(substituir texto por imagem inserida no use form) mas está dando erro. alguém possui uma solução: 

 

Segue o código usado:

 

Private Sub btnRelatorio_Click()

Set WORD1 = CreateObject("Word.Application")
    WORD1.Visible = True

    Set DOC = WORD1.Documents.Open("C:\Users\yuri.silva\Documents\Vitória\Teste 3\Modelo.docx") 'caminho para o relatorio modelo

    With DOC

        .Application.Selection.Find.Text = "#ATIV" 'palavras com #será sustituida pela informação do txtid
        .Application.Selection.Find.Execute
        .Application.Selection.Range = txtAtiv


        .Application.Selection.Find.Text = "#DAT" 'palavras com #será sustituida pela informação do txtmotivo
        .Application.Selection.Find.Execute
        .Application.Selection.Range = txtData
        
        
        
        
        'COMANDO PARA A IMAGEM
        

                Dim wdRg As Object
            Set wdRg = .Content
            Dim pic As Object
            wdRg.Find.Execute FindText:="#DESCRICAO"
            wdRg.Text = ""
            Set pic = wdRg.InlineShapes.AddPicture(Filename:=image1, _
                                 LinkToFile:=False, _
                                 SaveWithDocument:=True)
                pic.LockAspectRatio = msoTrue
                pic.Width = 150
                pic.Height = 150

        
        If Dir("C:\Relatorios\Relatorio exemplo.docx") <> "" Then 'comando para salvar o documento como o nome relatorio exemplo
          Kill "C:\Relatorios\Relatorio exemplo.docx"              'comando para salvar o documento como o nome relatorio exemplo
        End If
        .SaveAs ("C:\Users\yuri.silva\Documents\Vitória\Teste 3\Relatorio\Relatorio exemplo.docx") 'comando para salvar o documento como o nome relatorio exemplo
        '.Close
    End With

    WORD1.Quit
    Set DOC = Nothing
    Set WORD1 = Nothing


MsgBox ("Relatório gerado com sucesso!")

End Sub

Erro VBA.png

Dessa forma consigo puxar um foto direto do pc, mas queria que puxasse do useform, alguém tem alguma solução?

 

Set pic = wdRg.InlineShapes.AddPicture(Filename:="C:\Users\yuri.silva\Documents\Vitória\Teste 3\2.jpg", _
                                 LinkToFile:=False, _
                                 SaveWithDocument:=True)
                pic.LockAspectRatio = msoTrue
                pic.Width = 150
                pic.Height = 150

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!