Как в эксель поменять местами ячейки
Перемещение ячеек относительно друг друга в Microsoft Excel
Потребность поменять ячейки местами друг с другом при работе в таблице Microsoft Excel случается довольно редко. Тем не менее, такие ситуации бывают и их нужно решать. Давайте выясним, какими способами можно поменять ячейки местами в Экселе.
Перемещение ячеек
К сожалению, в стандартном наборе инструментов нет такой функции, которая бы без дополнительных действий или без сдвига диапазона, могла бы менять местами две ячейки. Но, в то же время, хотя данная процедура перемещения и не так проста, как хотелось бы, её все-таки можно устроить, причем несколькими способами.
Способ 1: перемещение с помощью копирования
Первый вариант решения проблемы предусматривает банальное копирование данных в отдельную область с последующей заменой. Давайте разберемся, как это делается.
- Выделяем ячейку, которую следует переместить. Жмем на кнопку «Копировать». Она размещена на ленте во вкладке «Главная» в группе настроек «Буфер обмена».
Выделяем любой другой пустой элемент на листе. Жмем на кнопку «Вставить». Она находится в том же блоке инструментов на ленте, что и кнопка «Копировать», но в отличие от неё имеет гораздо более заметный вид из-за своих размеров.
Далее переходим ко второй ячейке, данные которой нужно переместить на место первой. Выделяем её и опять жмем на кнопку «Копировать».
Одно значение мы переместили, куда нам нужно. Теперь возвращаемся к тому значению, которое мы вставили в пустую ячейку. Выделяем его и жмем на кнопку «Копировать».
Выделяем вторую ячейку, в которую нужно переместить данные. Жмем на кнопку «Вставить» на ленте.
Теперь транзитные данные удалены, а задача по перемещению ячеек полностью выполнена.
Конечно, данный способ не совсем удобен и требует множества дополнительных действий. Тем не менее, именно он применим большинством пользователей.
Способ 2: перетаскивание
Ещё одним способом, с помощью которого существует возможность поменять ячейки местами, можно назвать простое перетаскивание. Правда при использовании этого варианта произойдет сдвиг ячеек.
Выделяем ячейку, которую нужно переместить в другое место. Устанавливаем курсор на её границу. При этом он должен преобразоваться в стрелку, на конце которой находятся указатели, направленные в четыре стороны. Зажимаем клавишу Shift на клавиатуре и перетаскиваем на то место куда хотим.
Как правило, это должна быть смежная ячейка, так как при переносе таким способом происходит сдвиг всего диапазона.
Поэтому перемещение через несколько ячеек чаще всего происходит некорректно в контексте конкретной таблицы и применяется довольно редко. Но сама потребность поменять содержимое далеко стоящих друг от друга областей не исчезает, а требует других решений.
Способ 3: применение макросов
Как уже было сказано выше, не существует быстрого и корректно способа в Эксель без копирования в транзитный диапазон поменять две ячейки между собой местами, если находятся они не в смежных областях. Но этого можно добиться за счет применения макросов или сторонних надстроек. Об использовании одного такого специального макроса мы и поговорим ниже.
- Прежде всего, нужно включить у себя в программе режим работы с макросами и панель разработчика, если вы их до сих пор не активировали, так как по умолчанию они отключены.
- Далее переходим во вкладку «Разработчик». Выполняем щелчок по кнопке «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
Описание задачи
Иногда требуется местами две ячейки или целые области ячеек. Сделать это можно вручную в несколько шагов:
- Скопировать первую ячейку и вставить ее в какую-нибудь пустую неиспользуемую ячейку.
- Скопировать вторую ячейку и вставить вместо первой.
- Скопировать из 1-го действия первую ячейку и вставить вместо второй.
В общем это достаточно простая задача, на которую требуется секунд 20, однако, когда и этот процесс можно автоматизировать, работа становится намного приятнее.
Поменять ячейки местами в одно действие
Это возможно с помощью надстройки VBA-Excel. Чтобы поменять ячейки местами необходимо:
- Выделить первую ячейку или диапазон ячеек.
- Зажав клавишу Ctrl выделить вторую ячейку или диапазон ячеек.
- Перейти на вкладку VBA-Excel, которая появится после установки программы.
- В меню Поменять местами выберите команду Поменять ячейки.
Очевидно, что данным способом можно поменять местами два диапазона одинакового размера. Если вы попытаетесь выполнить эту операцию с неравными диапазонами, надстройка выдаст ошибку
Excel поменять строки местами
Excel поменять строки местами
Добрый день, уважаемые читатели! Наболевший вопрос, который откладывал долгое время. Сразу оговорюсь — о транспортировании (замены столбца на строку и наоборот) мы поговорим в следующих статьях.
Сегодня речь пойдёт о замене значений двух строк/столбцов, то есть нам нужно просто поменять местами столбцы или строки в таблице Excel. Что мы для этого обычно делаем:
- Выделяем строку/столбец, которые будем переносить;
- Даём команду «Вырезать»;
- Выделяем место где должны быть строки/столбцы;
- Даём команду «Вставить».
Также можно просто перетаскивать за рамку выделения нужные нам диапазоны.
Но бывают случаи, когда в наличии имеется большая таблица, в которой нужно поменять местами значения, но места под новые столбцы/строки взять негде. Не будем рассматривать вариант вставки новой строки/столбца, он может нарушить выверенную структуру и формулы. Что же тогда делать? Попробуем решить данную проблему с помощью макроса.
Для замены необходимо соблюдение двух условий:
1) диапазон ячеек ОБЯЗАТЕЛЬНО должен быть одинаковой величины;
2) ОБЯЗАТЕЛЬНО должны быть выделены два диапазона ячеек.
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
- ra — это область выделения;
- msg1 и msg2 — сообщение о соответствующих ошибках;
- If ra.Areas.Count <> 2 — условие выделения двух диапазонов;
- If ra.Areas(1).Count <> ra — условие выделения одинаковых по длине диапазонов ячеек;
- Application.ScreenUpdating — экране не обновится если не выполнены два условия;
- остальное показывает, что диапазоны будут заменены друг на друга.
Добавим новый модуль к нашей книге. Вкладка «Разработчик», кнопка «Visual basic», далее «Insert» и «Module».
Теперь проверим правильность работы макроса. Выделим с помощью клавиши Ctrl два одинаковых диапазона ячеек (это может быть строка, столбец, просто ячейка). Воспользуемся сочетанием клавиш Alt+F8, чтобы вызвать диалоговое окно «Макросы» или перейдём на вкладку «Разработчик» и нажмём одноимённую кнопку. Появится список макросов, нажимаем кнопку «Выполнить» и наблюдаем результат.
Видим, макрос работает!
Если остались вопросы — посмотрите наше новое видео!
Вас может заинтересовать на урок — Удаление пустых ячеек.
Поменять местами содержимое ячеек в Excel?
есть ли простой способ поменять содержимое двух ячеек в Microsoft Excel?
под easy я имею в виду либо сочетание клавиш, либо пункт меню, без копирования во временные ячейки или написания сценариев VBA или что-то в этом роде. Другими словами, Я ищу способ просто выбрать две ячейки и щелкнуть какой-либо пункт меню или нажать какую-либо комбинацию клавиш, которая будет менять их содержимое. Конечно, должен быть способ сделать это?
иногда нужно поменять местами две соседние ячейки. Мы можем вручную сделать это легко. Посмотрите на следующий скриншот, я хочу поменять местами ячейки A4 и B4, пожалуйста сделайте так:
выберите ячейку, которую вы хотите поменять. В данном примере выберите ячейку A4.
пресс Shift ключ, и положил курсор на правую границу.
затем перетащите курсор на правую границу ячейки B4.
когда появится «工», отпустите кнопку мыши.
и содержимое двух ячеек поменялось местами.
с помощью этого метода, мы также можем поменять два смежные строки или столбцы.
под easy я имею в виду либо сочетание клавиш, либо пункт меню, без копирования во временные ячейки или написание VBA скриптов или что-то в этом роде. Я ищу способ просто выбрать две ячейки и щелкнуть какой-либо пункт меню или нажать комбинацию клавиш, которая будет менять их содержимое.
зачем вводить это ограничение? Создание макроса делает это тривиальным. Насколько я знаю, по-другому и быть не может. Макрос можно назначить кнопке или клавиша.
для конкретного случая соседних ячеек, вы можете использовать метод, описанный в это ответ на подобный вопрос.
- выберите правую или нижнюю ячейку
- пресс Ctrl + x
- выберите соседнюю ячейку (т. е. непосредственно над или слева)
- пресс Ctrl + + (том + обычно выше = ключ, так что это переводится как Ctrl + Shift + = )
Примечание Вы можете использовать ту же процедуру, чтобы поменять местами все соседние строки или столбцы.
нет. Невозможно поменять местами содержимое двух ячеек в Excel, не написав для этого собственный макрос.
EDIT: похоже, что теперь может быть простой способ поменять содержимое ячейки в более поздних версиях Excel, поэтому этот ответ, вероятно, устарел.
выберите первый набор ячеек для замены и нажмите ctrl + x :
выберите ячейки рядом с теми, которые вы хотите поменять местами и нажмите ctrl + + .
вы можете вставить до 25 элементов в буфер обмена, так что они легко поменять местами с помощью ctr + tab или cmd + tab mac
Я читал этот пост, но на самом деле нуждался в макросе для обмена полными диапазонами. Кроме того, мне нужно было поменять цвета. Немного модифицировал первоначально размещенный макрос, это может быть полезно для кого-то.
Как поменять местами столбцы и строки в Excel?
При работе с данными в Microsoft Excel приходится часто перемещать отдельные позиции. Например, из-за того, что цифра оказалась не там, где нужно. Или понадобилось расставить ряды по алфавиту. Или необходимо, вообще, перевернуть таблицу на 90 градусов. Разберитесь, как поменять местами столбцы в Excel и строки, как перетащить клетку со всем содержимым, как транспонировать сетку или отдельную её часть.
Как перемещать столбцы и строки?
Для перемещения рядов можно использовать опцию Копировать-Вырезать-Вставить. Но так происходит замена всего содержимого в области, куда вставляются объекты. Это не очень удобно, если требуется расположить категории в другом порядке, а не копировать их. Вот как поменять местами строки в Excel:
- Выделите ряд. Для этого кликните на его номер (или на букву, если это столбцы).
- Наведите на границу любой отмеченной ячейки. Курсор примет вид крестика со стрелочками на концах.
- Зажмите клавишу Shift.
- Перемещайте ряд, «зацепив» его за рамку.
- Двигать объект вы будете не вслепую. В той области, куда вы наведёте курсор, нижняя граница строки станет толще. Ряд вставится выше этой линии (или левее, если это столбцы).
- Чтобы заменить содержимое конечных клеток, сделайте то же самое, но без кнопки Shift.
- Если надо поменять категории местами, просто перетащите их, куда нужно. Например, ряд 23 передвиньте на позицию 25, а 25 — на 23.
- Можно скопировать данные с заменой конечного содержимого. Для этого вместо Shift зажмите Ctrl.
Используйте опцию Копировать-Вырезать-Вставить
Как переместить ячейку или несколько ячеек?
С клетками доступны те же действия, что и с рядами. Вот как в Excel поменять ячейки местами:
- Выделите нужный объект.
- Наведите курсор на его границу.
- Зажмите клавишу Shift.
- Переместите клетку, «зацепив» её за рамку.
- Нижняя граница ячейки, в которую вставится содержимое, будет выделяться.
- Чтобы поменять две соседние клетки местами, передвиньте выбранный объект к рамке, находящейся сбоку.
Чтобы поменять две соседние клетки местами, передвиньте выбранный объект к рамке, находящейся сбоку.
Если вам надо выделить много позиций и передвинуть таким образом часть таблицы, сделайте следующее:
- Перемещайте курсор-клетку Excel с зажатой клавишей Shift. Будет охвачено несколько объектов.
- Или выделите их мышью. Для этого наведите её на нужную позицию, нажмите левую кнопку, передвиньте курсор и отпустите кнопку. Будут отмечены ячейки, захваченные в получившийся прямоугольник.
Диапазон клеток поменять местами с другом диапазоном нельзя. Только переместить. Также невозможно передвинуть вместе несколько объектов, расположенных в разных частях документа.
Как перевернуть таблицу?
В Excel можно транспонировать (перевернуть) таблицу. Так столбцы превратятся в строки. Эта функция доступна в самой программе. Это делается через формулы или при помощи специальной вставки.
Специальная вставка
Вот как в Экселе поменять столбцы на строки и наоборот:
- Выделите фрагмент или всю таблицу.
- Кликните по ней правой кнопкой мыши и выберите «Копировать». Или нажмите Ctrl+C.
- Поставьте клетку-курсор в то место, куда хотите добавить перевёрнутую сетку.
- Найдите на панели инструментов пиктограмму «Вставка». В Excel 2010 она находится в «Меню», в 2007 — на вкладке «Главная». Эта иконка похожа на папку-планшет с маленьким листом бумаги рядом.
- Нажмите на чёрную стрелочку рядом с этой иконкой.
- Откройте «Специальная вставка».
- Этот же пункт можно найти в контекстном меню. Чтобы вызвать его, кликните правой кнопкой мыши.
- В выпавшем списке нажмите на значок «Транспонировать». Чтобы понять, где он, наводите курсор на кнопки. Появятся всплывающие подсказки.
Поменять ориентацию таблицы можно и специальной формулой.
- Выделите свободную от значений область, в которую надо вставить перевёрнутую сетку. Она должна соответствовать исходной. К примеру, если в изначальном варианте она имела размеры 3 на 7 клеток, то отмеченные для вставки позиции должны быть 7 на 3.
- В поле формул (она находится вверху, рядом с ней есть символы «Fx») введите «=ТРАНСП(N:H)» без кавычек. N — это адрес первой клетки из таблицы, H — имя последней. Эти названия имеют вид A1, S7 и так далее. Это одновременно и координаты ячейки. Чтобы их посмотреть, кликните на нужную позицию. Они отобразятся в поле слева вверху.
- После того как вписали функцию, одновременно нажмите Shift+Ctrl+Enter. Так она вставится сразу во все выделенные категории.
Поменять ориентацию таблицы можно и специальной формулой
Нужный фрагмент появится уже в перевёрнутом виде.
Перевернуть столбец
В таблицах можно не только поменять местами ряды, но и перевернуть столбцы вниз головой. Например, вам понадобилось перечислить какие-то характеристики в обратном порядке. Ради этого не нужно заново все вбивать. Можно сделать так:
- Вокруг исходной колонкой должно быть свободное место. Не нужно стирать все строки. На время редактирования можете скопировать позиции в другой файл.
- Выделите пустую клетку слева или справа от заполненного ряда.
- Откройте меню Формулы — Ссылки и массивы.
- Найдите функцию «СМЕЩ».
- В появившемся окне будет несколько полей. В области «Ссылка» укажите адрес нижней клетки из колонки. Перед каждой координатой ставьте знак $ (доллар). Должно получиться что-то вроде «$A$17».
- В «Смещ_по_строкам» введите команду «(СТРОКА()-СТРОКА($A$1))*-1» (кавычки убрать). Вместо $А$1 напишите имя первой клетки в колонке.
- В «Смещ_по_столбцам» напишите 0 (ноль). Остальные параметры оставьте пустыми.
- Растяните значения с формулой так, чтобы по высоте они совпадали с исходным рядом. Для этого «потяните» за маленький чёрный квадратик под курсором-клеткой Excel. Категории будут инвертированы относительно исходника.
- Выделите и скопируйте получившиеся позиции.
- Щёлкните правой кнопкой мыши в любом месте сетки.
- В параметрах вставки выберите «Значения». Так перенесутся только символы без формул.
В продуктах Microsoft Office интуитивно-понятный интерфейс. Можно быстро разобраться, как в Экселе поменять местами столбцы, ряды и ячейки. Как отразить их. Также в инструментарии программы доступна транспонировка (переворачивание) таблицы.