Здравствуйте, товарищи! Подскажите, пожалуйста, мне надо объединять в одной ячейке информацию из множества ячеек в строке. Работаю в версии 2016, винда 7. Заранее спасибо.
Здравствуйте, товарищи! Подскажите, пожалуйста, мне надо объединять в одной ячейке информацию из множества ячеек в строке. Работаю в версии 2016, винда 7. Заранее спасибо.EVS
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
[/vba]
Здравствуйте
Макрос Павлова: [vba]
Код
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
В Excel 2019 появилась еще одна функция, которая умеет соединять текстовые строки. Она является усовершенствованной версией функции СЦЕП. В нее добавлена возможность задавать разделитель (1-ый аргумент) и указывать ей, как обрабатывать пустые ячейки (2-ой аргумент). Например, формула
Код
=ОБЪЕДИНИТЬ(", ";ИСТИНА;A2:A10)
соединит ячейки диапазона A2:A10, проставив после каждой запятую и пробел, но при этом пустые ячейки будут пропущены. Если заменить ИСТИНА на ЛОЖЬ, то пустые ячейки также буду учтены и отделены от других частей текста указанным в первом аргументе разделителем.
Начиная с Excel 2019:
Цитата
Функция ОБЪЕДИНИТЬ
В Excel 2019 появилась еще одна функция, которая умеет соединять текстовые строки. Она является усовершенствованной версией функции СЦЕП. В нее добавлена возможность задавать разделитель (1-ый аргумент) и указывать ей, как обрабатывать пустые ячейки (2-ой аргумент). Например, формула
Код
=ОБЪЕДИНИТЬ(", ";ИСТИНА;A2:A10)
соединит ячейки диапазона A2:A10, проставив после каждой запятую и пробел, но при этом пустые ячейки будут пропущены. Если заменить ИСТИНА на ЛОЖЬ, то пустые ячейки также буду учтены и отделены от других частей текста указанным в первом аргументе разделителем.