Notifications
Clear all

Ao passar o mouse mudar foto

10 Posts
4 Usuários
0 Reactions
5,818 Visualizações
(@julias)
Posts: 19
Eminent Member
Topic starter
 

Oi
Ao passar o mouse mudar foto é possivel?
Tentei fazer inserindo duas fotos pelo menu Inserir e depois imagem - do arquivo, mas não consegui.

tentei esse codigo

Private Sub Img1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
ActiveSheet.DrawingObjects("Img2").Visible = True
ActiveSheet.DrawingObjects("Img1").Visible = False
End Sub

Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
ActiveSheet.DrawingObjects("Img2").Visible = False
ActiveSheet.DrawingObjects("Img1").Visible = True
End Sub
 
Postado : 10/06/2013 4:45 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

julias,

Bom Dia!

Não sei exatamente o que é que você está tentando fazer. Se é trabalhar uma figura na própria interafce do Excel ou se é em um Userform. Todavia, fiz um exemplo aqui, em um Userform, onde se o usuário pausar o mouse em cima do objeto Image, surge a figura é carregada, se tirar o mouse para o formulário a imagem "desaparece". O Código para isso é esse:

Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Image1.Picture = LoadPicture("C:UsersF046779DocumentsWagnerImagensDSCF4633.JPG")
End Sub
Private Sub UserForm_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Image1.Picture = LoadPicture("")
End Sub

 
Postado : 10/06/2013 5:20 am
(@julias)
Posts: 19
Eminent Member
Topic starter
 

Oi wagner, é bem isso ai mesmo mas direto na planilha do excel, eu inseri as imagens na planilha (a imagem2 eu ja ocultei com ActiveSheet.DrawingObjects("imagem2").Visible = False) e gostaria que assim que eu passar o mouse sobre a imagem1 ela ocultasse a imagem1 e exibisse no lugar a imagem2, ao sair do mouse da imagem2 fizesse o processo reverso.

 
Postado : 10/06/2013 5:27 am
(@wagner-morel-vidal-nobre)
Posts: 4063
Famed Member
 

Ok.

Veja se assim resolve:

Private Sub Image1_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Image2.Picture = LoadPicture("")
    Image1.Picture = LoadPicture("C:UsersF046779DocumentsWagnerImagensDSCF4639.JPG")
End Sub
Private Sub Image2_MouseMove(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
    Image1.Picture = LoadPicture("")
    Image2.Picture = LoadPicture("C:UsersF046779DocumentsWagnerImagensDSCF4633.JPG")
End Sub
 
Postado : 10/06/2013 6:48 am
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

O exemplo anexo faz o que você quer mas com as figuras armazenadas em uma aba :

mouse move shape in sheets

Fonte : http://boisgontierjacques.free.fr/pages ... images.htm

Além deste modelo no link acima temos vários outros, vale a pena dar uma olhada.

[]s

 
Postado : 10/06/2013 6:50 am
(@julias)
Posts: 19
Eminent Member
Topic starter
 

Os dois exemplos estão muito próximos do que preciso.

É bem por aí mesmo, mas eu queria que isso aplicasse nos objetos de desenho pois minhas planilhas já estão com as figuras/fotos inseridas.

Wagner, seu exemplo tem como fazer tipo assim ou parecido?
Image1.Picture = LoadPicture(DrawingObjects("Img1").Select)

Mauro, se o seu exemplo puder fazer sem usar incorporar no controle de imagem, apenas nas figura é exatamente o que eu preciso.

Brigadinha.

 
Postado : 11/06/2013 5:40 am
(@julias)
Posts: 19
Eminent Member
Topic starter
 

Oi, minha planilha esta no trabalho, e na verdade são varios arquivos.
mas é tipo esse modelo que estou anexando
Eu quero passar o mouse na Galinha pintadinha e aparecer a Dora aventureira, mas a Dora vai estar oculta com o codigo que esta no modulo1 sub ocultar()

 
Postado : 11/06/2013 6:42 pm
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

julias, até onde sei, uma figura inserida não tem propriedades iguais ao dos Objetos, e um Controle Image apos inserido você pode ver na Janela Propriedades tem varias, o que não ocorre com a imagem.

Então me baseando em um do sexemplos do site que indiquei no post anterior chegamos a seguinte situação :
1° ) Inserimos as duas Figuras e as nomeamos;
2° ) Inserimos um Controle do Tipo Image, se for o primeiro, ficara com o nome Image1 e na Barra de Formula estará: =INCORPORAR("Forms.Image.1";"")
3° Na Janela Propriedades deste Controle alteramos as seguintes Propriedades :
BackStyle: fmBackstyleTransparent
BorderStyle: fmBorderStyleNone
4° ) Arrastamos este objeto para cima das figuras, e Ajustamos para que o Foco do mesmo fique na frente das imagens, clicamos com o Botão direito em cima do mesmo e na Opção Ordem selecionamos "Trazer para Frente"

Feito isto, se o nome do Objeto Image for o mesmo que está na Rotina "Image1", a rotina funcionará quando passarmos o Mouse sobre o mesmo.

Veja no Exemplo adaptado :

Mouse Over sobre Image

Faça os testes e veja se seria isto.

[]s

 
Postado : 11/06/2013 7:47 pm
(@julias)
Posts: 19
Eminent Member
Topic starter
 

Dessa maneira ficou ótimo.

Obrigada.

 
Postado : 12/06/2013 5:27 am
(@anderson)
Posts: 0
New Member