Olá, pessoal,
Obrigado pela vossa paciência.
Numa planilha, tenho células com o mesmo tamanho, para inserir fotos que vou tirando.
Quando selecciono a célula onde vou inserir a foto, vou a inserir, imagem, escolho a foto e ela vai para a célula antecipadamente escolhida, mas muito grande, alinhando pela esquerda e por cima.
Eu precisava que ela mantivesse o alinhamento à esquerda e por cima, mas que entrasse já com a dimensão da célula previamente selecionada, sem eu ter que andar a formatá-la nas opções de formatação, ou com o rato.
É possível?
Obrigado
Em Excel nao creio pq a imagem é um objeto externo, e que vc precisa ter a mesma salva ja no tamanho desejado.
Não creio que o excel tenha condiçoes de redimensionar a imagem sozinho.
Marcelo Prudencio
"Começar já é a metade do caminho."
Autor Desconhecido
Simplifica que simples fica.
Nicole Tomazella.
"O Simples é Sempre Melhor Que o Complicado"
Jorge Paulo Lemann.
A imagem já consta na planilha ? Pode mostrar um modelo/exemplo
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Olá, Reinaldo, obrigado.
Não, ela não consta da planilha. Será inserida caso a caso.
Anexo foto.
Obrigado
Não consegui entender qual o procedimento para inserir a imagem, todavia experimente:
For Each sh In ActiveSheet.Shapes ActiveSheet.Shapes.Range(Array(sh.Name)).Select With Selection .Top = sh.TopLeftCell.Top .Left = sh.TopLeftCell.Left .ShapeRange.Height = sh.TopLeftCell.Height '14.25 .ShapeRange.Width = sh.TopLeftCell.Width '19.5 End With Next
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Olá, muito obrigado pela resposta.
Eu não sei usar VBA. Porém, penso que fiz tudo bem, e dá o erro que pode ver na foto anexada.
É preciso criar um nome para a rotina
algo +/- assim:
Sub Ordena() For Each sh In ActiveSheet.Shapes ActiveSheet.Shapes.Range(Array(sh.Name)).Select With Selection .Top = sh.TopLeftCell.Top .Left = sh.TopLeftCell.Left .ShapeRange.Height = sh.TopLeftCell.Height '14.25 .ShapeRange.Width = sh.TopLeftCell.Width '19.5 End With Next end sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Muito obrigado.
Agora dá outro erro, o run time 91.
Quando faço o debug, dá o erro da foto 2
Tenha paciência...
Pode disponibilizar sua planilha, altere dados para fictícios se necessário; porem que seja representativa do layout da mesma
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Concerteza, não tenho problemas.
Vai em baixo.
Obrigado
Existem outra "shapes" em seu arquivo e o tamanho da imagem corresponderão a varias celulas mesclada
Então exeprimente assim
Sub AjustaTamanho() For Each sh In ActiveSheet.Shapes If sh.Name Like "*Pict*" Then ActiveSheet.Shapes.Range(Array(sh.Name)).Select With Selection .Top = sh.TopLeftCell.Top .Left = sh.TopLeftCell.Left .ShapeRange.Height = 54 .ShapeRange.Width = 74.25 End With End If Next End Sub
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Obrigado pela sua resposta.
Ao tentar criar a função, no VBA, quando carrego na "seta" verde (run), não acontece nada.
Acho que eu já devo até ter estragado o meu VBA.
Acho que vou tentar aprender VBA, para não fazer mais asneiras.
Segue em anexo o seu arquivo modificado.
Clique no botão Ajuste e veja se executa
Obs.: Desculpe deletei sua MP sem responder, porem não tenho Team Viewer
Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel
Muito obrigado!
Resolveu mesmo.
Não está seguindo o meu pedido de ajuda em viewtopic.php?f=29&t=18504 ?
Talvez me possa ajudar também lá.
Mas agradeço desde já muito esta solução.