Excel для Microsoft 365 Excel для Microsoft 365 для Mac Excel для Интернета Excel 2021 Excel 2021 для Mac Excel 2019 Excel 2019 для Mac Еще…Меньше
Функция ОБЪЕДИНИТЬ объединяет текст из нескольких диапазонов и (или) строк, вставляя между текстовыми значениями указанный разделитель. Если в качестве разделителя используется пустая текстовая строка, функция эффективно объединит диапазоны.
Синтаксис
ОБЪЕДИНИТЬ(разделитель; игнорировать_пустые; текст1; [текст2]; …)
Аргумент |
Описание |
---|---|
Разделитель |
Текстовая строка (пустая или с символами в двойных кавычках) или ссылка на действительную текстовую строку. Введенные числа будут считаться текстом. |
ignore_empty |
В случае значения ИСТИНА игнорирует пустые ячейки. |
текст1 |
Элемент текста, который нужно присоединить. Текстовая строка или массив строк, например диапазон ячеек. |
[текст2, …] |
Дополнительные текстовые элементы для объединения. Для текстовых элементов можно указать до 252 аргументов, включая текст1. Каждый из них может быть текстовой строкой или массивом строк, например диапазоном ячеек. |
Например, выражение =ОБЪЕДИНИТЬ(» «;ИСТИНА; «Не»; «слышны»; «в»; «саду»; «даже»; «шорохи.») вернет строку Не слышны в саду даже шорохи.
Примечания
-
Если объединенная строка содержит более 32767 символов (ограничение для ячейки), функция ОБЪЕДИНИТЬ вернет ошибку #ЗНАЧ!.
Примеры
Скопируйте данные примеров из приведенных ниже таблиц и вставьте их в ячейку A1 нового листа Excel. Чтобы отобразить результаты формул, выделите их и нажмите клавишу F2, а затем — клавишу ВВОД. При необходимости измените ширину столбцов, чтобы видеть все данные.
Пример 1
Валюта |
|
---|---|
доллар США |
|
австралийский доллар |
|
китайский юань |
|
гонконгский доллар |
|
израильский шекель |
|
южнокорейская вона |
|
российский рубль |
|
Формула: |
=ОБЪЕДИНИТЬ(«, «; ИСТИНА; A2:A8) |
Результат: |
доллар США, австралийский доллар, китайский юань, гонконгский доллар, израильский шекель, южнокорейская вона, российский рубль |
Пример 2
A |
B’s |
---|---|
a1 |
b1 |
a2 |
b2 |
a4 |
b4 |
a5 |
b5 |
a6 |
b6 |
a7 |
b7 |
Формула: |
=ОБЪЕДИНИТЬ(«, «; ИСТИНА; A2:B8) |
Результат: |
a1, b1, a2, b2, a4, b4, a5, b5, a6, b6, a7, b7 Если в качестве значения аргумента «игнорировать_пустые» используется ЛОЖЬ, результат будет следующим: a1, b1, a2, b2, , , a4, b4, a5, b5, a6, b6, a7, b7 |
Пример 3
Город |
Субъект |
Индекс |
Страна |
---|---|---|---|
Тула |
Тульская обл. |
74133 |
Россия |
Красноярск |
Красноярский край |
98109 |
Россия |
Москва |
Московская обл. |
08830 |
Россия |
Хабаровск |
Хабаровский край |
33309 |
Россия |
Воронеж |
Воронежская обл. |
85285 |
Россия |
конец |
|||
, |
, |
, |
; |
Формула: |
=ОБЪЕДИНИТЬ(A8:D8; ИСТИНА; A2:D7) |
||
Результат: |
Тула,Тульская обл.,591843,Россия;Красноярск,Красноярский край,654321,Россия;Москва,Московская обл.,125130,Россия;Хабаровск,Хабаровский край,333091,Россия;Воронеж,Воронежская обл.,394000,Россия;конец |
Дополнительные сведения
Вы всегда можете задать вопрос специалисту Excel Tech Community или попросить помощи в сообществе Answers community.
См. также
Функция СЦЕПИТЬ
Функция СЦЕП
Общие сведения о формулах в Excel
Рекомендации, позволяющие избежать появления неработающих формул
Поиск ошибок в формулах
Сочетания клавиш и горячие клавиши в Excel
Текстовые функции (справочник)
Функции Excel (по алфавиту)
Функции Excel (по категориям)
Нужна дополнительная помощь?
Содержание
- Функции Excel 2016 СЦЕП (CONCAT) и ОБЪЕДИНИТЬ (TEXTJOIN)
- TEXTJOIN function
- Syntax
- Remarks
- Examples
- VBA Excel. Функция Join (синтаксис, параметры, значения)
- Синтаксис функции Join
- Параметры функции Join
- Возвращаемые значения
- Join tables with INDEX and MATCH
- Related functions
- Summary
- Generic formula
- Explanation
- Retrieving customer name
- Retrieving customer state
- Dynamic two-way match
- Join cells with comma
- Related functions
- Summary
- Generic formula
- Explanation
- Joining cells with other delimiters
- TEXTJOIN Function
Функции Excel 2016 СЦЕП (CONCAT) и ОБЪЕДИНИТЬ (TEXTJOIN)
В начале 2016 года Microsoft Excel выпустил очередной релиз своей программы. В этой заметке рассмотрены две новые текстовые функции Excel. На момент написания этой статьи они доступны пока только в режиме Excel online, поэтому скриншоты и последующий ролик записаны именно там.
Чтобы объединить содержимое нескольких ячеек в одну, традиционно используют формулу Excel СЦЕПИТЬ либо специальный оператор амперсанд &. В то же время у этой функции есть ряд недостатков. Основной из них — это необходимость каждую склеиваемую ячейку указывать в виде отдельного аргумента. При большом количестве склеиваемых ячеек приходится изрядно помучиться. С появлением новых функций СЦЕП и ОБЪЕДИНИТЬ этому неудобству пришел конец.
На смену СЦЕПИТЬ пришла функция СЦЕП, которая может сцепить целый диапазон! Теперь вместо отдельных ячеек A1;A2;A3;A4;A5;A6;A7;A8;A9;A10 достаточно указать диапазон A1:A10. Многие давно этого ждали. Дождались!
Однако радость кажется неполной, т.к. между словами обычно вставляют пробелы, запятые или какие-либо другие разделители, а СЦЕП этого не умеет. В примере выше нужно их либо сразу указать в конце каждого слова, либо опять же прописывать вручную. Вот бы здорово еще и разделители сами вставлялись.
Вы не поверите, но это как раз то, что умеет делать вторая текстовая функция эксель, о которой я хотел рассказать! Встречайте — ОБЪЕДИНИТЬ.
Ее синтаксис следующий.
ОБЪЕДИНИТЬ(разделитель; игнорировать_пустые; текст1; [текст2]; …)
разделитель – то, что должно вставляться между ячейками.
игнорировать_пустые – здесь ставится либо 0 (ЛОЖЬ), либо 1 (ИСТИНА). Если поставить 1, то пустые ячейки будут игнорироваться и разделители не будут дублироваться.
текст1; [текст2]; … – это либо отдельные ячейки, либо целый соединяемый диапазон.
В нашем примере функция ОБЪЕДИНИТЬ позволяет получить следующий результат.
Примечание. Некоторое время функция имела названия TEXTJOIN.
Я специально удалил бананы, чтобы показать отсутствие лишнего пробела после яблок.
Теперь объединить ячейки Excel, добавив к ним разделитель, можно всего за несколько секунд. Отличная функция ОБЪЕДИНИТЬ. Выглядит настолько круто, что хочется разработчикам пожать руку.
Источник
TEXTJOIN function
The TEXTJOIN function combines the text from multiple ranges and/or strings, and includes a delimiter you specify between each text value that will be combined. If the delimiter is an empty text string, this function will effectively concatenate the ranges.
Note: This feature is available on Windows or Mac if you have Office 2019, or if you have a Microsoft 365 subscription. If you are a Microsoft 365 subscriber, make sure you have the latest version of Office.
Syntax
TEXTJOIN(delimiter, ignore_empty, text1, [text2], …)
A text string, either empty, or one or more characters enclosed by double quotes, or a reference to a valid text string. If a number is supplied, it will be treated as text.
If TRUE, ignores empty cells.
Text item to be joined. A text string, or array of strings, such as a range of cells.
Additional text items to be joined. There can be a maximum of 252 text arguments for the text items, including text1. Each can be a text string, or array of strings, such as a range of cells.
For example, =TEXTJOIN(» «,TRUE, «The», «sun», «will», «come», «up», «tomorrow.») will return The sun will come up tomorrow.
If the resulting string exceeds 32767 characters (cell limit), TEXTJOIN returns the #VALUE! error.
Examples
Copy the example data in each of the following tables, and paste it in cell A1 of a new Excel worksheet. For formulas to show results, select them, press F2, and then press Enter. If you need to, you can adjust the column widths to see all the data.
Источник
VBA Excel. Функция Join (синтаксис, параметры, значения)
Использование функции Join в VBA Excel, ее синтаксис и параметры. Значения, возвращаемые функцией Join. Примеры использования.
Функция Join предназначена в VBA Excel для объединения подстрок, содержащихся в линейном массиве, в одну строку с добавлением разделителей. Разделителем может быть как отдельный символ или строка из нескольких символов, так и пустая строка. Функция Join по своему действию является обратной функции Split, которая создает массив подстрок из одной строки.
Синтаксис функции Join
Обязательным параметром функции Join является SourceArray, если Delimiter явно не указан, используется его значение по-умолчанию.
Параметры функции Join
Параметр | Описание | Значение по умолчанию |
SourceArray | Одномерный массив, содержащий объединяемые подстроки | Нет |
Delimiter | Разделитель, представляющий пустую строку*, один или более символов | Пробел |
*Если в качестве разделителя используется пустая строка, то все элементы списка объединяются без разделителей — слитно.
Возвращаемые значения
Функция Join возвращает строку, полученную путем объединения исходных подстрок, содержащихся в одномерном массиве, с добавлением между соединяемыми подстроками разделителей, состоящих из одного или более символов.
Пример 1
Результат в MsgBox: Иван-да-марья
В первом примере используется Delimiter = «-» (дефис).
Пример 2
Результат в MsgBox: Крокодил
Во втором примере используется Delimiter = «» (пустая строка).
Пример 3
Результат в MsgBox: Бегемот 255 Жираф 788 Зайчик
Третий пример показывает, что функция Join работает не только с массивами строкового типа (As String), но и универсального типа (As Variant). Числовые значения автоматически преобразуются в текстовые и объединяются в общую строку. В третьем примере используется Delimiter по-умолчанию.
Вы можете скопировать коды из приведенных примеров в модуль VBA своей рабочей книги Excel, посмотреть, как они работают. Поэкспериментируйте, подставляя свои данные, чтобы на практике ознакомиться с возможностями функции Join.
Источник
Join tables with INDEX and MATCH
Summary
To join or merge tables that have a common id, you can use the INDEX and MATCH functions. In the example shown, the formula in E5 is:
where «data» is the named range H5:J8 and «ids» is the named range H5:H8.
Generic formula
Explanation
This formula pulls the customer name and state from the customer table into the order table. The MATCH function is used to locate the right customer and the INDEX function is used to retrieve the data.
Retrieving customer name
Working from the inside out, the MATCH function is used to get a row number like this:
- The lookup value comes the customer id in C5, which is a mixed reference, with the column locked, so the formula can be easily copied.
- The lookup array is the named range ids (H5:H8), the first column in the customer table.
- The match type is set to zero to force an exact match.
The MATCH function returns 2 in this case, which goes into INDEX as the row number:
With the column number hard-coded as 2 (customer names are in column 2) and the array set to the named range «data» (H5:J8) INDEX returns: Amy Chang.
Retrieving customer state
The formula to retrieve customer state is almost identical. The only difference is the column number is hard-coded as 3, since state info appears in the 3rd column:
Dynamic two-way match
By adding another MATCH function to the formula, you can set up a dynamic two-way match. For example, with the named range «headers» for H4:J4, you can use a formula like this:
Here, a second MATCH function has been added to get the correct column number. MATCH uses the current column header in the first table to locate the correct column number in the second table, and automatically returns this number to INDEX.
Источник
Join cells with comma
Summary
To join multiple cell values with a comma, you can use a formula based on the SUBSTITUTE and TRIM functions. You can use this same approach to concatenate values in cells with any delimiter you like. In the example shown, the formula in G5 is:
Note: the new TEXTJOIN function is a better way to solve this problem. See below for more information.
Generic formula
Explanation
Working from the inside out, the formula first joins the values the 5 cells to the left using the concatenation operator (&) and a single space between each value:
This part of the formula is annoyingly manual. To speed things up, copy &» «& to the clipboard before you start. Then follow this pattern:
[click] [paste] [click] [paste] [click] [paste]
until you get to the last cell reference. It actually goes pretty fast.
The result of this concatenation (before TRIM and SUBSTITUTE run) is a string like this:
Next, the TRIM function is used to «normalize» all spacing. TRIM automatically strips space at the start and end of a given string, and leaves just one space between all words inside the string. This takes care of extra spaces causes by empty cells.
Finally, the SUBSTITUTE function is used to replace each space (» «) with a comma and space («, «), returning text like this:
Joining cells with other delimiters
To join cells with another delimiter (separator), just adapt the «new_text» argument inside SUBSTITUTE. For example, to join cells with a forward slash, use:
The output will look like this:
TEXTJOIN Function
The TEXTJOIN function is a new function available in Excel 365 and Excel 2019. TEXTJOIN allows you to concatenate a range of cells with a delimiter, and will can also be set to ignore empty cells. To use TEXTJOIN with the example above, the formula is:
Источник
В начале 2016 года Microsoft Excel выпустил очередной релиз своей программы. В этой заметке рассмотрены две новые текстовые функции Excel. На момент написания этой статьи они доступны пока только в режиме Excel online, поэтому скриншоты и последующий ролик записаны именно там.
Чтобы объединить содержимое нескольких ячеек в одну, традиционно используют формулу Excel СЦЕПИТЬ либо специальный оператор амперсанд &. В то же время у этой функции есть ряд недостатков. Основной из них — это необходимость каждую склеиваемую ячейку указывать в виде отдельного аргумента. При большом количестве склеиваемых ячеек приходится изрядно помучиться. С появлением новых функций СЦЕП и ОБЪЕДИНИТЬ этому неудобству пришел конец.
На смену СЦЕПИТЬ пришла функция СЦЕП, которая может сцепить целый диапазон! Теперь вместо отдельных ячеек A1;A2;A3;A4;A5;A6;A7;A8;A9;A10 достаточно указать диапазон A1:A10. Многие давно этого ждали. Дождались!
Однако радость кажется неполной, т.к. между словами обычно вставляют пробелы, запятые или какие-либо другие разделители, а СЦЕП этого не умеет. В примере выше нужно их либо сразу указать в конце каждого слова, либо опять же прописывать вручную. Вот бы здорово еще и разделители сами вставлялись.
Вы не поверите, но это как раз то, что умеет делать вторая текстовая функция эксель, о которой я хотел рассказать! Встречайте — ОБЪЕДИНИТЬ.
Ее синтаксис следующий.
ОБЪЕДИНИТЬ(разделитель; игнорировать_пустые; текст1; [текст2]; …)
разделитель – то, что должно вставляться между ячейками.
игнорировать_пустые – здесь ставится либо 0 (ЛОЖЬ), либо 1 (ИСТИНА). Если поставить 1, то пустые ячейки будут игнорироваться и разделители не будут дублироваться.
текст1; [текст2]; … – это либо отдельные ячейки, либо целый соединяемый диапазон.
В нашем примере функция ОБЪЕДИНИТЬ позволяет получить следующий результат.
Примечание. Некоторое время функция имела названия TEXTJOIN.
Я специально удалил бананы, чтобы показать отсутствие лишнего пробела после яблок.
Теперь объединить ячейки Excel, добавив к ним разделитель, можно всего за несколько секунд. Отличная функция ОБЪЕДИНИТЬ. Выглядит настолько круто, что хочется разработчикам пожать руку.
Поделиться в социальных сетях:
Explanation
This formula pulls the customer name and state from the customer table into the order table. The MATCH function is used to locate the right customer and the INDEX function is used to retrieve the data.
Retrieving customer name
Working from the inside out, the MATCH function is used to get a row number like this:
MATCH($C5,ids,0)
- The lookup value comes the customer id in C5, which is a mixed reference, with the column locked, so the formula can be easily copied.
- The lookup array is the named range ids (H5:H8), the first column in the customer table.
- The match type is set to zero to force an exact match.
The MATCH function returns 2 in this case, which goes into INDEX as the row number:
=INDEX(data,2,2)
With the column number hard-coded as 2 (customer names are in column 2) and the array set to the named range «data» (H5:J8) INDEX returns: Amy Chang.
Retrieving customer state
The formula to retrieve customer state is almost identical. The only difference is the column number is hard-coded as 3, since state info appears in the 3rd column:
=INDEX(data,MATCH($C5,ids,0),2) // get name
=INDEX(data,MATCH($C5,ids,0),3) // get state
Dynamic two-way match
By adding another MATCH function to the formula, you can set up a dynamic two-way match. For example, with the named range «headers» for H4:J4, you can use a formula like this:
=INDEX(data,MATCH($C5,ids,0),MATCH(E$4,headers,0))
Here, a second MATCH function has been added to get the correct column number. MATCH uses the current column header in the first table to locate the correct column number in the second table, and automatically returns this number to INDEX.
Использование функции Join в VBA Excel, ее синтаксис и параметры. Значения, возвращаемые функцией Join. Примеры использования.
Функция Join предназначена в VBA Excel для объединения подстрок, содержащихся в линейном массиве, в одну строку с добавлением разделителей. Разделителем может быть как отдельный символ или строка из нескольких символов, так и пустая строка. Функция Join по своему действию является обратной функции Split, которая создает массив подстрок из одной строки.
Join (SourceArray,[Delimiter])
Обязательным параметром функции Join является SourceArray, если Delimiter явно не указан, используется его значение по-умолчанию.
Параметры функции Join
Параметр | Описание | Значение по умолчанию |
SourceArray | Одномерный массив, содержащий объединяемые подстроки | Нет |
Delimiter | Разделитель, представляющий пустую строку*, один или более символов | Пробел |
*Если в качестве разделителя используется пустая строка, то все элементы списка объединяются без разделителей — слитно.
Возвращаемые значения
Функция Join возвращает строку, полученную путем объединения исходных подстрок, содержащихся в одномерном массиве, с добавлением между соединяемыми подстроками разделителей, состоящих из одного или более символов.
Пример 1
Sub Test1() Dim a(2) As String, s As String a(0) = «Иван» a(1) = «да» a(2) = «марья» s = Join(a, «-«) MsgBox s End Sub |
Результат в MsgBox: Иван-да-марья
В первом примере используется Delimiter = «-» (дефис).
Пример 2
Sub Test2() Dim a(2) As String, s As String a(0) = «Кро» a(1) = «ко» a(2) = «дил» s = Join(a, «») MsgBox s End Sub |
Результат в MsgBox: Крокодил
Во втором примере используется Delimiter = «» (пустая строка).
Пример 3
Sub Test3() Dim a(4) As Variant, s As String a(0) = «Бегемот» a(1) = 255 a(2) = «Жираф» a(3) = 788 a(4) = «Зайчик» s = Join(a) MsgBox s End Sub |
Результат в MsgBox: Бегемот 255 Жираф 788 Зайчик
Третий пример показывает, что функция Join работает не только с массивами строкового типа (As String), но и универсального типа (As Variant). Числовые значения автоматически преобразуются в текстовые и объединяются в общую строку. В третьем примере используется Delimiter по-умолчанию.
Вы можете скопировать коды из приведенных примеров в модуль VBA своей рабочей книги Excel, посмотреть, как они работают. Поэкспериментируйте, подставляя свои данные, чтобы на практике ознакомиться с возможностями функции Join.