Ir ao conteúdo
  • Cadastre-se
Entre para seguir isso  
Weverton

Dúvida com macro no Excel

Recommended Posts

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

Compartilhar este post


Link para o post
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...

Compartilhar este post


Link para o post
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

Compartilhar este post


Link para o post
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...

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, deu certinho!!!

Só que ainda preciso da sua ajuda! :looka:

Agora eu preciso que essas figuras caiam sempre na célula necessária (já está caindo) e centralizada e com tamanho padrão (só altura, por exemplo 7cm).

O que eu preciso fazer???

Obrigado pela ajuda!

Weverton

:-BEER

Compartilhar este post


Link para o post
Compartilhar em outros sites

Já consegui essa parte! :-BEER

Agora só preciso colocar a macro para ser executada assim que o documento for gerado!

Aguém sabe?

Weverton

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro 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
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações 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

×