Ir ao conteúdo
  • Cadastre-se

Dúvida com macro no Excel


Weverton

Posts recomendados

Pessoal, bom dia!

Estou com um problema aqui...

Tenho um relatório em Excel com várias planilhas, e esse relatório (padrão) é gerado através de um software.

Eu precisaria que o excel ao abrir verificasse o n° do relatório (número que fica em outra planilha no mesmo arquivo) e pegasse a foto com o mesmo número em alguma pasta a ser determinada e colasse na planilha principal.

Fazendo uns testes aqui, eu consegui criar uma macro, só que ela não busca cada vez que muda-se o n° do relatório, ou seja, não consegui.

Dêem uma olhada de como ficou:

Sub teste1()

'

' teste1 Macro

' Macro gravada em 24/1/2006 por weverton

'

'

Sheets("Geral").Select

ActiveCell.FormulaR1C1 = "1000" <== Aqui é o número do relatório!

Sheets("Relatorio").Select

ActiveSheet.Pictures.Insert( _

"C:\Documents and Settings\weverton\Meus documentos\Minhas imagens\1000.gif"). _ <== Local da imagem!

Select

Selection.ShapeRange.ScaleWidth 0.58, msoFalse, msoScaleFromBottomRight

Selection.ShapeRange.ScaleHeight 0.58, msoFalse, msoScaleFromBottomRight

Selection.ShapeRange.IncrementLeft -210.75

Selection.ShapeRange.IncrementTop -188.25

ActiveWindow.SmallScroll Down:=3

Range("AH89").Select

ActiveWindow.SmallScroll Down:=-93

Range("F1:AE2").Select

End Sub

Alguém pode me ajudar???

Obrigado!

Weverton

Link para o comentário
Compartilhar em outros sites

Sub teste1()

'

Sheets("Geral").Select

'substitua o endereço do rage pelo endereço da celula q contem o 'numero do relatorio

Relatnum=Range("a1").text

Sheets("Relatorio").Select

ActiveSheet.Pictures.Insert( _

"C:\Documents and Settings\weverton\Meus documentos\Minhas imagens\" & relatnum & ".gif").Select

End Sub

"Relatnum" é uma variável que irá guardar o numero do relatório desejado na memória enquanto a planilha "Relatório" é selecionada.

Após isso, será inserida uma ficura (.gif) que tenha como nome o mesmo numero q está armazenado em "Relatnum". A pasta dessa figura tem que estar entre as aspas, antes do "&".

isso deve resolver seu problema...

Link para o comentário
Compartilhar em outros sites

Olá VBA Master!

Fiz o que você me pediu, e ficou desse jeito:

Sub teste1()

'

Sheets("Geral").Select

relatnum = Range("b3").Text

Sheets("Relatorio").Select

ActiveSheet.Pictures.Insert( _

"C:\Documents and Settings\weverton\Meus documentos\Minhas imagens\" & relatnum & ".jpg").Select

End Sub

Só que quando peço para ser executada, aparece a seguinte mensagem:

Erro em tempo de execução '1004'

Não é possível obter a propriedade Insert da classe Pictures

O que eu faço???

Obrigado!

Weverton

Link para o comentário
Compartilhar em outros sites

Tente inserir antes da linha de insert um comando para selecionar a célula de ancora da figura, mais ou menos assim...

Sub teste1()

'

Sheets("Geral").Select

relatnum = Range("b3").Text

Sheets("Relatorio").Select

'substitua o range pelo endereço da sua celula da figura...

range("a1").select

ActiveSheet.Pictures.Insert( _

"C:\Documents and Settings\weverton\Meus documentos\Minhas imagens\" & relatnum & ".jpg").Select

End Sub

isso devefuncionar... o erro ocorre, provavelmente, porque dentro da planilha relatório devia estar selecionado algum outro objeto que dava conflito com a figura... Estando com uma célula selecionada não é pra dar erro...

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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...