Excel- Gere uma lista da entrada de célula única

0

A minha pergunta é basicamente como você pode gerar uma lista no Excel com base em uma única entrada de célula?

Por exemplo, o usuário digita 10 e depois o substitui por 20 e depois 30 etc, é possível gerar uma lista como:
10
20
30
etc

EDIT: Como um requisito adicional, é possível ajustar o código ou fornecer um código adicional para permitir instâncias adicionais disso? Por exemplo, gere uma lista adicional para uma segunda ou terceira entrada de célula única.

Obrigado pela ajuda!
Alistair

    
por Alistair 13.01.2015 / 23:04

2 respostas

1

Este exemplo monitora alterações do usuário na célula A1
A lista é construída na coluna B iniciando na célula B2

Coloque a seguinte macro de eventos na área de código da planilha:

Private Sub Worksheet_Change(ByVal Target As Range)
    Dim RR As Range, N As Long, v As Variant
    Set RR = Intersect(Target, Range("A1"))
    If RR Is Nothing Then Exit Sub
    v = Range("A1").Text
    N = Cells(Rows.Count, "B").End(xlUp).Row + 1
    Application.EnableEvents = False
        Range("B" & N).Value = v
    Application.EnableEvents = True
End Sub

Por ser um código de planilha, é muito fácil de instalar e usar automaticamente:

  1. clique com o botão direito do mouse no nome da guia próximo à parte inferior da janela do Excel
  2. selecione Exibir código - isso abre uma janela do VBE
  3. cole o material e feche a janela do VBE

Se você tiver alguma dúvida, tente primeiro em uma planilha de teste.

Se você salvar a pasta de trabalho, a macro será salva com ela. Se você estiver usando uma versão do Excel posterior a 2003, deverá salvar o arquivo como .xlsm em vez de .xlsx

Para remover a macro:

  1. abrir as janelas do VBE como acima
  2. limpe o código
  3. feche a janela do VBE

Para saber mais sobre macros em geral, consulte:

link

e

link

Para saber mais sobre macros de eventos (código da planilha), consulte:

link

As macros devem estar ativadas para que isso funcione!

    
por 14.01.2015 / 01:21
0

Na célula A1 coloque 10, em A2 coloque = A1 + $ A $ 1
Puxe a célula A2 para baixo.
Eu fiz o upload da solução .

    
por 13.01.2015 / 23:24