Microsoft Excel 2010 увеличение перетаскиваемой формулы на 21 за раз

Вопрос или проблема

Можно ли перетаскивать формулу EG. =IF(AC46="","",IF(AC46=1,"W",IF(AC46=0,"L",""))) так, чтобы она увеличивалась на 21 вместо 1, чтобы следующая строка была =IF(AC67="","",IF(AC67=1,"W",IF(AC67=0,"L",""))), затем =IF(AC88="","",IF(AC88=1,"W",IF(AC88=0,"L",""))) и так далее? Это довольно трудоемко делать для каждой ячейки отдельно.

  1. Введите то, что указано ниже в ячейку A2,
    =OFFSET($A$10,ROWS($A$2:A2)*$B$2,0,1,1)
  2. и число 1 в ячейку B2
  3. Затем также в ячейке A11 введите число 1,
  4. A12: =A11+1,
  5. протяните A12 на любое количество ячеек, которое вы хотите
  6. Протяните A2 до A10.

Измените число в B2, чтобы увидеть, как A2 до A10 изменяют значения.

Успешный тест в LibreOffice


B2 определяет,
какое из значений в A11 и ниже
показать в A2 до A10.


Замените A46 в вашей первой формуле на формулу из шага 1 (очевидно, удалите =)
Либо замените $B$2 напрямую на 67,
или поместите 67 в любую ячейку и замените $B$2 на фиксированную ссылку
(абсолютную, с $, как показано для B2) на эту ячейку.


Ответ или решение

Для того чтобы создать формулу в Microsoft Excel 2010, которая будет автоматически увеличивать номер строки на 21 при перетаскивании, вы можете воспользоваться следующими шагами. Это позволит избежать трудоемкого редактирования каждой ячейки вручную.

  1. Ввод Формулы:
    В ячейке A2 (или любой другой ячейке, в которую вы хотите поместить формулу) введите следующую формулу:

    =IF(OFFSET($AC$46, (ROW(A1)-1)*21, 0) = "", "", IF(OFFSET($AC$46, (ROW(A1)-1)*21, 0) = 1, "W", IF(OFFSET($AC$46, (ROW(A1)-1)*21, 0) = 0, "L", "")))

    Обратите внимание, что здесь мы используем функцию OFFSET, чтобы изменять строку на 21 каждую итерацию, и ROW(A1), чтобы динамически получать номер текущей строки при копировании вниз.

  2. Копирование Формулы:
    После ввода формулы в A2, вы можете просто перетащить маркер заполнения (маленький квадрат в правом нижнем углу выделенной ячейки) вниз до нужного количества строк. Excel автоматически обновит формулу, увеличивая номер строки на 21 в каждом шаге.

  3. Пример:
    Если вы начнете с ячейки A2, после перетаскивания вы получите:

    • A2: =IF(OFFSET($AC$46, (ROW(A1)-1)*21, 0) = "", "", IF(…))
    • A3: =IF(OFFSET($AC$67, (ROW(A2)-1)*21, 0) = "", "", IF(…))
    • A4: =IF(OFFSET($AC$88, (ROW(A3)-1)*21, 0) = "", "", IF(…))
      И так далее.

Этот метод позволяет вам эффективно масштабировать формулу, не вводя каждую строку вручную. Вы только должны убедиться, что исходная ячейка (AC46) находится на правильном месте в вашей таблице и содержит корректные данные для обработки.

Примечание: Если у вас есть особые требования к началу с другой строки, просто измените 46 на нужный номер строки в формуле.

Оцените материал
Добавить комментарий

Капча загружается...