Bom Dia
Qual o Código para Ordenar Objetos ???
Ex: Enviar para traz, trazer para frente, avançar e recuar.
Procurei na internet não achei, tentei gravar uma macro mas não grava!
Então o jeito é pedir ajuda aos universitários
Att.
Que tipo de objeto??
Para, via vba, manipular um shape é preciso primeiro seleciona-lo
então seria algo assim:
ActiveSheet.Shapes.Range(Array("Curved Up Arrow 1")).Select Selection.ShapeRange.ZOrder msoBringToFront 'Traz para Frente ActiveSheet.Shapes.Range(Array("Right Arrow 2")).Select Selection.ShapeRange.ZOrder msoSendBackward 'Recua ActiveSheet.Shapes.Range(Array("Seta para a direita 2")).Select Selection.ShapeRange.ZOrder msoSendToBack 'Para Traz ActiveSheet.Shapes.Range(Array("Curved Up Arrow 1")).Select Selection.ShapeRange.ZOrder msoBringForward 'Avança
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Reinaldo é uma imagem inserida em um Form.
Então vou colocar o código dentro do form para quando eu clicar na imagem ela vir pra frente.
Obrigado.
A imagem esta "carregada" em um controle de imagem? Pode postar um exemplo
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
guma, se a solicitação tiver a ver com a quele exemplo da Variaveis, são controles Image, não pesquizei a respeito desta implementação que quer, msa de uma olhada nas Propriedades do Controle, e acredito que pode utilizar dentre elas, as Propriedades Visible, Top, Left.... Size, ....
Se utilizar Visble=False, assim quando clicar na imagem ela ficara oculta e a que estiver eme abaixo aparecerá.
[]s
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Segue um modelo simples de reordenação das imagens num form.
Não é possível fazer por camadas, só "trazer para frente" (que é o 0) ou "enviar para traz" (que é o 1)
Me.Image1.ZOrder 0
ou
Me.Image1.ZOrder 1
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Sim está num controle.
Não vou postar um exemplo pois o arquivo é um pouco Grande
Modifiquei o primeiro código da seguinte maneira e deu certo.
Private Sub Image3_Click() Image3.ZOrder msoBringToFront End Sub
Obrigado
Bacana que deu certo... só uma coisinha... poxa... Credite a pessoa correta pela solução... né?
Nada contra o Reinaldo, claro, mas o código dele não faz o que vc precisa e não funciona em formulário.
Eu mandei exatamente o mesmo código que vc postou como sua solução, mandei exemplo, .... bom, vc q sabe...
F.F.
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Só para constar msoBringToFront e msoSendToBack tambem funcionam em formulario, seu retorno é exatamente o que o Fernando propoz (0 e 1)
Já msoBringForward e msoSendBackward não funcionam em formulario pois seu retorno (2 e 3) não são valores reconhecidos
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Reinaldo,
o que eu quis dizer é que o código que você propôs, apesar de também utilizar o ZOrder, é específico para planilha e Shapes em planilhas que dependeriam de seleção.
No momento que você propôs esta solução, ainda não havia mais detalhes. Portanto, é uma solução bacana, mas que não atende a solicitação.
O que me deixou chateado (com o guma, não contigo) é que, e você deve concordar comigo, não é a solução para o problema dele, e o crédito foi para a solução errada.
Mas ... segue o jogo.
Abração.
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Fernando
Eu já estava escrevendo a minha resposta após adaptar a solução do Reinaldo quando foram inseridas as demais, por isso aceitei a resposta dele.
Mas é uma boa questão já tive este problema outras vezes até tentei marcar mais de uma resposta mas não consegui. quando tenho mais de uma solução para o meu problema postada por Usuários diferentes que que eu faço???
Eu agradeço todos pela ajuda, como estou estudando VBA toda contribuição é bem vinda, mas só posso aceitar uma resposta.
E ai ???
Obrigado a todos pela ajuda e desculpe qualquer coisa.
Att.