Como animar objetos utilizando VBA

Pergunta: quem ganha a corrida? Run01.png Link para download da planilha: https://drive.google.com/open?id=1A6qdTISpCiUhEgXAygWpZbeK34Cz-cqD A lógica é a seguinte. A figura do elefante de bicicleta é um shape, que tem o nome de “Imagem 2”. Basta clicar no shape e ver o nome no painel. Run02.png O shape tem uma propriedade, chamada “Left”. Qual a posição, da esquerda para a direita. Exemplo, atribuo 10 unidades à left. Shapes(“Imagem 2”).left = 10 Para criar um efeito de animação, vou incrementando o Left por um loop (for ou while) While posicaoElef < maxLeft And posicaoMenino < maxLeft ‘Elefante With ActiveSheet.Shapes(“Imagem 2”) posicaoElef = .Left + passoElef ‘O passo controla o quão rápido este anda .Left = posicaoElef DoEvents End With Wend O comando DoEvents serve para fazer um refresh da tela. Com o menino, é a mesma coisa, mas mudando outros parâmetros. Dá para fazer outras brincadeiras, como deixar a velocidade aleatória.

Ideias técnicas com uma pitada de filosofia: https://ideiasesquecidas.com Ferramentas Excel-VBA: https://ferramentasexcelvba.wordpress.com/

Deixe um comentário

Faça o login usando um destes métodos para comentar:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s