Загрузите образец книги
В этом руководстве будет показано, как получить значение из каждой второй (или каждой n-й) строки в Excel и Google Таблицах.
Определите каждую вторую строку
Чтобы идентифицировать каждую вторую строку, мы можем использовать функцию MOD, чтобы сообщить нам, делится ли каждая строка на определенное число. Здесь мы будем использовать 2 для обозначения каждой второй строки.
1 | = МОД (СТРОКА (B3); 2) |
Мы рассмотрим это ниже.
Функция ROW - возврат номера строки
Во-первых, мы будем использовать функцию ROW, чтобы сообщить нам, в какой строке мы находимся:
1 | = СТРОКА (B3) |
В следующем разделе мы будем использовать функцию MOD, чтобы сообщить нам, делится ли номер строки на определенное число, в данном случае - 2.
Функция MOD - Показать, делится ли строка на 2
Функция MOD покажет нам, делится ли строка, в которой мы находимся, на 2.
1 | = МОД (C3,2) |
Объединение этих функций дает исходную формулу.
1 | = МОД (СТРОКА (B3); 2) |
Выбрать каждую n-ю строку
Чтобы получить каждую 3-ю (n-ю) строку, мы меняем число, на которое нужно делить, на 3 (n).
1 | = МОД (c3,3) |
Мы можем включить фильтр, чтобы отфильтровать результат MOD, необходимый для отображения определенных строк.
Получите значение из каждой n-й строки
Чтобы получить значение из каждой второй или n-й строки, мы можем использовать функции СМЕЩЕНИЕ и СТРОКА.
1 | = СМЕЩЕНИЕ ($ B $ 3, (СТРОКА (D1) * 2) -1,0) |
Мы рассмотрим это ниже.
Вернуть энную строку
Сначала мы воспользуемся функцией СТРОКА, чтобы взять 1ул Ряд. Копирование этой формулы вниз будет означать, что выбранный номер строки будет динамически изменяться, как и формула.
1 | = СТРОКА (D1) |
В следующем разделе мы будем использовать функцию OFFSET, чтобы получить значение из строки, умноженное на значение, на которое вы хотите смещать строку.
1 | = СМЕЩЕНИЕ ($ B $ 3, (D3 * 2) -1,0) |
Объединение этих функций дает исходную формулу.
1 | = СМЕЩЕНИЕ ($ B $ 3, (СТРОКА (E1) * 2) -1,0) |
Написать код VBA
Мы можем использовать процедуру VBA для обхода диапазона ячеек и возврата значения из каждой 2-й или n-й ячейки.
Следующая процедура будет проходить через диапазон ячеек и заполнять каждую вторую строку в столбце C соответствующим номером из столбца B.
123456789101112131415 | Sub SelectAltRows ()Dim rng1 As RangeDim rng2 As RangeDim x As IntegerDim NoRws как целое число'выберите диапазонУстановите rng1 = Range ("B1: B10")'подсчитать строкиNoRws = rng1.Rows.Count'перебирать каждую вторую ячейку диапазонаДля x = 1 до NoRws Шаг 2'поместите значение из столбца B в столбец Crng1.Cells (x, 1) .Offset (0, 1) = rng1.Cells (x, 1)СледующийКонец подписки |
Результатом выполнения этой процедуры будет:
Выбрать каждую другую (или каждую n-ю) строку в Google Таблицах
Эти формулы работают в Google Таблицах точно так же, как и в Excel.