Letysite.ru

IT Новости с интернет пространства
0 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как поменять ячейки местами в excel

Как в Excel поменять столбцы местами

В этой статье мы разберем как поменять столбцы в Excel местами. Существует несколько способов как это сделать.

Как поменять местами столбцы в Excel с помощью перемещения мышкой и клавиши Shift

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

Наша задача переместить столбец с данными количества продаж из столбца “С” на место столбца “В”.

Для этого проделаем следующие действия:

  • Зажав левую клавишу мыши выделим диапазон данных столбца, который мы хотим переместить:

  • Зажмем клавишу “Shift” на клавиатуре и поднесем курс мыши к границе выделенного диапазона до появления всесторонней стрелки;
  • Оставляя зажатыми клавишу “Shift” и левую клавишу мыши перенесем столбец с данными с помощью мышки туда куда нам необходимо:

Как итог, получим перенесенный столбец без потери данных. Задача выполнена:

Как поменять местами столбцы с помощью горячих клавиш

Для того чтобы поменять столбцы в Excel местами с помощью горячих клавиш или функций “Вырезать”/”Вставить” – проделаем следующие шаги:

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

  • Нажмем сочетание клавиш на клавиатуре “Ctrl + X” для того чтобы “вырезать” столбец;
  • Выделим столбец перед которым мы хотим вставить “вырезанную” колонку;
  • Кликнем правой кнопкой мыши и в выпадающем меню выберем пункт “Вставить вырезанные ячейки”:

  • Готово! Задача выполнена.

Перемещение ячеек относительно друг друга в Microsoft Excel

Потребность поменять ячейки местами друг с другом при работе в таблице Microsoft Excel случается довольно редко. Тем не менее, такие ситуации бывают и их нужно решать. Давайте выясним, какими способами можно поменять ячейки местами в Экселе.

Перемещение ячеек

К сожалению, в стандартном наборе инструментов нет такой функции, которая бы без дополнительных действий или без сдвига диапазона, могла бы менять местами две ячейки. Но, в то же время, хотя данная процедура перемещения и не так проста, как хотелось бы, её все-таки можно устроить, причем несколькими способами.

Способ 1: перемещение с помощью копирования

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

  1. Выделяем ячейку, которую следует переместить. Жмем на кнопку «Копировать». Она размещена на ленте во вкладке «Главная» в группе настроек «Буфер обмена».

Выделяем любой другой пустой элемент на листе. Жмем на кнопку «Вставить». Она находится в том же блоке инструментов на ленте, что и кнопка «Копировать», но в отличие от неё имеет гораздо более заметный вид из-за своих размеров.

Далее переходим ко второй ячейке, данные которой нужно переместить на место первой. Выделяем её и опять жмем на кнопку «Копировать».

Одно значение мы переместили, куда нам нужно. Теперь возвращаемся к тому значению, которое мы вставили в пустую ячейку. Выделяем его и жмем на кнопку «Копировать».

Выделяем вторую ячейку, в которую нужно переместить данные. Жмем на кнопку «Вставить» на ленте.

  • Итак, нужные данные мы поменяли местами. Теперь следует удалить содержимое транзитной ячейки. Выделяем её и щелкаем правой кнопкой мыши. В контекстном меню, которое активировалось после этих действий, переходим по пункту «Очистить содержимое».
  • Теперь транзитные данные удалены, а задача по перемещению ячеек полностью выполнена.

    Конечно, данный способ не совсем удобен и требует множества дополнительных действий. Тем не менее, именно он применим большинством пользователей.

    Способ 2: перетаскивание

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

    Выделяем ячейку, которую нужно переместить в другое место. Устанавливаем курсор на её границу. При этом он должен преобразоваться в стрелку, на конце которой находятся указатели, направленные в четыре стороны. Зажимаем клавишу Shift на клавиатуре и перетаскиваем на то место куда хотим.

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

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

    Способ 3: применение макросов

    Как уже было сказано выше, не существует быстрого и корректно способа в Эксель без копирования в транзитный диапазон поменять две ячейки между собой местами, если находятся они не в смежных областях. Но этого можно добиться за счет применения макросов или сторонних надстроек. Об использовании одного такого специального макроса мы и поговорим ниже.

    1. Прежде всего, нужно включить у себя в программе режим работы с макросами и панель разработчика, если вы их до сих пор не активировали, так как по умолчанию они отключены.
    2. Далее переходим во вкладку «Разработчик». Выполняем щелчок по кнопке «Visual Basic», которая размещена на ленте в блоке инструментов «Код».

    Выполняется запуск редактора. В него нужно вставить следующий код:

    Sub ПеремещениеЯчеек()
    Dim ra As Range: Set ra = Selection
    msg1 = «Произведите выделение ДВУХ диапазонов идентичного размера»
    msg2 = «Произведите выделение двух диапазонов ИДЕНТИЧНОГО размера»
    If ra.Areas.Count 2 Then MsgBox msg1, vbCritical, «Проблема»: Exit Sub
    If ra.Areas(1).Count ra.Areas(2).Count Then MsgBox msg2, vbCritical, «Проблема»: Exit Sub
    Application.ScreenUpdating = False
    arr2 = ra.Areas(2).Value
    ra.Areas(2).Value = ra.Areas(1).Value
    ra.Areas(1).Value = arr2
    End Sub

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

    Выделяем две ячейки или два диапазона равных размеров, которые хотим поменять местами. Для этого кликаем по первому элементу (диапазону) левой кнопкой мыши. Затем зажимаем кнопку Ctrl на клавиатуре и также кликаем левой кнопкой мышки по второй ячейке (диапазону).

    Чтобы запустить макрос, жмем на кнопку «Макросы», размещенную на ленте во вкладке «Разработчик» в группе инструментов «Код».

    Открывается окно выбора макроса. Отмечаем нужный элемент и жмем на кнопку «Выполнить».

  • После этого действия макрос автоматически меняет содержимое выделенных ячеек местами.
  • Читать еще:  Как прогреть видеочип на ноутбуке

    Важно отметить, что при закрытии файла макрос автоматически удаляется, так что в следующий раз его придется записывать снова. Чтобы не делать эту работу каждый раз для конкретной книги, если вы планируете в ней постоянно проводить подобные перемещения, то следует сохранить файл как Книгу Excel с поддержкой макросов (xlsm).

    Как видим, в Excel существует несколько способов перемещения ячеек относительно друг друга. Это можно сделать и стандартными инструментами программы, но данные варианты довольно неудобны и занимают много времени. К счастью, существуют макросы и надстройки сторонних разработчиков, которые позволяют решить поставленную задачу максимально легко и быстро. Так что для пользователей, которым приходится постоянно применять подобные перемещения, именно последний вариант будет самым оптимальным.

    Отблагодарите автора, поделитесь статьей в социальных сетях.

    Как поменять местами ячейки в Excel

    Во время работы в Эксель нередко возникает необходимость в изменении порядка ячеек, например, требуется поменять местами некоторые из них. Как это сделать разными способами, разберем в данной статье.

    Процедура перемещения ячеек

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

    Метод 1: копирование

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

    1. Встаем в первую ячейку (выделяем ее), которую планируем переместить. Находясь в главной вкладке программы нажимаем на кнопку “Копировать” (группа инструментов “Буфер обмена”). Также можно просто нажать комбинацию клавиш Ctrl+C.
    2. Переходим в любую свободную ячейку на листе и нажимаем кнопку “Вставить” в той же вкладке и группе инструментов. Или можно снова воспользоваться горячими клавишами – Ctrl+V.
    3. Теперь выделяем вторую ячейку, с которой хотим поменять местами первую, и также копируем ее.
    4. Встаем в первую ячейку и жмем кнопку “Вставить” (или Ctrl+V).
    5. Теперь выделяем ячейку, в которую было скопировано значение из первой ячейки и копируем ее.
    6. Переходим во вторую ячейку, куда нужно вставить данные, и нажимаем соответствующую кнопку на ленте.
    7. Выбранные элементы успешно поменяны местами. Ячейка, в которой временно размещались скопированные данные, больше не нужна. Щелкаем по ней правой кнопкой мыши и в открывшемся меню выбираем команду “Удалить”.
    8. В зависимости от того, есть ли рядом с данной ячейкой заполненные элементы справа/снизу или нет, выбираем соответствующий вариант удаления и жмем кнопку OK.
    9. Вот и все, что нужно было сделать для того, чтобы поменять ячейки местами.

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

    Метод 2: перетаскивание

    Данный метод также применяется для того, чтобы поменять местами ячейки, однако, в этом случае будет происходить сдвиг ячеек. Итак, выполняем следующие действия:

    1. Выбираем ячейку, которую планируем переместить в новое место. Наводим курсор мыши на ее границу, и как только он изменит вид на привычный указатель (с 4 стрелками в разные стороны на конце), нажав и не отпуская клавишу Shift, выполняем перенос ячейки в новое место с помощью зажатой левой кнопки мыши.
    2. Чаще всего, этот метод используется для того, чтобы поменять местами соседние ячейки, так как сдвиг элементов в данном случае не нарушит структуру таблицы.
    3. Если мы решим переместить ячейку через несколько других, это повлечет за собой изменение расположения всех остальных элементов.
    4. После этого придется восстанавливать порядок.

    Метод 3: использование макросов

    Мы упоминали в начале статьи, что в Excel, увы, нет специального инструмента, позволяющего оперативно “перекинуть” местами ячейки (за исключением метода выше, который эффективен только для смежных элементов). Однако сделать это можно с помощью макросов:

    Читать еще:  Нумерация в столбце в таблице excel

    1. Для начала нужно убедиться в том, что в приложении активирован так называемый “режим разработчика” (по умолчанию выключен). Для этого:
      • переходим в меню “Файл” и выбираем в перечне слева пункт “Параметры”.
      • в параметрах программы щелкаем по подразделу “Настроить ленту”, в правой части ставим галочку напротив пункта “Разработчик” и жмем OK.
    2. Переключаемся во вкладку “Разработчик”, где жмем по значку “Visual Basic” (группа инструментов “Код”).
    3. В редакторе, нажав на кнопку “View Code”, вставляем в появившемся окне код ниже:
      Sub ПеремещениеЯчеек()
      Dim ra As Range: Set ra = Selection
      msg1 = «Произведите выделение ДВУХ диапазонов идентичного размера»
      msg2 = «Произведите выделение двух диапазонов ИДЕНТИЧНОГО размера»
      If ra.Areas.Count <> 2 Then MsgBox msg1, vbCritical, «Проблема»: Exit Sub
      If ra.Areas(1).Count <> ra.Areas(2).Count Then MsgBox msg2, vbCritical, «Проблема»: Exit Sub
      Application.ScreenUpdating = False
      arr2 = ra.Areas(2).Value
      ra.Areas(2).Value = ra.Areas(1).Value
      ra.Areas(1).Value = arr2
      End Sub
    4. Закрываем окно редактора, щелкнув привычную кнопку в виде крестика в верхнем правом углу.
    5. Зажав клавишу Ctrl на клавиатуре выделяем две ячейки или две области с одинаковым количество элементов, которые планируем поменять местами. Затем нажимаем кнопку “Макросы” (вкладка “Разработчик”, группа “Код”).
    6. Появится окно, в котором мы видим ранее созданный макрос. Выбираем его и щелкаем “Выполнить”.
    7. В результате работы макрос поменяет местами содержимое выделенных ячеек.

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

    Заключение

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

    Как поменять местами столбцы и строки в Excel?

    При работе с данными в Microsoft Excel приходится часто перемещать отдельные позиции. Например, из-за того, что цифра оказалась не там, где нужно. Или понадобилось расставить ряды по алфавиту. Или необходимо, вообще, перевернуть таблицу на 90 градусов. Разберитесь, как поменять местами столбцы в Excel и строки, как перетащить клетку со всем содержимым, как транспонировать сетку или отдельную её часть.

    Как перемещать столбцы и строки?

    Для перемещения рядов можно использовать опцию Копировать-Вырезать-Вставить. Но так происходит замена всего содержимого в области, куда вставляются объекты. Это не очень удобно, если требуется расположить категории в другом порядке, а не копировать их. Вот как поменять местами строки в Excel:

    1. Выделите ряд. Для этого кликните на его номер (или на букву, если это столбцы).
    2. Наведите на границу любой отмеченной ячейки. Курсор примет вид крестика со стрелочками на концах.
    3. Зажмите клавишу Shift.
    4. Перемещайте ряд, «зацепив» его за рамку.
    5. Двигать объект вы будете не вслепую. В той области, куда вы наведёте курсор, нижняя граница строки станет толще. Ряд вставится выше этой линии (или левее, если это столбцы).
    6. Чтобы заменить содержимое конечных клеток, сделайте то же самое, но без кнопки Shift.
    7. Если надо поменять категории местами, просто перетащите их, куда нужно. Например, ряд 23 передвиньте на позицию 25, а 25 — на 23.
    8. Можно скопировать данные с заменой конечного содержимого. Для этого вместо Shift зажмите Ctrl.

    Используйте опцию Копировать-Вырезать-Вставить

    Как переместить ячейку или несколько ячеек?

    С клетками доступны те же действия, что и с рядами. Вот как в Excel поменять ячейки местами:

    1. Выделите нужный объект.
    2. Наведите курсор на его границу.
    3. Зажмите клавишу Shift.
    4. Переместите клетку, «зацепив» её за рамку.
    5. Нижняя граница ячейки, в которую вставится содержимое, будет выделяться.
    6. Чтобы поменять две соседние клетки местами, передвиньте выбранный объект к рамке, находящейся сбоку.

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

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

    1. Перемещайте курсор-клетку Excel с зажатой клавишей Shift. Будет охвачено несколько объектов.
    2. Или выделите их мышью. Для этого наведите её на нужную позицию, нажмите левую кнопку, передвиньте курсор и отпустите кнопку. Будут отмечены ячейки, захваченные в получившийся прямоугольник.

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

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

    В Excel можно транспонировать (перевернуть) таблицу. Так столбцы превратятся в строки. Эта функция доступна в самой программе. Это делается через формулы или при помощи специальной вставки.

    Специальная вставка

    Вот как в Экселе поменять столбцы на строки и наоборот:

    1. Выделите фрагмент или всю таблицу.
    2. Кликните по ней правой кнопкой мыши и выберите «Копировать». Или нажмите Ctrl+C.
    3. Поставьте клетку-курсор в то место, куда хотите добавить перевёрнутую сетку.
    4. Найдите на панели инструментов пиктограмму «Вставка». В Excel 2010 она находится в «Меню», в 2007 — на вкладке «Главная». Эта иконка похожа на папку-планшет с маленьким листом бумаги рядом.
    5. Нажмите на чёрную стрелочку рядом с этой иконкой.
    6. Откройте «Специальная вставка».
    7. Этот же пункт можно найти в контекстном меню. Чтобы вызвать его, кликните правой кнопкой мыши.
    8. В выпавшем списке нажмите на значок «Транспонировать». Чтобы понять, где он, наводите курсор на кнопки. Появятся всплывающие подсказки.
    Читать еще:  Excel использование впр

    Формулы

    Поменять ориентацию таблицы можно и специальной формулой.

    1. Выделите свободную от значений область, в которую надо вставить перевёрнутую сетку. Она должна соответствовать исходной. К примеру, если в изначальном варианте она имела размеры 3 на 7 клеток, то отмеченные для вставки позиции должны быть 7 на 3.
    2. В поле формул (она находится вверху, рядом с ней есть символы «Fx») введите «=ТРАНСП(N:H)» без кавычек. N — это адрес первой клетки из таблицы, H — имя последней. Эти названия имеют вид A1, S7 и так далее. Это одновременно и координаты ячейки. Чтобы их посмотреть, кликните на нужную позицию. Они отобразятся в поле слева вверху.
    3. После того как вписали функцию, одновременно нажмите Shift+Ctrl+Enter. Так она вставится сразу во все выделенные категории.

    Поменять ориентацию таблицы можно и специальной формулой

    Нужный фрагмент появится уже в перевёрнутом виде.

    Перевернуть столбец

    В таблицах можно не только поменять местами ряды, но и перевернуть столбцы вниз головой. Например, вам понадобилось перечислить какие-то характеристики в обратном порядке. Ради этого не нужно заново все вбивать. Можно сделать так:

    1. Вокруг исходной колонкой должно быть свободное место. Не нужно стирать все строки. На время редактирования можете скопировать позиции в другой файл.
    2. Выделите пустую клетку слева или справа от заполненного ряда.
    3. Откройте меню Формулы — Ссылки и массивы.
    4. Найдите функцию «СМЕЩ».
    5. В появившемся окне будет несколько полей. В области «Ссылка» укажите адрес нижней клетки из колонки. Перед каждой координатой ставьте знак $ (доллар). Должно получиться что-то вроде «$A$17».
    6. В «Смещ_по_строкам» введите команду «(СТРОКА()-СТРОКА($A$1))*-1» (кавычки убрать). Вместо $А$1 напишите имя первой клетки в колонке.
    7. В «Смещ_по_столбцам» напишите 0 (ноль). Остальные параметры оставьте пустыми.
    8. Растяните значения с формулой так, чтобы по высоте они совпадали с исходным рядом. Для этого «потяните» за маленький чёрный квадратик под курсором-клеткой Excel. Категории будут инвертированы относительно исходника.
    9. Выделите и скопируйте получившиеся позиции.
    10. Щёлкните правой кнопкой мыши в любом месте сетки.
    11. В параметрах вставки выберите «Значения». Так перенесутся только символы без формул.

    В продуктах Microsoft Office интуитивно-понятный интерфейс. Можно быстро разобраться, как в Экселе поменять местами столбцы, ряды и ячейки. Как отразить их. Также в инструментарии программы доступна транспонировка (переворачивание) таблицы.

    Как поменять ячейки местами в excel

    Как это должно работать (один из вариантов): Выделяю с нажатым Ctrl два диапазона — ПКМ — Поменять местами. Теперь содержимое ячейки А1 находится в В1 и наоборот.
    Спасибо.

    Из закромов :

    ==============================================================
    Стоит задача с помощью макроса в Excel поменять местами выделенные ячейки (ну или выделенные строки/столбцы), при этом ячейки(или строки/столбцы) не являются смежными, а — произвольно выбранными пользователем.
    EducatedFool
    VBA Developer
    ———————————————————————————

    Добавлю от себя — переносятся только значения, формулы затираются, форматирование остаётся старым.

    Это можно, но сложнее.
    Тогда весь код нужно поместить в модуль в Personal.xls или в другую книгу из автозагружаемых, плюс сделать исполнение при загрузке кода типа этого:
    [vba]

    Т.е. при загрузке и выгрузки такие коды (обеспечение менюшки):
    [vba]

    200?’200px’:»+(this.scrollHeight+5)+’px’);»> Private Sub Workbook_BeforeClose(Cancel As Boolean)
    On Error Resume Next
    Application.CommandBars(«Cell»).Controls.Item(«SwapRanges»).Delete
    End Sub

    Private Sub Workbook_Open()
    On Error Resume Next
    Application.CommandBars(«Cell»).Controls.Item(«SwapRanges»).Delete
    On Error GoTo 0
    Inic
    End Sub

    Можно вероятно эти коды совместить, но у меня так работает, правда задачу другую в итоге выполняет.

    Из закромов smile :

    ==============================================================
    Стоит задача с помощью макроса в Exel поменять местами выделенные ячейки (ну или выделенные строки/столбцы), при этом ячейки(или строки/столбцы) не являются смежными, а — произвольно выбранными пользователем.
    EducatedFool
    VBA Developer
    ———————————————————————————

    Sub SwapRanges()
    Dim ra As Range: Set ra = Selection
    msg1 = «Надо выделить ДВА диапазона ячеек одинакового размера»
    msg2 = «Надо выделить 2 диапазона ячеек ОДИНАКОВОГО размера»
    If ra.Areas.Count <> 2 Then MsgBox msg1, vbCritical, «Ошибка»: Exit Sub
    If ra.Areas(1).Count <> ra.Areas(2).Count Then MsgBox msg2, vbCritical, «Ошибка»: Exit Sub
    Application.ScreenUpdating = False
    arr2 = ra.Areas(2).Value
    ra.Areas(2).Value = ra.Areas(1).Value
    ra.Areas(1).Value = arr2
    End Sub

    Добавлю от себя — переносятся только значения, формулы затираются, форматирование остаётся старым.

    Спасибо за очень нужный макрос — это то что я искал!
    Одна ,блин, незадачка — при смене раскладки клавиатуры постоянно выскакивает окно:

    «Microsoft Visual Basic
    Run-time error ‘1004’:
    Method ‘OnKey’ of object ‘.Application’ failed»

    Подскажите, пожалуйста, как от него избавится?

    Ссылка на основную публикацию
    Adblock
    detector