Макросы в excel объединение ячеек без потери данных

Надпись на заборе: «Катя + Миша + Семён + Юра + Дмитрий Васильевич +
товарищ Никитин + рыжий сантехник + Витенька + телемастер Жора +
сволочь Редулов + не вспомнить имени, длинноволосый такой +
ещё 19 мужиков + муж = любовь!»

Способ 1. Функции СЦЕПИТЬ, СЦЕП и ОБЪЕДИНИТЬ

В категории Текстовые есть функция СЦЕПИТЬ (CONCATENATE), которая соединяет содержимое нескольких ячеек (до 255) в одно целое, позволяя комбинировать их с произвольным текстом. Например, вот так:

Склейка текста функцией СЦЕПИТЬ

Нюанс: не забудьте о пробелах между словами — их надо прописывать как отдельные аргументы и заключать в скобки, ибо текст. 

Очевидно, что если нужно собрать много фрагментов, то использовать эту функцию уже не очень удобно, т.к. придется прописывать ссылки на каждую ячейку-фрагмент по отдельности. Поэтому, начиная с 2016 версии Excel, на замену функции СЦЕПИТЬ пришла ее более совершенная версия с похожим названием и тем же синтаксисом — функция СЦЕП (CONCAT). Ее принципиальное отличие в том, что теперь в качестве аргументов можно задавать не одиночные ячейки, а целые диапазоны — текст из всех ячеек всех диапазонов будет объединен в одно целое:

Склейка функцией СЦЕП

Для массового объединения также удобно использовать новую функцию ОБЪЕДИНИТЬ (TEXTJOIN), появившуюся начиная с Excel 2016. У нее следующий синтаксис:

=ОБЪЕДИНИТЬ(Разделитель; Пропускать_ли_пустые_ячейки; Диапазон1; Диапазон2 … )

где

  • Разделитель — символ, который будет вставлен между фрагментами
  • Второй аргумент отвечает за то, нужно ли игнорировать пустые ячейки (ИСТИНА или ЛОЖЬ)
  • Диапазон 1, 2, 3 … — диапазоны ячеек, содержимое которых хотим склеить

Например:

Склейка текста функцией ОБЪЕДИНИТЬ

Способ 2. Символ для склеивания текста (&)

Это универсальный и компактный способ сцепки, работающий абсолютно во всех версиях Excel. 

Для суммирования содержимого нескольких ячеек используют знак плюс «+«, а для склеивания содержимого ячеек используют знак «&» (расположен на большинстве клавиатур на цифре «7»). При его использовании необходимо помнить, что:

  • Этот символ надо ставить в каждой точке соединения, т.е. на всех «стыках» текстовых строк также, как вы ставите несколько плюсов при сложении нескольких чисел (2+8+6+4+8)
  • Если нужно приклеить произвольный текст (даже если это всего лишь точка или пробел, не говоря уж о целом слове), то этот текст надо заключать в кавычки. В предыдущем примере с функцией СЦЕПИТЬ о кавычках заботится сам Excel — в этом же случае их надо ставить вручную.

Вот, например, как можно собрать ФИО в одну ячейку из трех с добавлением пробелов:

Сцепка текста амперсандом

Если сочетать это с функцией извлечения из текста первых букв — ЛЕВСИМВ (LEFT), то можно получить фамилию с инициалами одной формулой:

Склейка ФИО

Способ 3. Макрос для объединения ячеек без потери текста.

Имеем текст в нескольких ячейках и желание — объединить эти ячейки в одну, слив туда же их текст. Проблема в одном — кнопка Объединить и поместить в центре (Merge and Center) в Excel объединять-то ячейки умеет, а вот с текстом сложность — в живых остается только текст из верхней левой ячейки. 

Чтобы объединение ячеек происходило с объединением текста (как в таблицах Word) придется использовать макрос. Для этого откройте редактор Visual Basic  на вкладке Разработчик — Visual Basic (Developer — Visual Basic) или сочетанием клавиш Alt+F11, вставим в нашу книгу новый программный модуль (меню Insert — Module) и скопируем туда текст такого простого макроса:

Sub MergeToOneCell()
    Const sDELIM As String = " "     'символ-разделитель
    Dim rCell As Range
    Dim sMergeStr As String
    If TypeName(Selection) <> "Range" Then Exit Sub   'если выделены не ячейки - выходим
    With Selection
        For Each rCell In .Cells
            sMergeStr = sMergeStr & sDELIM & rCell.Text  'собираем текст из ячеек
        Next rCell
        Application.DisplayAlerts = False   'отключаем стандартное предупреждение о потере текста
        .Merge Across:=False                'объединяем ячейки
        Application.DisplayAlerts = True
        .Item(1).Value = Mid(sMergeStr, 1 + Len(sDELIM))    'добавляем к объед.ячейке суммарный текст
    End With
End Sub

Теперь, если выделить несколько ячеек и запустить этот макрос с помощью сочетания клавиш Alt+F8 или кнопкой Макросы на вкладке Разработчик (Developer — Macros), то Excel объединит выделенные ячейки в одну, слив туда же и текст через пробелы.

Ссылки по теме

  • Делим текст на куски
  • Объединение нескольких ячеек в одну с сохранением текста с помощью надстройки PLEX
  • Что такое макросы, как их использовать, куда вставлять код макроса на VBA

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

Автоматическое объединение большого количества ячеек по вертикали

Допустим мы имеем маркетинговый план внедрения нового информационного программного продукта:

маркетинговый план.

Чтобы план было легче визуально анализировать лучше объединить ячейки этапов выполнения плана: A2:A4, B2:B4 и т.д. К сожалению, многократно объединять диапазоны с большим количеством строк вручную – это задание требует слишком много времени и сил. Кроме того, можно допустить много ошибок после очередного десятка выделения ячеек перед объединением. Рассмотрим каким способом можно существенно облегчить свой труд переложив большую часть работы на простую программу, написанную на языке VBA прямо в Excel. Для этого следует написать макрос, который безошибочно быстро и автоматически объединит ячейки диапазонов с разным количеством строк для каждого столбца.

  1. Сначала откройте редактор макросов: «РАЗРАБОТЧИК»-«Код»-«Visual Basic» (или просто нажмите ALT+F11).
  2. Visual Basic.

  3. Откройте стандартный модуль выбрав инструмент в редакторе: «Insert»-«Module» и введите в него следующий код макроса для объединения ячеек:

Sub ObedenitVertikal()
Dim i As Long
Dim j As Long
Dim intext As String
Application.DisplayAlerts = False
For i = 1 To Selection.Columns.Count
  intext = Selection.Cells(1, i)
  For j = 2 To Selection.Rows.Count
    intext = intext & Chr(10) & Selection.Cells(j, i)
  Next
  Selection.Columns(i).Merge
  Selection.Cells(1, i) = intext
Next
Application.DisplayAlerts = True
End Sub

Module.

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



Запуск макроса для объединения ячеек

Выбираем инструмент: «РАЗРАБОТЧИК»-«Код»-«Макросы».

РАЗРАБОТЧИК.

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

Выполнить.

Потом снова вручную выделите новый диапазон A5:D9 и повторно выполните тот же макрос. Ячейки будут выделены как показано ниже на рисунке:

Пример.

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

Символ обрыва строки вставлен с помощью функции Chr(10). Каждый вводимый символ из клавиатуры имеет свой код ASCII. Если введем код 10 в качестве аргумента для функции Chr(), тогда она будет возвращать символ обрыва строки. Такой же код ASCII на клавиатуре вызывается клавишей Enter для обрыва строки во всех текстовых редакторах.

Потом остальной код макроса объединяет все ячейки столбцов в выделенном диапазоне, а потом заполняет их текстом из текстовой переменной. Чтобы не появлялось предупреждающее сообщение об объединении ячеек, в начале кода программы макроса отключаем отображение сообщений в Excel средствами программирования. Для этой цели используем свойство: Application.DisplayAlerts = Fale. После выполнения кода макроса изменяем значение свойства на True, чтобы в дальнейшем процессе работы с программой Excel все сообщения предупреждений (Alerts) имели возможность отображаться.

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

Модернизация и настройка кода макроса для объединения ячеек

Если нам нужно изменить текст разделяющий отдельные строки символов содержащийся в целых ячейках, то можно вписать другой код символа, текст или несколько текстов соединенных символом амперсантом (&). Допустим мы хотим вставить между двумя символами разрыва строки текст, состоящий из пяти тире «——». Тогда данную строку следует модифицировать следующим образом:

intext = intext & Chr(10) & “——” & Chr(10) & Selection.Cells(j, i)

разбиение на строки.

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

закомментируем.

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

Dim k As Long

Перед первым циклом добавим новую строку с кодом:

For k = 1 To Selection.Areas.Count

А после последнего цикла добавим строку конца нового цикла:

Next

Соответственно добавим новый отступ, чтобы код был более читабельным. Кроме того, после всех изменений для объекта Selection добавим ссылку на диапазон:

Selection.Areas(k)

Полная новая версия макроса для объедения ячеек выделенных нескольких диапазонов, выглядит так:

Sub ObedenitVertikal()
Dim i As Long
Dim j As Long
Dim k As Long
Dim intext As String
Application.DisplayAlerts = False
For k = 1 To Selection.Areas.Count
  For i = 1 To Selection.Areas(k).Columns.Count
    intext = Selection.Areas(k).Cells(1, i)
    For j = 2 To Selection.Areas(k).Rows.Count
     intext = intext & Chr(10) & Selection.Areas(k).Cells(j, i)
    Next
    Selection.Areas(k).Columns(i).Merge
    Selection.Areas(k).Cells(1, i) = intext
  Next
Next
Application.DisplayAlerts = True
End Sub

Тепер выделяем 2 диапазона подряд A2:D4, A5:D8, A с нажатой клавишей CTRL на клавиатуре:

2 диапазона подряд.

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

Пример2.

Читайте также:

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

Как объединить столбцы в Excel используя макрос.

Если выполнить первую версию макроса (без всех этих изменений), для многократного выделения диапазонов с нажатой клавишей CTRL, то объединение строк по столбцам будет выполнено только для первого диапазона.

Объединение ячеек в программе Excel

​Смотрите также​ размер можно следующим​ которая не была​ строк. Информация появляется​: фантастика! :)​ .Font.ColorIndex = 5​ с сервером либо​ Call Fill_Sel_by_Link​ Selection ActiveCell переносить​ затруднит, подскажите, пожалуйста,​ удалить этот временный​ чтобы не засмеяли…​ ячейки куда-то в​ и выберите первую​ одну ячейку, кликаем​ объединяемых ячеек присутствуют​ форматированию ячейки, то​Довольно часто при работе​ образом:​

​ объединена – нельзя.​ в центре объединенной​

Простое объединение ячеек

​Как можно это​ — та же​ наши сисадмины мудрят…​Application.ScreenUpdating = False:​ налево вверх либо​ как можно перед​ лист.​

​Юрий М​ свободное место.​ ячейку, которую нужно​ по объединенной ячейке​ данные, ведь при​ нужно из выпадающего​ с таблицами в​Выделить нужный диапазон, вмещающий​ НО как получить​ ячейки.​ обойти? Объединить ячейки,​ ошибка.​

​При попытке ввода​ Application.DisplayAlerts = False​ вместо ActiveCell использовать​ объединением заполнить все​Возможно, проблема будет​: Так вроде у​

​2. Там их​ объединить.​ правой кнопкой мыши,​ объединении все значения,​ списка выбрать пункт​ программе Microsoft Excel​

​ определенное количество ячеек.​ такую таблицу:​Порядок объединения ячеек в​ но чтобы данные​

​Перенёс макрос в​ ответа получаю:​Set wsActSh =​ левую верхнюю ячейку​ ячейки выделенного диапазона​ ещё и в​ Димы такая функция​

​ объединяешь, говоря «Ну​Введите символ​ и в контекстном​ кроме левого верхнего​ «Объединить ячейки».​

Объединение через контекстное меню

​ случается ситуация, когда​ Щелкаем правой кнопкой​Давайте посмотрим на нее​ Excel:​ обоих сохранились и​ модуль листа новой​ERROR​ ActiveSheet: Set wsTempSh​ в Selection ,​ формулой-ссылкой = ActiveCell?​

Переход к формату ячеек в Microsoft Excel

​ том, какое имя​ есть. Если ничего​ и фиг с​&​ меню выбираем пункт​ будут утрачены?​В этом случае, запись​ требуется объединить несколько​ мыши по любой​ внимательнее, на листе​Возьмем небольшую табличку, где​ соединились. Как говорится,​ книги, на всякий​The requested URL​

​ = Sheets.Add(, Sheets(Sheets.Count)):​ а уж потом​

Объединение без потерь

​Я просто никогда​ дать временному листу​ не путаю.​ ним» на предупреждение​и пробел, заключенный​ «Копировать».​Существует выход и в​

​ по умолчанию будет​ ячеек. Задача не​ латинской букве вверху​ Excel.​ несколько строк и​ и овцы целы​ случай переименовал в​ could not be​ wsTempSh.Name = «Бракозябула_вот_так_сам_в_шоке»​ заполнять формулами и​ не вставлял формулы​ чтобы такого наверняка​Alex_ST​ Ёкселя о том,​

Вставка столбца в Microsoft Excel

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

Добавление столбца в Microsoft Excel

​Черта разделяет не одну​ столбцов.​ и волки сыты!​ Мой_Макрос… Та же​ retrieved​wsActSh.Activate​ объединять ячейки…​ в ячейки с​ уже не было​: Нет, там не​ что все данные​Выберите следующую ячейку, которую​ ячейку с первоначальными​ будем использовать функцию​

Сцепление ячеек в Microsoft Excel

​ края объединенной ячейки.​ эти ячейки не​Открываем меню «Ширина столбца».​

Сцепленные ячейки в Microsoft Excel

​ ячейку, а показывает​Для объединения ячеек используется​Буду рада содержательным​ ошибка…​The following error​Set rRange =​Alex_ST​ помощью VBA да​ в книге, хотя​ то…​ кроме левой верхней​ нужно объединить, и​

Копирование ячейки в Microsoft Excel

​ данными, и, кликнув​ «СЦЕПИТЬ». Прежде всего,​Также, есть возможность объединить​ содержат информации. Но,​Вводим тот показатель ширины,​ границы двух ячеек.​

Параметры вставки в Microsoft Excel

​ инструмент «Выравнивание» на​ ответам:))​Alex_ST​ was encountered while​ Selection: rRange.Copy wsTempSh.Range(rRange.Address)​

​: СПАСИБО ЗА ПОМОЩЬ!​ и в цикле​ это, наверное, обходится​Только что посмотрел.​ ячейки будут потеряны.​ нажмите клавишу ВВОД.​

Удаление столбцов в Microsoft Excel

​ по ней, выбираем​ нужно добавить между​ несколько ячеек построчно.​ что делать, если​ который нам нужен.​

​ Ячейки выше «разделенной»​ главной странице программы.​Papaandreou​: В тупую заменил​ trying to retrieve​Set rMrgRange =​Решил для удобства​ по всем выделенным​ несколькими пробами создания​Там СКЛЕИВАНИЕ содержимого​

​3. С объединённых​

lumpics.ru

Объединение текста из двух или нескольких ячеек в одну

​ Пример формулы:​ в параметрах вставки​ ячейками, которые собираемся​ Для этого, выбираем​ в них уже​

Объединение данных с помощью символа «амперсанд» (&)

  1. ​ Жмем ОК.​ и ниже объединены​Выделяем ячейки, которые нужно​

  2. ​: делается это с​Union(Selection.Resize(Selection.Rows.Count — 1).Offset(1),​ the URL: ?​ wsTempSh.Range(rRange.Address)​

  3. ​ разбить на два​​ ячейкам кроме активной​​ листа с разными​ объединяемых ячеек, а​

  4. ​ ячеек копируешь формат​=A2&» «&B2​ пункт «Значения».​ соединить, ещё одну​​ нужный диапазон, и​​ внесены данные? Неужели​

Объединение данных с помощью функции СЦЕП

  1. ​Можно изменить ширину ячеек​ по строкам. Первый​ объединить. Нажимаем «Объединить​

  2. ​ помощью функции «СЦЕПИТЬ»​​ _​​The request or​

  3. ​rMrgRange.Merge: rMrgRange.Copy: rRange.PasteSpecial​ макроса чтобы можно​

    ​ могу запутаться… Сделать-то​ хитрыми именами (да​ не объединение без​ (формат по образцу)​.​

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

support.office.com

Объединение ячеек без потери данных

​ и поместить в​​формулы​Selection.Resize(, Selection.Columns.Count -​ reply is too​ xlPasteFormats: wsTempSh.Delete​ было пользоваться раздельно.​ в конце-концов сделаю,​ хоть текущая дата​
​ потери данных​ и форматируешь им​Выделите ячейку, в которую​ ячейке появились те​ кликаем правой кнопкой​
​ кликаем по значению​ Давайте разберемся, как​
​ Для этого нужно​ четвертый в этой​ центре».​
​вставить формулу​ 1).Offset(, 1)).Formula =​ large.​Set wsActSh =​Вот что получилось:​ но времени потрачу​ + минуты:секунды) при​Склеить-то просто. А​
​ исходные ячейки.​ вы хотите вставить​ данные, которые перед​ мыши на крайнюю​ «Объединить по строкам».​

​ объединить ячейки, в​ выделить весь лист.​ таблице состоят из​При объединении сохраняются только​сцепить​ «=» & Selection(1).Address​
​Alex_ST​ Nothing: Set wsTempSh​Sub Fill_Sel_by_Link() ‘​ много.​

​ включенном обработчике ошибок.​ вот хитро объединить…​После таких манипуляций​ объединенные данные.​
​ этим были в​ правую из объединяемых​Как видим, после этого​ том числе и​ Нажмем левой кнопкой​ одного столбца. Второй​ те данные, которые​текст1 — выбрать​на цикл по​

​: Что-то у меня​ = Nothing: Set​ заполнить Selection формулами-ссылками​Guest​Alex_ST​Sh_Alex​ под сгруппированной ячейкой​
​Введите выражение​ ячейке с формулой.​ ячеек. В появившемся​ ячейки объединились не​

​ без потери данных,​​ мыши на пересечение​ столбец – из​ содержатся в верхней​ первую сцепляемую ячейку​

​ всем ячейкам Selection,​​ вдруг СЕГОДНЯ перестал​ rMrgRange = Nothing:​
​ на Selection(1)​
​: Selection.Resize(Selection.Rows.Count — 1).Offset(1).Formula​: The_Prist,​: В PLEX есть​ будут оставаться не​
​= СЦЕП(​Теперь, удаляем крайний левый​

​ контекстном меню выбираем​​ в одну общую​ в программе Microsoft​ названий строк и​ двух.​ левой ячейке. Если​
​текст2 — выбрать​

​ кроме первой:​​ работать макрос заполнения​ Set rRange =​If Selection.Cells.Count With​ = «=R[-1]C» подходит​СУПЕР!!!​ макрос, который это​ затёртыми данные и​.​ столбец, содержащий ячейку​ пункт «Вставить…».​
​ ячейку, а приняли​ Excel.​ столбцов (или комбинация​

​Таким образом, чтобы разбить​ нужно сохранить все​ вторую сцепляемую ячейку​Dim i%​ …​ Nothing​ Union(Selection.Resize(Selection.Rows.Count — 1).Offset(1),​ только для столбца…​Отлично работает!​ прекрасно делает: «Объединение​ всех остальных ячеек​Выберите первую ячейку, которую​ с первичными данными,​

​Открывается окошко, в котором​ построчное объединение.​Скачать последнюю версию​ горячих клавиш CTRL+A).​ нужную ячейку на​ данные, то переносим​в ячейке, где​For i =​Sub Fill_Sel() ‘​Application.ScreenUpdating = True:​ _​А если выделены​Особенно порадовало название​ ячеек с сохранением​

​ кроме левой верхней.​​ нужно объединить.​
​ и столбец, содержащий​
​ нужно переставить переключатель​
​Существует возможность объединить ячейки​ Excel​
​Подведите курсор к названиям​ две части, необходимо​ их туда, нам​ стоит курсор произойдет​ 2 To Selection.Cells.Count​ заполнить Selection формулами-ссылками​ Application.DisplayAlerts = True​Selection.Resize(, Selection.Columns.Count -​

​ ячейки в строке​​ временного листа «Бракозябула_вот_так_сам_в_шоке»​
​ текста».​Они появляются после​Для разделения объединяемых ячеек​ ячейку с формулой​ в положение «Добавить​ через контекстное меню.​Хотя, мы будем показывать​ столбцов и добейтесь​ объединить соседние ячейки.​ не нужно:​ слияние данных​With Selection(i)​ на Selection(1)​End Sub​ 1).Offset(, 1))​

​ или двумерный диапазон?​Да уж, вероятность​С уважением, Александр.​ разгруппировки, а самое​ используйте запятые, а​ сцепления.​
​ столбец». Делаем это,​ Для этого, выделяем​ объединение ячеек на​ того, чтобы он​ В нашем примере​Точно таким же образом​Червяк анатолий​.Formula = «=»​Union(Selection.Resize(Selection.Rows.Count — 1).Offset(1),​Очень удобно стало​.Formula = «=»​

​Alex_ST​​ того, что лист​Alex_ST​ главное, что видятся​
​ для добавления пробелов,​Таким образом, мы получаем​ и кликаем по​

​ курсором ячейки, которые​​ примере программы Excel​ принял вид крестика.​ – сверху и​ можно объединить несколько​
​: по конкретнее. что​ & Selection(1).Address​ _​ работать!​ & Selection(1).Address​: А нет в​ с таким именем​: Дмитрий, а раз​ автофильтром.​

​ запятых и другого​​ новую ячейку, содержащую​ кнопке «OK».​ следует объединить, кликаем​ 2010, но данный​
​ Нажмите левую кнопку​ снизу. Ту ячейку,​ вертикальных ячеек (столбец​ за данные? текст?​
​.Replace What:=»$», Replacement:=»»,​Selection.Resize(, Selection.Columns.Count -​Тему можно закрывать.​.Font.ColorIndex = 5​ VBA чего-нибудь обратного​ есть у кого-то​ нельзя без стороннего​Возникла идея выполнять​ текста — кавычки.​ данные, которые следовало​

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

​ LookAt:=xlPart​ 1).Offset(, 1)).Formula =​Alex_ST​
​ ‘ сделать шрифт​ Intersect, т.е. возвращающего​ в книге, так​
​ диапазона, но по​ такое объединение макросом​
​Введите закрывающую скобку в​ объединить, а все​
​ теми ячейками, которые​ кнопкой мыши, и​ для других версий​ границу, устанавливая размер​ не объединяем.​Можно объединить сразу группу​
​ в Excel –​
​End With​

​ «=» & Selection(1).Address​: А что нужно​ формул синим (это​ неперекрывающиеся части диапазонов?​
​ сильно стремится к​ вашим словам «С​ без использования промежуточных​ конце формулы и​ промежуточные ячейки удалены.​
​ мы собираемся объединить,​ в появившемся контекстном​ данного приложения.​ столбца. Ячейки во​Для решения данной задачи​
​ смежных ячеек по​ удобный инструмент для​Next​
​End Sub​ исправить чтобы ссылки​
​ на любителя, конечно,​Тогда диапазон заполнения​ нулю, что ей​ доп.диапазоном — легко»,​
​ ячеек для форматирования.​
​ нажмите клавишу ВВОД.​Как видим, если обычное​
​ ставим значение без​ меню выбираем пункт​
​Для того, чтобы объединить​ всем листе станут​
​ следует выполнить следующий​ горизонтали и по​ наглядного представления информации.​и всё заработало…​Вчера я его​ в формулах получались​
​ но я так​ формулами просто было​
​ можно пренебречь…​

​ то может хоть​А уж если​
​ Пример формулы:​

​ объединение ячеек в​​ кавычек «=СЦЕПИТЬ(X;Y)», где​ «Формат ячеек».​ несколько ячеек, из​ одинаковыми.​ порядок действий:​
​ вертикали.​ Такие возможности программы​Guest​

​ засунул в Personal.xls,​​ не фиксированными (не​ привык)​
​ бы определить, задав​Alex_ST​ черновой набросок макроса​ в скрываемые при​=CONCAT(A2, » Семья»)​

​ программе Microsoft Excel​​ X и Y​В открывшемся окне формата​

​ которых только одна​​В Excel можно сделать​
​Щелкаем правой кнопкой по​Если нужно объединить только​ для работы бесценны.​
​: Подскажите пожалуйста, как​ сделал к нему​

​ =$D$15, а =D15)?​
​End With​ этой операции как​: The_Prist, ещё вопросик-просьба:​
​ на скорую руку​ объединении ячейки опционально​.​ довольно простое, то​
​ – это координаты​ ячеек, переходим во​ заполнена данными, или​

​ несколько строк из​​ ячейке и выбираем​ строки в выделенном​Значимость оптимальной демонстрации данных​ объединить ячейки, например,​

​ кнопочку на панели​Или проще после​End Sub​
​ аргументы ActiveCell и​дальнейшее развитие возможностей​
​ слепите, чтобы «Путь​ (или другим макросом)​Alex_ST​
​ с объединением ячеек​

​ соединяемых ячеек, после​ вкладку «Выравнивание». Отмечаем​ вообще абсолютно пустых,​ одной ячейки. Перечислены​ инструмент «Формат» (или​ диапазоне, нажимаем на​ объяснять никому не​
​ если в одной​ управления, добавил в​ вставки формулы Replace​Sub Merge_Cell_with_PasteFormat() ‘​ Selection, а потом​ вашего макроса, которое​ озарить»?​ можно будет вместо​
​: Давно пользуюсь при​ без потерь придется​ добавление столбца. Например,​ флажком пункт «Объединение​ выделяем курсором нужные​ улицы в одну​ комбинация горячих клавиш​ запись «Объединить по​
​ нужно. Давайте посмотрим,​ стоит число 25​ начало диалоги типа​ применить?​ объединить ячейки в​ в цикле заполнить​

​ мне очень хотелось​​А уж дальше​
​ их текста вставить​ необходимости методом объединения​
​ повозиться. Тем не​ чтобы объединить таким​ ячеек». Тут же​

​ ячейки. Затем, во​ строку.​ CTRL+1).​
​ строкам».​
​ что можно сделать​ в следующей месяц​
​ «ты уверен?»…​
​Alex_ST​ Selection без потери​
​ его формулой-ссылкой на​ бы провести, подразумевает,​
​ я как-нибудь попытаюсь​
​ формулы = первой​
​ ячеек без потери​

​ менее, это тоже​​ способом ячейки A2​ можно установить и​ вкладке Excel «Главная»,​Нам нужно сделать несколько​На закладке «Граница» выбираем​В результате получится:​ с ячейками в​ «март» и в​А сегодня нажимаю​: нет, так не​ данных​

​ ActiveCell ?​​ что будет сделан​

​ и сам «допилить/дошлифовать»…​​ ячейке, то будет​ данных путём применения​
​ выполнимая задача для​

​ и C2, в​​ другие параметры: направление​

planetaexcel.ru

MS Excel 2007 объединение ячеек без потери данных

​ кликаем по значку​ строк, чтобы каждая​ диагональ. Ее направление,​Если хоть одна ячейка​ Microsoft Excel. Из​ следующей год «2012»,​ на кнопочку вызова​

​ вышло…​If Selection.Cells.Count Dim​

​Alex_ST​​ аналогичный модернизированный макрос,​Я так предполагаю,​
​ вообще очень удобно.​
​ к объединяемым ячейкам​
​ данной программы.​
​ ячейку B2 вставляем​ и ориентация текста,​
​ на ленте «Объединить​ улица была написана​
​ тип линии, толщину,​ в выбранном диапазоне​ данного урока вы​

​ как сделать чтобы​​ макроса, прохожу диалог,​при двумерном выделении​

Объединение и разбиение данных в ячейках в Excel с форматированием

​ rRange As Range,​: Сейчас попробовал извратиться​ заполняющий перед объединением​ что надо в​Попытался записать макрос​ функции «формат по​

​Автор: Максим Тютюшев​ выражение «=СЦЕПИТЬ(A2;C2)».​ выравнивание по горизонтали​ и поместить в​ в одной строке.​ цвет.​ еще редактируется, кнопка​ узнаете о новых​ была дата в​ а дальше вылетаю​ каждая ячейка ссылается​

Как объединить ячейки без потери данных Excel?

​ rMrgRange As Range,​ и выделил диапазон​ ячеек все ячейки​ начале работы макроса​ такого хитрого объединения​ образцу» объединенного диапазона.​Данные из нескольких ячеек​Как видим, после этого,​ и вертикали, автоподбор​

​ центре».​Выделяем ячейку. На вкладке​

  1. ​Жмем ОК.​ для объединения может​ возможностях заполнения и​Исходная табличка.
  2. ​ одной ячейке 25.03.2012​ на ошибку «Ошибка​ на ту, что​Выравнивание-объединить.
  3. ​ wsTempSh As Worksheet,​ на странице не​ выделенного диапазона формулой​ создать в книге​бъединить и поместить в центре.
  4. ​ макрорекордером, но там​Здесь на форуме​ можно объединить в​ символы в общей​ ширины, перенос по​В этом случае, ячейки​ «Выравнивание» нажимаем кнопку​Если нужно провести диагональ​Результат объедения.
  5. ​ быть недоступна. Необходимо​ форматирования данных в​ (См.файл)​ выполнения 1004. Ошибка​Объединение по вертикали.
  6. ​ над ней, а​ wsActSh As Worksheet​ слева-вниз-направо, а снизу-вверх-налево.​ = ActiveCell (или​Групповое объединение ячеек.
  7. ​ временный лист, скопировать​ вроде всё понятно,​ уже тоже как-то​ одну с помощью​ ячейке «склеились».​Объединить по строкам.

​ словам. Когда все​

Объеденные только строки.

​ объединятся, а все​ «Перенос текста».​ в большой ячейке,​ заверить редактирование и​ рабочих листах.​ikki​ определяемая приложением или​ не на Selection(1)​

​If MsgBox(«Заполнить объединяемые​

Как разбить ячейку в Excel на две?

​Макрос заполнения формулами,​ в этот же​ Selection на него,​ а вот как​ было описание этой​ символа «амперсанд» (&)​Но, теперь вместо одной​

Сложная таблица.

​ настройки выполнены, жмем​ данные, которые будут​Данные в ячейке автоматически​

Схема ячеек в сложной таблице.

​ воспользуйтесь инструментом «Вставка».​ нажать «Ввод» для​Смежные ячейки можно объединить​: =—(A4&».»&B4&».»&C4)​ объектом.»​Alex_ST​ ячейки формулами -​ естественно, отработав, вызвал​ макрос будет введена​ там объединить скопированные​ создать макрос, не​ не документированной возможности​

​ или функции СЦЕП.​ объединённой ячейки мы​ на кнопку «OK».​ вписываться в объединенную​ распределятся по нескольким​На вкладке «Иллюстрации» выбираем​ выхода из режима.​ по горизонтали или​kim​

Как разделить ячейку в Excel по диагонали?

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

  1. ​ ошибку — циклическая​ такая опциональная возможность,​ ячейки, наложить их​ понимаю…​ Ёкселя.​
  2. ​Выделите ячейку, в которую​ имеем три: две​Как видим, произошло объединение​ ячейку, станут помещаться​Формат ячеек.
  3. ​ строкам.​

Результат разделения ячеек по диагонали.

​ «Фигуры». Раздел «Линии».​​ по вертикали. В​

Вставка.

​: Можно без точек​ на Union, т.к.​

Фигуры-линии.

​ рекурсивная формула…​ ячейку выделенного диапазона?»,​

Диагональ объединенных ячеек.

Как сделать ячейки одинакового размера?

​ ссылка.​ например, по MsgBox’y​ формат на исходные​

  1. ​Даже показывать «плоды​Не удобно это​ вы хотите вставить​ ячейки с первоначальными​ ячеек.​ в центре.​Клик по заголовкам столбцов.
  2. ​Пробуйте, экспериментируйте. Устанавливайте наиболее​Ширина столбца.
  3. ​Проводим диагональ в нужном​Разбить на две ячейки​ результате получается одна​Поле ввода ширины столбца.

​ :)​ я пытался .Formula​Alex_ST​ _​Значит сначала нужно​ типа «Заполнить формулой-ссылкой?»)​ ячейки (формат по​ своих трудов» над​ делать в ручную:​

Ширина столбца.

​ объединенные данные.​ данными, и одну​Но, что делать, если​Если вы хотите, чтобы​ удобные для своих​ направлении.​ можно только объединенную​ ячейка, занимающая сразу​=—(A4&B4&C4)​ = «=» &​

Как разбить ячейку на строки?

​: Блин…​vbQuestion + vbYesNo)​ либо как-то внутри​Если не очень​ образцу), а потом​

Пример длинной исходной строки.

​ макросом не буду​1. Копируешь объединяемые​Введите = (знак равенства)​ объединенную. Чтобы сделать​

​ в нескольких из​ данные размещались, согласно​ читателей форматы.​

Выравнивание перенос текста.

​Преобразовать ячейки в один​ ячейку. А самостоятельную,​ пару столбцов либо​

Автоматическое распределение по строкам.

​ikki​ Selection(1).Address заменять на​Опять что-то либо​

exceltable.com

​ = vbYes Then​

Как в Excel объединить ячейки с текстом в одну без потери данных

Многофункциональный редактор таблиц Microsoft Excel позволяет решать одну и ту же задачу несколькими способами. Пользователь может выполнять действия вручную, с помощью горячих клавиш, формул, специальных надстроек. Это же касается и объединения ячеек с разными условиями. Сегодня мы поговорим о том, как в Экселе объединить ячейки с текстом в одну без потери данных. Эта операция выполняется как штатными средствами программы, так и с помощью сторонних плагинов. Если соединять заполненные клетки обычным образом, то сохранится содержимое только левой ячейки, поэтому без хитростей в данном случае не обойтись.

Буфер обмена

С помощью обычной процедуры копирования и вставки можно решить данную проблему. Однако успешно перенести содержимое ячеек можно с помощью встроенной функции «Буфер обмена». Рассмотрим процедуру детально:

  1. Сначала вам нужно открыть боковое окно с содержимым буфера обмена. Для этого во вкладке «Главная» нажмите на кнопку отображения этого блока в основном окне Excel.
  2. Теперь выделите мышкой ячейки, содержимое которых нужно объединить в одну. Скопируйте их с помощью панели инструментов, контекстного меню или сочетания клавиш Ctrl + C .
  3. Теперь дважды щелкните мышкой по ячейке, где должен поместиться объединенный текст.
  4. Кликните по вставляемому объекту из окна «Буфер обмена». После чего текст из двух ячеек появится в одной клетке.

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

Объединение с помощью формулы

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

  1. Дважды кликните мышкой по ячейке, в которую необходимо поместить объединенный текст.
  2. Начните вписывать формулу. Для этого поставьте знак = и кликните сначала по первой ячейке. Затем через знак & добавляйте остальные клетки. Примените формулу клавишей Enter .
  3. Теперь вы видите содержимое ячеек, но без разделительных знаков. Чтобы между словами или блоками появились пробелы, необходимо усложнить формулу. Она примет вид =D3&” “&E3 .

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

Как объединить ячейки в Excel без потери данных?

Описание проблемы

К сожалению, при объединении двух или более ячеек, содержащих текст, Excel сохраняет значение только первой ячейки. Данные в остальных ячейках будут удалены. Решить эту задачу стандартным способом можно предварительно объединив текст ячеек с помощью функции СЦЕПИТЬ. Однако это несколько неудобно и отнимает большое количество времени. Чтобы быстро и удобно объединять ячейки и НЕ терять данные в них, лучше пользоваться дополнением к Excel — надстройкой VBA-Excel. Это наглядно продемонстрировано на рисунке справа.

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

Ниже подробно описан порядок действий для этих случаев.

Если необходимо объединить одну область ячеек

  1. Выделите диапазон ячеек, которые хотите объединить с сохранением текста.
  2. Перейдите на вкладку VBA-Excel
  3. Нажмите на команду Объединить ячейки
  4. Выберите разделитель в появившемся диалоговом окне. Для удобства имеется предварительный просмотр результата.
  5. Нажмите кнопку Объединить

​Если необходимо объединить сразу несколько диапазонов ячеек

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

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

3 способа склеить текст из нескольких ячеек

Надпись на заборе: «Катя + Миша + Семён + Юра + Дмитрий Васильевич +
товарищ Никитин + рыжий сантехник + Витенька + телемастер Жора +
сволочь Редулов + не вспомнить имени, длинноволосый такой +
ещё 19 мужиков + муж = любовь!»

Способ 1. Функции СЦЕПИТЬ, СЦЕП и ОБЪЕДИНИТЬ

В категории Текстовые есть функция СЦЕПИТЬ (CONCATENATE) , которая соединяет содержимое нескольких ячеек (до 255) в одно целое, позволяя комбинировать их с произвольным текстом. Например, вот так:

Нюанс: не забудьте о пробелах между словами — их надо прописывать как отдельные аргументы и заключать в скобки, ибо текст.

Очевидно, что если нужно собрать много фрагментов, то использовать эту функцию уже не очень удобно, т.к. придется прописывать ссылки на каждую ячейку-фрагмент по отдельности. Поэтому, начиная с 2016 версии Excel, на замену функции СЦЕПИТЬ пришла ее более совершенная версия с похожим названием и тем же синтаксисом — функция СЦЕП (CONCAT) . Ее принципиальное отличие в том, что теперь в качестве аргументов можно задавать не одиночные ячейки, а целые диапазоны — текст из всех ячеек всех диапазонов будет объединен в одно целое:

Для массового объединения также удобно использовать новую функцию ОБЪЕДИНИТЬ (TEXTJOIN) , появившуюся начиная с Excel 2016. У нее следующий синтаксис:

=ОБЪЕДИНИТЬ( Разделитель ; Пропускать_ли_пустые_ячейки ; Диапазон1 ; Диапазон2 . )

  • Разделитель — символ, который будет вставлен между фрагментами
  • Второй аргумент отвечает за то, нужно ли игнорировать пустые ячейки (ИСТИНА или ЛОЖЬ)
  • Диапазон 1, 2, 3 . — диапазоны ячеек, содержимое которых хотим склеить

Например:

Способ 2. Символ для склеивания текста (&)

Это универсальный и компактный способ сцепки, работающий абсолютно во всех версиях Excel.

Для суммирования содержимого нескольких ячеек используют знак плюс «+«, а для склеивания содержимого ячеек используют знак «&» (расположен на большинстве клавиатур на цифре «7»). При его использовании необходимо помнить, что:

  • Этот символ надо ставить в каждой точке соединения, т.е. на всех «стыках» текстовых строк также, как вы ставите несколько плюсов при сложении нескольких чисел (2+8+6+4+8)
  • Если нужно приклеить произвольный текст (даже если это всего лишь точка или пробел, не говоря уж о целом слове), то этот текст надо заключать в кавычки. В предыдущем примере с функцией СЦЕПИТЬ о кавычках заботится сам Excel — в этом же случае их надо ставить вручную.

Вот, например, как можно собрать ФИО в одну ячейку из трех с добавлением пробелов:

Если сочетать это с функцией извлечения из текста первых букв — ЛЕВСИМВ (LEFT) , то можно получить фамилию с инициалами одной формулой:

Способ 3. Макрос для объединения ячеек без потери текста.

Имеем текст в нескольких ячейках и желание — объединить эти ячейки в одну, слив туда же их текст. Проблема в одном — кнопка Объединить и поместить в центре (Merge and Center) в Excel объединять-то ячейки умеет, а вот с текстом сложность — в живых остается только текст из верхней левой ячейки.

Чтобы объединение ячеек происходило с объединением текста (как в таблицах Word) придется использовать макрос. Для этого откройте редактор Visual Basic на вкладке Разработчик — Visual Basic (Developer — Visual Basic) или сочетанием клавиш Alt + F11 , вставим в нашу книгу новый программный модуль (меню Insert — Module) и скопируем туда текст такого простого макроса:

Теперь, если выделить несколько ячеек и запустить этот макрос с помощью сочетания клавиш Alt + F8 или кнопкой Макросы на вкладке Разработчик (Developer — Macros) , то Excel объединит выделенные ячейки в одну, слив туда же и текст через пробелы.

Как в Excel объединить текст из двух и нескольких ячеек в одну

Объединение текста нескольких ячеек в одну – базовая функция при работе с табличными данными, с ее п.

Объединение текста нескольких ячеек в одну – базовая функция при работе с табличными данными, с ее помощью содержание произвольного количества полей можно сцеплять нужным образом и размещать в свободных ячейках. Она используется при составлении пофамильных списков сотрудников, отчетов различных направлений и других операциях с большими массивами информации. Для объединения ячеек есть два способа: с потерей данных и без потери. В первом случае в объединенной ячейке остается только одно значение, во втором – сохраняется весь текст. Второй способ предполагает как минимум четыре варианта объединения: с использованием двух функций («Сцеп-сцепить» и «Объединить»), при помощи символа амперсанд и с применением макроса. В статье подробно разберемся, как в Excel объединить текст нескольких ячеек в одну.

С помощью функции

Excel предусматривает несколько функций для объединения ячеек. Для начала, расскажем о самой простой и «теряющей» информацию. Если интересует, как в Экселе соединить текст из двух ячеек в одну, оставив только одно значение – то вам понадобится функция «объединить» в разделе «Формат ячейки».

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

Также эта функция есть в графе «Главная» в разделе «Выравнивание» в верхней части экрана.

С помощью функции «Сцеп-сцепить»

В ранних версиях Excel для объединения текста ячеек применялась функция «Сцепить», в новых вариантах программы ее заменили функцией «Сцеп». Для ее использования:

  1. Щелкните по пустой ячейке в Excel.
  2. Поставьте знак «=» и большими буквами введите «Сцепить» либо «Сцеп».
  3. В скобках после формулы кликните по ячейке, которая должна быть первой в объединенной ячейке, либо введите ее адрес вручную (например, A1). Затем поставьте точку с запятой, после щелкните или напишите вторую ячейку. Затем поставьте точку с запятой и отметьте третье поле. После перечисления адресов нажмите «Enter». В поле, где вбивали формулу, появится объединенный текст. Он появится без пробелов между текстовыми блоками. Чтобы этого избежать, отбейте пробел в каждой отдельно взятой ячейке после находящегося текста, либо после адреса ячейки в формуле добавьте пробел вручную, написав « » (пробел в кавычках). Пробел в формуле также отделяется от остальных элементов точкой с запятой.

Как в Экселе соединить текст из двух ячеек в одну с помощью функции «Объединить»

«Объединить» — усовершенствованная вариация функции «Сцеп». Ее отличие в том, что параметры вводятся единожды на этапе написания функции. В частности, разделитель придется указать один раз для содержимого всех ячеек. Для того чтобы воспользоваться функцией «Объединить» нужно выполнить действия:

  1. В пустой ячейке поставьте знак «=» и напишите большими буквами «Объединить».
  2. В скобках после формулы укажите разделитель в кавычках (« » ,«,»,« и »), затем поставьте точку с запятой. Второй параметр формулы – это игнорирование пустых полей. Если они не должны учитываться в формуле, напишите «1», в ряде версий этот параметр обозначается словом «Истина» или «Ложь». Затем перечислите через запятую ячейки, которые нужно объединить, и нажмите «Enter».

В итоге формула должна иметь вид: «=ОБЪЕДИНИТЬ(« »;ИСТИНА; «A1»; «A2»; «A3»).

Если в A1 – «Иванов», в А2 – «Иван», в А3 – «Иванович», то после нажатия «Enter» в пустой ячейке появится «Иванов Иван Иванович».

С помощью символа «&»

Четвертый способ объединить ячейки – использовать амперсанд ( «&»). Для этого:

  1. В пустой ячейке наберите «=».
  2. Напишите нужную ячейку, например, А1, затем поставьте знак «&», потом в кавычках введите разделитель. Это может быть пробел или запятая, он также помещается в кавычки, потом введите вторую ячейку, которую нужно объединить. Если их больше двух, пробел выставите после каждой нового поля. Формула должна выглядеть так: «=А1&« »&А2& « »&А3». После нажатия «Enter» содержимое ячеек объединится.

С помощью макроса

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

Чтобы записать макрос:

  1. В разделе «Разработчик» в графе «Код» нажмите на клавишу «Записать макрос».
  2. В появившемся окне выберите имя макроса, чтобы потом было удобнее его искать, присвойте ему сочетание клавиш и место хранения, добавьте описание.
  3. Нажмите «Ок», затем точно и без ошибок (потому что макрос записывает и ошибки тоже) проделайте алгоритм.
  4. Вернитесь во вкладку «Разработчик» и «Код» и нажмите «Остановить запись».

Макрос записывается в виде кода Visual Basic для приложений на одноименном языке программирования, который доступен для редактирования при нажатии комбинации ALT + F11. При ручном редактировании становится доступным правка записанного макроса, однако это требует дополнительных знаний и недоступно для рядового пользователя. Также макросы способны работать в нескольких продуктах Microsoft Office одновременно. Выполняется макрос нажатием присвоенной комбинации либо через окно «Макрос», которое вызывается комбинацией ALT + F8.

Как объединить ячейки в таблице Excel

При работе с таблицами в программе Эксель у пользователей нередко возникает потребность в объединении некоторых ячеек. Сама по себе эта задача не представляет никакой сложности, если в этих ячейках нет данных, т.е. они пустые. Но как быть в ситуации, когда в ячейках содержится какая-либо информация? Не потеряются ли данные после объединения? В этой статье мы подробно разберём этот вопрос.

Как объединить ячейки

Процедура довольно легкая и может использоваться в следующих случаях:

  1. Объединение пустых ячеек.
  2. Объединение ячеек, среди которых только одна содержит заполненные данные.

Прежде всего, необходимо выделить левой кнопкой мыши объединяемые ячейки. Затем переходим в меню программы на вкладку «Главная» и ищем там нужный нам параметр — «Объединить и поместить в центре».

При таком способе выделенные ячейки будут объединены в одну единую, а содержимое будет выровнено по центру.

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

При таком способе объединения данные будут выровнены по правому краю объединенной ячейки (по умолчанию).

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

При таком способе объединения результат несколько иной: ячейки объединились в одну, но с разбивка по строкам сохранилась.

Как объединить ячейки через контекстное меню

Ячейки также можно объединить посредством использования контекстного меню. Для выполнения этой задачи необходимо выделить курсором объединяемую область, щелкнуть правой кнопкой мыши, после чего выбрать из списка «Формат ячеек».

А появившемся окне выбираем пункт «Выравнивание» и ставим галочку напротив «Объединение ячеек». В этом меню также можно выбрать и другие параметры объединения: перенос текста по словам, автоподбор ширины, горизонтальная и вертикальная ориентация, направление, различные варианты выравнивания и прочее. После того как все параметры выставлены кликаем на «OK».

Итак, как мы и хотели, ячейки объединились в одну.

Как объединить ячейки без потери данных

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

И у этой, казалось бы, непростой задачи есть решение. Для этого можно воспользоваться функцией «СЦЕПИТЬ».

Первым шагом делаем следующее. Между объединяемыми ячейками необходимо добавить пустую ячейку. Чтобы это сделать нужно правой кнопкой мыши щелкнуть на номер столбца/строки, перед которыми мы хотим добавить новый столбец/строку и выбрать в раскрывшемся меню пункт “Вставка”.

В полученной новой ячейке прописываем формулу по следующему шаблону: “=СЦЕПИТЬ(X;Y)“. При этом X и Y — это значения координат объединяемых ячеек.

В нашем случае, требуется сцепить ячейки B2 и D2, значит, прописываем формулу “=СЦЕПИТЬ(B2;D2)” в ячейку C2.

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

Для того чтобы убрать лишние ячейки, щелкаем мышью (правой кнопкой) по получившейся объединенной ячейке. В выпадающем списке необходимо нажать «Копировать».

Далее идем в ячейку, находящуюся справа от объединенной (в которой находятся изначальные данные), щелкаем правой кнопкой мыши по ней, после чего выбираем из списка параметр “Специальная вставка».

В открывшемся окне среди всех вариантов выбираем “Значения” и щелкаем “ОК”.

В результате в этой ячейке окажется результат ячейки C2, в которой мы объединили первоначальные значения ячеек B2 и D2.

Теперь, после того, как мы вставили результат в ячейку D2, можно удалить лишние ячейки, которые теперь не нужны (B2 и С2). Для этого выбираем лишние ячейки/столбцы левой кнопкой мыши, далее по выделенному диапазону щелкаем правой кнопкой мыши и в открывшемся меню выбираем “Удалить”.

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

Заключение

Таким образом, в обычном объединении ячеек ничего сложного нет. А вот чтобы объединить ячейки сохранив данные придётся слегка потрудиться. Но все же эта задача вполне выполнимая благодаря удобному функционалу программы Excel. Главное – запастись терпением и соблюдать правильную последовательность действий. Рекомендуем перед началом работы на всякий случай сделать копию документа, если вдруг что-то не получится и данные будут утеряны.

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

Макрос соединения текста в Excel

Макрос соединения текста в Excel

Ранее уже рассказывал о замечательной функции в программе Excel,  которая называется «СЦЕПИТЬ».

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

Для больших объемов сцепки (слияния текста)  требуются значительные трудозатраты.

Достойных аналогов этой функции, к сожалению, найти не удалось.

На помощь пришел язык VBA для написания макросов в «Excel».

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

Макрос слияния выглядит следующим образом:

  1. Sub Sliyanie()
  2. Dim txt As String ‘Объявляем переменную ТХТ
  3. txt = «» ‘присваиваем объявленной переменной пустое значение
  4. Dim cell
  5. For Each cell In Selection ‘ для всех ячеек в выделении выполняем следующие действия
  6. txt = txt + cell.text ‘к значению переменной txt добавляем значение ячейки
  7. Next
  8. MsgBox (txt) ‘выводим итоговое значение
  9. End Sub

Это самый простой вариант макроса слияния текстовых значений ячеек в выделенном диапазоне.

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

Например:

Фрагмент макроса сцепки текста

Фрагмент макроса сцепки текста

Добавить форму UserForm с двумя полями TextBox. В одном поле указывать разделитель ( «/», «;», «.», и т.д.) а в другое поле выводить результат для удобства копирования.

Можно на форму UserForm вывести кнопки активации макроса «Соединить» и для ленивых кнопку «Копировать» — для копирования содержимого поля с результатом в буфер обмена.

Макрос копирования по ссылке: http://ruexcel.ru/ctrlc/

Можно добавить чек бокс (checkbox) для выбора учитывать пустые ячейки или пропускать их.

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

Понравилась статья? Поделить с друзьями:
  • Макросы в excel ударение
  • Макросы в excel объединение файлов в один
  • Макросы в excel удаление строк с условием
  • Макросы в excel удаление пустых строк
  • Макросы в excel удаление значения в столбце