Как перевернуть данные в столбцах и строках Excel (вертикально и горизонтально)

  • Поделись Этим
Michael Brown

В учебнике показано несколько быстрых способов переворачивания таблиц в Excel по вертикали и горизонтали с сохранением исходного форматирования и формул.

Переворачивание данных в Excel звучит как тривиальная задача в один клик, но, к удивлению, такой встроенной опции не существует. В ситуациях, когда вам нужно изменить порядок данных в столбце, расположенном в алфавитном порядке или от наименьшего к наибольшему, вы можете воспользоваться функцией сортировки Excel. Но как перевернуть столбец с несортированными данными? Или как изменить порядок данных в таблице, расположенной горизонтально по строкам?Вы получите ответы на все вопросы в ближайшее время.

    Переворачивание данных в Excel по вертикали

    Проявив немного творчества, вы можете придумать несколько различных способов перевернуть столбец в Excel: с помощью встроенных функций, формул, VBA или специальных инструментов. Подробные шаги по каждому методу приведены ниже.

    Как перевернуть столбец в Excel

    Чтобы изменить порядок данных в столбце по вертикали, выполните следующие действия:

    1. Добавьте вспомогательный столбец рядом со столбцом, который вы хотите перевернуть, и заполните его последовательностью чисел, начиная с 1. Этот совет показывает, как сделать это автоматически.
    2. Отсортируйте столбец чисел в порядке убывания. Для этого выделите любую ячейку в столбце-помощнике, перейдите в меню Вкладка данных > Сортировка и фильтр группу, и нажмите кнопку Сортировать от наибольшего к наименьшему (ZA).

    Как показано на скриншоте ниже, это отсортирует не только числа в столбце B, но и исходные элементы в столбце A, изменив порядок следования строк:

    Теперь вы можете смело удалить вспомогательную колонку, поскольку она вам больше не нужна.

    Совет: Как быстро заполнить столбец серийными номерами

    Самый быстрый способ заполнить столбец последовательностью чисел - использовать функцию автозаполнения Excel:

    • Введите 1 в первую ячейку и 2 во вторую (ячейки B2 и B3 на скриншоте ниже).
    • Выделите ячейки, в которые вы только что ввели числа, и дважды щелкните в правом нижнем углу выделения.

    Вот и все! Excel автоматически заполнит столбец с серийными номерами до последней ячейки с данными в соседнем столбце.

    Как перевернуть таблицу в Excel

    Приведенный выше метод также работает для изменения порядка данных в нескольких столбцах:

    Иногда (чаще всего при выделении всего столбца чисел перед сортировкой) Excel может вывести на экран сообщение Предупреждение о сортировке диалог. В этом случае проверьте Расширить выбор опцию, а затем нажмите кнопку Сортировать кнопка.

    Совет. Если вы хотите переключать строки и столбцы используйте функцию Excel TRANSPOSE или другие способы транспонирования данных в Excel.

    Как перевернуть столбцы в Excel с помощью формулы

    Другой способ перевернуть столбец вверх ногами заключается в использовании этой общей формулы:

    ИНДЕКС( ассортимент , ROWS( ассортимент ))

    Для нашего набора данных формула выглядит следующим образом:

    =INDEX($A$2:$A$7,ROWS(A2:$A$7))

    ...и безупречно разворачивает колонку А:

    Как работает эта формула

    В основе формулы лежит функция INDEX(array, row_num, [column_num]), которая возвращает значение элемента в массив на основе номеров строк и/или столбцов, которые вы укажете.

    В массив подается весь список, который вы хотите перевернуть (A2:A7 в данном примере).

    Номер строки определяется функцией ROWS. В своей простейшей форме ROWS(array) возвращает количество строк в массив В нашей формуле именно умное использование относительных и абсолютных ссылок делает трюк с "перевернутым столбцом":

    • Для первой ячейки (B2) ROWS(A2:$A$7) возвращает 6, поэтому INDEX получает последний элемент в списке (6-й элемент).
    • Во второй ячейке (B3) относительная ссылка A2 меняется на A3, следовательно, ROWS(A3:$A$7) возвращает 5, заставляя INDEX получить предпоследний элемент.

    Другими словами, ROWS создает своего рода уменьшающийся счетчик для INDEX, чтобы он двигался от последнего элемента к первому.

    Совет: Как заменить формулы значениями

    Теперь, когда у вас есть два столбца данных, вы можете заменить формулы вычисленными значениями, а затем удалить дополнительный столбец. Для этого скопируйте ячейки с формулами, выделите ячейки, в которые вы хотите вставить значения, и нажмите Shift+F10, затем V, что является самым быстрым способом применения опции Excel "Вставить специальные> значения".

    Дополнительную информацию см. в разделе Как заменить формулы значениями в Excel.

    Как перевернуть столбцы в Excel с помощью VBA

    Если у вас есть некоторый опыт работы с VBA, вы можете использовать следующий макрос для изменения порядка данных по вертикали в одном или нескольких столбцах:

    Dim Rng As Range Dim WorkRng As Range Dim Arr As Variant Dim i As Integer , j As Integer , k As Integer On Error Resume Next xTitleId = "Flip columns vertically" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range" , xTitleId, WorkRng.Address, Type :=8) Arr = WorkRng.Formula Application.ScreenUpdating = False Application.Calculation = xlCalculationManual For j = 1 ToUBound (Arr, 2) k = UBound (Arr, 1) For i = 1 To UBound (Arr, 1) / 2 xTemp = Arr(i, j) Arr(i, j) = Arr(k, j) Arr(k, j) = xTemp k = k - 1 Next Next WorkRng.Formula = Arr Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub

    Как использовать макрос Перевернуть столбцы

    1. Откройте окно Microsoft Visual Basic for Applications ( Alt + F11 ).
    2. Нажмите Вставка > Модуль , и вставьте приведенный выше код в окно Code.
    3. Запустите макрос ( F5 ).
    4. Сайт Перевернутые колонки появится диалоговое окно с предложением выбрать диапазон для перелистывания:

    Выделите с помощью мыши один или несколько столбцов, не включая заголовки столбцов, нажмите кнопку OK и получите результат через мгновение.

    Чтобы сохранить макрос, не забудьте сохранить файл как Рабочая книга с поддержкой макросов Excel .

    Как перевернуть данные в Excel с сохранением форматирования и формул

    С помощью вышеописанных методов вы можете легко изменить порядок данных в столбце или таблице. Но что если вы хотите перевернуть не только значения, но и форматы ячеек? Кроме того, что если некоторые данные в вашей таблице управляются формулами, и вы хотите предотвратить нарушение формул при перелистывании столбцов? В этом случае вы можете воспользоваться функцией Флип функция, входящая в состав нашего пакета Ultimate Suite для Excel.

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

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

    1. Выделив любую ячейку таблицы, перейдите к ячейке Ablebits Data вкладка> Преобразование группу, и нажмите кнопку Флип > Вертикальное сальто .
    2. В Вертикальное сальто диалогового окна, настройте следующие параметры:
      • В Выберите свой диапазон поле, проверьте ссылку на диапазон и убедитесь, что строка заголовка не включена.
      • Выберите Настройка ссылок на ячейки опцию и проверьте Сохранение форматирования коробка.
      • По желанию, выберите Создайте резервную копию (выбран по умолчанию).
      • Нажмите кнопку Флип кнопка.

    Готово! Порядок данных в таблице изменен, форматирование сохранено, а ссылки на ячейки в формулах соответствующим образом скорректированы:

    Переворачивание данных в Excel по горизонтали

    До сих пор в этом руководстве мы переворачивали столбцы вверх ногами. Теперь давайте рассмотрим, как изменить порядок данных по горизонтали, то есть перевернуть таблицу слева направо.

    Как перевернуть строки в Excel

    Поскольку в Excel нет возможности сортировки строк, вам придется сначала изменить строки на столбцы, затем отсортировать столбцы, а затем транспонировать таблицу обратно. Вот подробные шаги:

    1. Используйте функцию Paste Special> Transpose для преобразования столбцов в строки. В результате ваша таблица претерпит такое преобразование:
    2. Добавьте вспомогательный столбец с числами, как в самом первом примере, а затем отсортируйте по вспомогательному столбцу. Ваш промежуточный результат будет выглядеть примерно так:
    3. Используйте Paste Special> Transpose еще раз, чтобы повернуть стол обратно:

    Примечание. Если ваши исходные данные содержат формулы, они могут быть нарушены во время операции транспонирования. В этом случае вам придется восстановить формулы вручную. Или вы можете использовать инструмент Flip, входящий в наш Ultimate Suite, и он автоматически скорректирует все ссылки для вас.

    Изменение порядка данных по горизонтали с помощью VBA

    Вот простой макрос, который позволяет быстро перевернуть данные в таблице Excel по горизонтали:

    Sub FlipDataHorizontally() Dim Rng As Range Dim WorkRng As Range Dim Arr As Variant Dim i As Integer , j As Integer , k As Integer On Error Resume Next xTitleId = "Flip Data Horizontally" Set WorkRng = Application.Selection Set WorkRng = Application.InputBox("Range" , xTitleId, WorkRng.Address, Type :=8) Arr = WorkRng.Formula Application.ScreenUpdating = False Application.Calculation.xlCalculationManual For i = 1 To UBound (Arr, 1) k = UBound (Arr, 2) For j = 1 To UBound (Arr, 2) / 2 xTemp = Arr(i, j) Arr(i, j) = Arr(i, k) Arr(i, k) = xTemp k = k - 1 Next Next WorkRng.Formula = Arr Application.ScreenUpdating = True Application.Calculation = xlCalculationAutomatic End Sub

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

    Выделите всю таблицу, включая строку заголовка, и нажмите кнопку OK Через мгновение порядок данных в строках изменится на противоположный:

    Переворачивание данных в строках с помощью Ultimate Suite for Excel

    Аналогично переворачиванию столбцов, вы можете использовать наш Ultimate Suite для Excel, чтобы изменить порядок данных в строках. Просто выберите диапазон ячеек, которые вы хотите перевернуть, перейдите в раздел Ablebits Data вкладка> Преобразование группу, и нажмите кнопку Флип > Горизонтальный переворот .

    В Горизонтальный переворот диалогового окна, выберите опции, подходящие для вашего набора данных. В этом примере мы работаем со значениями, поэтому выбираем Только вставка значений и Сохранение форматирования :

    Нажмите кнопку Флип и ваш стол будет перевернут слева направо в мгновение ока.

    Вот так можно перевернуть данные в Excel. Я благодарю вас за чтение и надеюсь увидеть вас в нашем блоге на следующей неделе!

    Майкл Браун — увлеченный технологический энтузиаст, стремящийся упростить сложные процессы с помощью программных инструментов. Имея более чем десятилетний опыт работы в технологической отрасли, он отточил свои навыки в Microsoft Excel и Outlook, а также в Google Sheets и Docs. Блог Майкла посвящен тому, чтобы делиться своими знаниями и опытом с другими, предоставляя простые советы и учебные пособия для повышения производительности и эффективности. Являетесь ли вы опытным профессионалом или новичком, в блоге Майкла вы найдете ценную информацию и практические советы, которые помогут вам максимально эффективно использовать эти важные программные инструменты.