lançar em outra cél...
 
Notifications
Clear all

lançar em outra célula de outra planilha ao alterar

6 Posts
2 Usuários
0 Reactions
997 Visualizações
(@rui-maciel)
Posts: 190
Reputable Member
Topic starter
 

Boa noite
Tenho uma dúvida, não consigo que o total de uma célula seja lançado na linha a seguir em outra planilha do mesmo arquivo ao sofrer alteração? Como consigo fazer tal, é que não encontro projetos na pesquisa, obrigado.
Cumprs.
Rui

 
Postado : 20/09/2016 4:15 pm
(@mprudencio)
Posts: 2749
Famed Member
 

disponibilize o arquivo com mais explicações de onde esta e para onde vai a informação

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"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.

 
Postado : 20/09/2016 4:35 pm
(@rui-maciel)
Posts: 190
Reputable Member
Topic starter
 

Boa noite MPrudencia
Segue em anexo. Queria que a célula B6 da planilha Lista ao ser alterada transporta-se o valor para a planilha Folha1 A2 e seguintes.
Abr.
Rui

 
Postado : 20/09/2016 4:46 pm
(@mprudencio)
Posts: 2749
Famed Member
 

Pode ser assim?

Marcelo Prudencio
Microsoft Excel Brasil no Facebook

"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.

 
Postado : 20/09/2016 5:06 pm
(@rui-maciel)
Posts: 190
Reputable Member
Topic starter
 

Está a funcionar, mas transporta os valores todos e não só o conteúdo da célula B6, e se o valor desta célula não se alterar não seja possível inscreve-lo da plan Folha1. Obrigado.

 
Postado : 20/09/2016 5:16 pm
(@rui-maciel)
Posts: 190
Reputable Member
Topic starter
 

Boa noite
Consegui resolver com a seguinte macro:

Sub copia_valor_celula()
    Dim w2 As Worksheet, w1 As Worksheet, last As Long, rng As Range
    
    Set w1 = Worksheets("Lista")
    Set w2 = Worksheets("Folha1")
    
    With w1
        last = .Range("$B$6").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row

        Set rng = w1.Range(.Cells(6, 1), .Cells(last, 1))
        For Each c In rng
        
            With w2

                last = .Range("A:A").Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
                
                .Cells(last + 1, 1).Value = w1.Cells(6, 2).Value
            End With
        Next
    End With

End Sub
 
Postado : 21/09/2016 2:28 pm