Как в экселе двигать столбцы. Как в Excel сделать перенос текста в ячейке. Используем скрипт VBA

Как в экселе двигать столбцы. Как в Excel сделать перенос текста в ячейке. Используем скрипт VBA

09.04.2019

В этой статье Вы найдёте несколько способов перемещать столбцы в Excel. Вы увидите, как перетаскивать столбцы мышью и другие способы перемещения столбцов на листах Excel.

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

Как ни странно, но Microsoft Excel не предоставляет прямого способа выполнения этой обыденной операции. Если Вы попытаетесь просто перетащить столбец за его заголовок (что кажется наиболее очевидным способом перемещения столбца), то будете очень расстроены, т.к. это не сработает, даже в Excel 2013.

Так или иначе, здесь Вы найдёте три действующих способа перемещать столбцы в Excel, а именно:

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

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

Предположим, есть таблица с информацией о товарах Вашей компании, и Вы хотите быстренько поменять местами пару столбцов в этой таблице. Я возьму для примера прайс сервиса AbleBits. Необходимо поменять местами столбцы License type и Product ID , чтобы идентификатор Product ID следовал сразу после наименования продукта (Product name).


Таким же способом Вы можете перетаскивать в Excel несколько смежных столбцов. Чтобы выделить несколько столбцов, кликните по заголовку первого столбца, затем, нажав и удерживая клавишу Shift , кликните по заголовку последнего столбца. Далее проделайте шаги 2 – 4, описанные выше, чтобы переместить выбранные столбцы, как показано на рисунке ниже.

Замечание: Невозможно перетаскивать несмежные столбцы и строки на листах Excel, даже в Excel 2013.

Метод перетаскивания работает в Microsoft Excel 2013, 2010 и 2007. Точно так же Вы можете перетаскивать строки. Возможно, придётся немного попрактиковаться, но, освоив этот навык однажды, Вы сэкономите уйму времени в дальнейшем. Думаю, команда разработчиков Microsoft Excel вряд ли получит приз в номинации “самый дружественный интерфейс” за реализацию этого метода

Перемещаем столбцы методом Вырезать > Вставить

Если манипуляции при помощи мыши – это не то о чём Вы мечтали, тогда можете изменить очерёдность столбцов при помощи команд Вырезать > Вставить . Только имейте в виду, что здесь существует несколько особенностей, в зависимости от того, хотите Вы переместить один столбец или несколько столбцов одновременно.

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


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

  • Выделите любую ячейку в нужном столбце и нажмите Ctrl+Space (Пробел), чтобы выделить весь столбец.
  • Нажмите Ctrl+X , чтобы вырезать столбец.
  • Выберите столбец, перед которым необходимо вставить вырезанный.
  • Нажмите Ctrl и знак “+ ” на цифровой клавиатуре, чтобы вставить столбец.

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

Метод Вырезать > Вставить , который отлично работает для одного столбца (либо смежных столбцов), не позволяет перемещать несколько несмежных столбцов одновременно. Если Вы попытаетесь сделать это, то получите сообщение об ошибке, предлагающее выбрать один смежный диапазон: The command you chose cannot be performed with multiple selections (Данная команда неприменима для несвязных диапазонов).

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

Перемещаем несколько столбцов при помощи команд Копировать, Вставить и Удалить

Если метод перетаскивания столбцов мышью по каким-то причинам Вам не подходит, то Вы можете попробовать изменить порядок столбцов в Excel таким способом:


Замечание: Если Вы передвигаете столбцы в обычном диапазоне, то подойдут оба способа. Если же нужно переместить столбцы в полноценной таблице Excel , тогда воспользуйтесь вторым способом (только ячейки с данными), иначе можно получить сообщение об ошибке: The operation is not allowed. The operation is attempting to shift cells in a table of your worksheet (Невозможно выполнить операцию. Предпринимается попытка изменить часть строки или столбца таблицы запрещённым способом).


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

Изменяем очерёдность столбцов в Excel при помощи макроса VBA

Если Вы хотя бы немного знаете VBA, то можете попробовать написать макрос, который будет автоматически передвигать столбцы на листах Excel. Это в теории. На практике, скорее всего, у Вас займёт больше времени определить, какие именно столбцы нужно передвинуть и в какое место их вставить, чем переместить эти столбцы вручную. Кроме того, нет гарантии, что макрос всегда будет работать правильно. Поэтому Вы будете вынуждены каждый раз проверять результат. Похоже на то, что макрос VBA – это не самый подходящий инструмент для выполнения такой задачи.

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

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

Способ 1: процедура копирования

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


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

Способ 2: процедура вставки

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


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

Способ 3: перемещение мышью

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


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

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

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

Это очень частая задача и решается она очень просто — для переноса текста на новую строку внутри одной ячейки Excel необходимо нажать ALT+ENTER (зажимаете клавишу ALT, затем не отпуская ее, нажимаете клавишу ENTER)

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

Иногда требуется сделать перенос строки не разово, а с помощью функций в Excel. Вот как в этом примере на рисунке. Мы вводим имя, фамилию и отчество и оно автоматически собирается в ячейке A6

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

Как в Excel заменить знак переноса на другой символ и обратно с помощью формулы

Можно поменять символ перенос на любой другой знак , например на пробел, с помощью текстовой функции ПОДСТАВИТЬ в Excel

Рассмотрим на примере, что на картинке выше. Итак, в ячейке B1 прописываем функцию ПОДСТАВИТЬ:

ПОДСТАВИТЬ(A1;СИМВОЛ(10); " ")

A1 — это наш текст с переносом строки;
СИМВОЛ(10) — это перенос строки (мы рассматривали это чуть выше в данной статье);
" " — это пробел, так как мы меняем перенос строки на пробел

Если нужно проделать обратную операцию — поменять пробел на знак (символ) переноса, то функция будет выглядеть соответственно:

ПОДСТАВИТЬ(A1; " ";СИМВОЛ(10))

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

Как поменять знак переноса на пробел и обратно в Excel с помощью ПОИСК — ЗАМЕНА

Бывают случаи, когда формулы использовать неудобно и требуется сделать замену быстро. Для этого воспользуемся Поиском и Заменой. Выделяем наш текст и нажимаем CTRL+H, появится следующее окно.

Если нам необходимо поменять перенос строки на пробел, то в строке «Найти» необходимо ввести перенос строки, для этого встаньте в поле «Найти», затем нажмите на клавишу ALT , не отпуская ее наберите на клавиатуре 010 — это код переноса строки, он не будет виден в данном поле .

После этого в поле «Заменить на» введите пробел или любой другой символ на который вам необходимо поменять и нажмите «Заменить» или «Заменить все».

Кстати, в Word это реализовано более наглядно.

Если вам необходимо поменять символ переноса строки на пробел, то в поле «Найти» вам необходимо указать специальный код «Разрыва строки», который обозначается как ^l
В поле "Заменить на: " необходимо сделать просто пробел и нажать на «Заменить» или «Заменить все».

Вы можете менять не только перенос строки, но и другие специальные символы, чтобы получить их соответствующий код, необходимо нажать на кнопку "Больше >> ", «Специальные» и выбрать необходимый вам код. Напоминаю, что данная функция есть только в Word, в Excel эти символы не будут работать.

Как поменять перенос строки на пробел или наоборот в Excel с помощью VBA

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

1. Меняем пробелы на переносы в выделенных ячейках с помощью VBA

Sub ПробелыНаПереносы()
For Each cell In Selection
cell.Value = Replace (cell.Value, Chr (32) , Chr (10) )
Next
End Sub

2. Меняем переносы на пробелы в выделенных ячейках с помощью VBA

Sub ПереносыНаПробелы()
For Each cell In Selection
cell.Value = Replace (cell.Value, Chr (10) , Chr (32) )
Next
End Sub

Код очень простой Chr (10) — это перенос строки, Chr (32) — это пробел. Если требуется поменять на любой другой символ, то заменяете просто номер кода, соответствующий требуемому символу.

Коды символов для 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. Нижняя граница ячейки, в которую вставится содержимое, будет выделяться.

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

  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 Excel задаются по умолчанию, среди них ограничение: одна ячейка – одна строка. Но бывает множество случаев, когда в ячейке нужно сделать несколько строчек. Для этого можно использовать несколько способов.

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

Офисный продукт Excel на многие задачи имеет вариативную линейку решений. Перенос строки в ячейке Excel не исключение: от разрыва вручную до автоматического переноса с заданной формулой и программирования.

Используем комбинацию клавиш

В этом случае используется сочетание клавиш «Alt+Enter ». Пользователю будет удобнее сначала зажать «Alt», затем, не отпуская клавиши нажать «Enter ».

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

Когда требуется написать большой текст можно применить команду «формат ячеек », что позволит уместить текст в одной ячейке Эксель.

Нажатием мышки выделить требуемую область. Правой кнопкой мыши вызвать диалоговое окно с командами. Выбрать «формат ячеек ».

На верхней панели выделить раздел «выравнивание ».

Поставить галочку против команды «переносить по словам » (графа «отображение»). Нажать кнопку ОК.

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

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

Использование формул

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

  • символ ();
  • сцепить ();
  • подставить ().

Символ

Внутри скобок указывается код – цифровое значение от 1 до 255. Берется код из специальной таблицы, где указано число и соответствующий ему символ переноса. Перенос имеет код – 10. Следовательно, используется формула – «символ(10)».

Разберем на конкретном примере, как работать с формулой «символ(10)». Для начала заполним ячейки, которые впоследствии объединим. 4 столбца первой строки – фамилия, пол, возраст, образование. Вторая – Иванова, жен, 30, высшее.

Выбираем, затем выделяем ячейку , куда осуществим перенос. Ставим курсор в строку формул.

Заполняем формулу (для выбранной ячейки):

A1&A2&СИМВОЛ(10)&B1&B2&СИМВОЛ(10)&C1&C2&СИМВОЛ(10)&D1&D2

Где знак «&» означает сцепление соответствующих ячеек, а символ(10) – перенос строки после каждой сцепленной пары.

После написания формулы нажать клавишу «Enter ». В выделенной области появится результат.

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

Есть еще один способ быстро использовать данную команду. Справа вверху есть раздел «Формат ». Следует нажать на маленькую черную стрелочку, чтобы вызвать диалоговое окно. Внизу находиться искомая команда.

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

Сцепить

Функция «сцепить()» похожа на предыдущую. Она тоже задается формулой, но в скобках указывается не код, а формула «символ(10)».

Возьмем для примера только первую строку с 4 столбцами.

Выделим область для переноса и направим курсор на строку формул. Запишем:

СЦЕПИТЬ(A1;СИМВОЛ(10);B1;СИМВОЛ(10);C1;СИМВОЛ(10);D1)

Нажмем клавишу «Enter ».

Зададим «переносить по словам ». Получим:

Количество ячеек для сцепления может быть любое.

Главное достоинство этого способа — смена данных строк и столбцов не меняет формулу, она будет иметь тот же заданный алгоритм.

Подставить

Когда ячейка вмещает много слов и нужно их переместить в другое место сразу с переносом, то пользуются формулой «подставить()».

Вносим нужный текст в А4.

Затем левой мышкой выделим А6, запишем в сроке формул:

ПОДСТАВИТЬ(A4;" ";СИМВОЛ(10))

В формулу вставляем адрес ячейки с текстом – А4. После нажатия клавиши «Enter » получим результат.

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

Замена знака переноса на пробел и обратно

Иногда нужно заменить знак переноса на пробел, сделать сплошным текстом столбик слов. Есть несколько способов это осуществить. Рассмотрим два из них:

  • окно «найти и заменить »;
  • VBA скрипты .

Поиск и замена открывается сочетанием клавиш Ctrl+H . Для удобства сначала нужно зажать клавишу Ctrl, затем нажать английскую буква H. Всплывет диалоговое окно с настраиваемыми параметрами.

В поле «найти » следует ввести Ctrl+J (сначала зажав клавишу, после набрав букву). При этом поле останется практически пустым (будет лишь едва заметная мигающая точка).

В поле «заменить на » нужно поставить пробел (или несколько), а также любой другой знак, на который планируется менять перенос.

Программа выделит область файла с искомыми значениями. После чего останется нажать «заменить все ».

Столбики из слов перестроятся в строчки с пробелами.

Используем скрипт VBA

Открыть окно редактора можно сочетанием клавиш Alt+F11 .

В редакторе находим панель «VBAProject » и кликаем на искомый файл. Правой кнопкой вызываем контекстное меню. Выбираем сначала «Insert », затем «Module ».

Появляется окно для вставки кода.

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

Sub ЗаменяемПробелы() For Each cell In Selection cell.Value = Replace (cell.Value, Chr(32), Chr(10)) Next End Sub

Если наоборот :

Sub ЗаменяемПереносы() For Each cell In Selection cell.Value = Replace (cell.Value, Chr(10), Chr(32)) Next End Sub

Где Chr (10) – это код переноса строки, а Chr (32) – код пробела.

Всплывет окно, где нужно нажать кнопку «НЕТ ».

Далее необходимо сохранить документ с поддержкой нового макроса.

Чтобы закрыть редактор, нажимаем «Alt+Q ».

Главный минус этого способа – требуется базовое знание языка VBA.

Вариативные решения задачи позволяет пользователю Microsoft Excel выбрать подходящий для себя способ.



© 2024 beasthackerz.ru - Браузеры. Аудио. Жесткий диск. Программы. Локальная сеть. Windows