Aplique uma fórmula a uma coluna inteira, já que o número de linhas está mudando de um arquivo de origem?

0

Eu tenho uma conexão com uma fonte de arquivo de texto para que a planilha do excel seja atualizada automaticamente. Portanto, o número de linhas está sempre aumentando toda vez que é atualizado. Como posso aplicar uma fórmula a uma coluna inteira?

Clicar duas vezes na caixa no canto inferior da célula aplica a fórmula somente às células anteriores antes que a conexão seja atualizada, e as linhas recém-adicionadas na parte inferior não recebem a fórmula.

    
por Marlon 24.07.2014 / 09:17

1 resposta

0

Sua pergunta não indica qual fórmula você deseja aplicar e lê como você pode aplicar uma fórmula para uma coluna inteira quando o número de linhas é desconhecido.

Algumas ideias

Range("A:A") 'this grabs the entire range

Então, você poderia fazer

Dim rng As Range
Dim row As Range
Dim cell As Range

Set rng = Range("A1:C2")

For Each row In rng.Rows
  For Each cell in row.Cells
    'logic
  Next cell
Next row

Ou, você pode continuar indo para a próxima linha até a próxima linha ficar vazia

dim row as integer
row = 1

do while (Range("A" & row).value<>"")
    'logic
    row= row + 1
loop

A sua pergunta também indica que está apenas fazendo a planilha inteira quando você a carrega pela primeira vez, depois, quando você aperta o botão, ela não é aplicada a novas entradas. Isso significa que ele não está contando o número total de linhas corretamente, então você pode usar algo como o acima para garantir que ele sempre faça uma iteração em todas as linhas.

    
por 24.07.2014 / 09:52