Notifications
Clear all

Forma de acordo com valor da célula

5 Posts
3 Usuários
0 Reactions
1,087 Visualizações
(@reviversc)
Posts: 16
Active Member
Topic starter
 

Boa tarde amigos.

Gostaria de saber se é possível alterar as dimensões de uma forma (quadrado) de acordo com valores de células x (para largura) e y (para altura).

De um jeito que a forma mude automaticamente de acordo com os valores das células.

 
Postado : 08/06/2016 12:34 pm
Fernando Fernandes
(@fernandofernandes)
Posts: 43750
Illustrious Member
 

Boa noite,

Segue sugestão utilizando VBA:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Not Application.Intersect([A1:A2], Target) Is Nothing Then
        With ActiveSheet.Shapes("Rectangle 1")
            .Width = [A1].Value 'Largura
            .Height = [A2].Value 'Altura
        End With
    End If
End Sub

É só colar o código no evento Change da sua planilha.
Insira um retângulo que, provavelmente, assumirá o nome de "Rectangle 1".
Lembrando que "Rectangle 1" é o nome da forma, que pode ser alterado conforme sua necessidade.

Abraço

Existem mil maneiras de preparar Neston. Invente a sua!
http://www.youtube.com/ExpressoExcel

 
Postado : 08/06/2016 3:23 pm
(@reviversc)
Posts: 16
Active Member
Topic starter
 

Bom dia amigo.

Primeiramente obrigado pela resposta.
Segundo, eu sou novo na parte do VB, como chego nesta parte do Evento?

 
Postado : 09/06/2016 8:36 am
(@reviversc)
Posts: 16
Active Member
Topic starter
 

Consegui encontrar... Porém, eu precisava que ele usasse uma célula que contém um valor multiplicando. exe: Cél A1 = B2*3, mas nao consigo referenciar com cálculos dentro da célula..

 
Postado : 09/06/2016 8:50 am
engeel2014
(@engeel2014)
Posts: 207
Estimable Member
 

Consegui encontrar... Porém, eu precisava que ele usasse uma célula que contém um valor multiplicando. exe: Cél A1 = B2*3, mas nao consigo referenciar com cálculos dentro da célula..

Amigo substitua a linha do código:

If Not Application.Intersect([a1:a2], Target) Is Nothing Then

Por:

If Not Application.Intersect([b1:b2], Target) Is Nothing Then

caso os dados sejam inseridos nas células "b1" e "b2"

Anexo planilha exemplo

Lucélio Ferreira dos Santos
Eng. Eletricista
CREA: DF-7165/TD
[email protected]

 
Postado : 12/07/2016 9:14 pm