Macro para preencher as células de uma coluna sequencialmente quando clico em um botão

0

Estou tendo muitos problemas para descobrir isso.

Este é o meu layout:

Como você pode ver, eu tenho 2 botões.

O que eu gostaria que cada botão fizesse é:

  1. Cada vez que clico em YES , ele insere um Y em uma célula em um intervalo específico.
  2. Se eu clicar em YES novamente, ele inserirá automaticamente um Y na próxima célula sob o anterior na mesma coluna.
  3. Se eu clicar em NO , ele também continuará na coluna abaixo e inserirá um N .

Como fazer com que a saída dos botões sempre use a próxima célula livre?

    
por MaryZ 20.02.2015 / 12:26

1 resposta

3

Eu vou assumir que o resto do seu código está pronto e o que você precisa é de algum método para obter uma linha para inserir seus valores. Veja um snippet que funciona melhor se seus dados não forem muito grandes e você preferir fazer um loop:

Dim rNext as Long
rNext = 2   'First used row in column F
Do Until LenB(Range("F" & rNext).Value) = 0
    rNext = rNext + 1
    If rNext = ActiveSheet.Rows.Count Then Exit Do
Loop

E aqui está uma solução mais robusta e um pouco mais rápida:

Dim rNext As Long
rNext = Range("F2:F" & Cells.Rows.Count).Find(vbNullString).Row

Como você pode saber no segundo exemplo, você pode fazer isso diretamente com o seguinte:

Range("F2:F" & Cells.Rows.Count).Find(vbNullString).Value = "Y"
    
por 20.02.2015 / 14:47