2017-01-09 3 views
1

Как автоматически выбрать все данные столбца? Например SUM, Когда данные A1:A20, то результат =SUM(A1:A20), когда мы изменяем данные в A1:A30, то результат автоматически становится =SUM(A1:A30), то есть выбрать все эффективные данные этого столбца или A1:End.Excel Как автоматически выбрать все данные столбца?

+0

Не могли бы вы просто '= SUM ($ A: $ A)'? Я могу это сделать, но буду использовать косвенные, и вам лучше избегать tbh. –

ответ

4

Попробуйте использовать: =SUM(A:A) Он должен идеально работать.

+0

Да, это хорошо работает, но есть ли функция, вызывающая последний элемент столбца? – user6703592

+0

Возможно, OFFSET? Что-то вроде: '= SUM (A1: (OFFSET (A10, -1, 0)))'. A10 - это строка, имеющая значение ** Total **. Если больше строк вставлено над A10, оно автоматически настраивается, поскольку A10 также сдвинется. –

+0

Думаю, это то, что вы искали: '= LOOKUP (2,1/(НЕ (ISBLANK (A: A))), A: A)' Это даст вам последнее значение. –

0

Используя VBA, вы можете использовать метод .End(xlDown) с .Select, чтобы выбрать последнюю непустую строку в столбце.

Range("A1").End(xlDown).Select

Или вместо .Select, вы можете использовать .Row, чтобы получить последний непустой номер строки.

Пример кода:

Sub SumData() 
    Dim LastRow As Long 

    LastRow = Range("A1").End(xlDown).Row 
    Cells(LastRow + 2, "A").Formula = "=SUM(A1:A" & LastRow & ")" 

End Sub 
0

Это будет работать, чтобы найти последнюю строку, используемую в диапазоне:

MAX(IF(A:A<>"",ROW(A:A))

Для того, чтобы включить, что в формуле SUM:

=SUM(INDIRECT("A1:A"&MAX(IF(A:A<>"",ROW(A:A)))

Пожалуйста, обратите внимание, что эта формула будет необходимо ввести в массив (Когда в строке формул хит Ctrl + Сдвиг + Enter) и замедлит вашу электронную таблицу, если у вас есть много данных там

+0

@ user6703592 Этот ответ получит последнюю ячейку, которая не является пустой. –

Смежные вопросы