Формула excel значения через запятую

Вывод значений через запятую из таблицы

azZazZello

Дата: Среда, 15.07.2015, 07:18 |
Сообщение № 1

Группа: Пользователи

Ранг: Прохожий

Сообщений: 9


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Добрый день!
Есть задачка, вроде простая, но синтаксис никак не могу сопоставить правильно.
Суть такая: есть огромная таблица, в которой указаны МОЛы, которых ведут БУХгалтера (для примера сократил её, но искомое значение может повторятся много раз). Требуется получить результат через запятую в другой таблице.
Не могу понять как правильно из массива получить данные через запятую. ВПР выдает только 1 значение :(

 

Ответить

Nic70y

Дата: Среда, 15.07.2015, 07:35 |
Сообщение № 2

Группа: Друзья

Ранг: Экселист

Сообщений: 8137


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

может так сойдет?
массивная:

Код

=ЕСЛИОШИБКА(ИНДЕКС($B$2:$B$11;НАИМЕНЬШИЙ(ЕСЛИ($F2=$A$2:$A$11;СТРОКА($1:$10));СТОЛБЕЦ(A1)));»»)


ЮMoney 41001841029809

 

Ответить

azZazZello

Дата: Среда, 15.07.2015, 07:42 |
Сообщение № 3

Группа: Пользователи

Ранг: Прохожий

Сообщений: 9


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Да это просто праздник какой-то!!! Такой вариант тоже имеет право на жизнь!!! Если что, через СЦЕПИТЬ потом допинаю… Спасибо большое! hands

 

Ответить

azZazZello

Дата: Среда, 15.07.2015, 08:45 |
Сообщение № 4

Группа: Пользователи

Ранг: Прохожий

Сообщений: 9


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Чего то логику выражения понять не могу. Можете по пунктам разложить?
Непонятная часть выражения:

Код

НАИМЕНЬШИЙ(ЕСЛИ($F2=$A$2:$A$11;СТРОКА($1:$10));СТОЛБЕЦ(D1))

 

Ответить

Nic70y

Дата: Среда, 15.07.2015, 09:14 |
Сообщение № 5

Группа: Друзья

Ранг: Экселист

Сообщений: 8137


Репутация:

1999

±

Замечаний:
0% ±


Excel 2010

ЕСЛИ($F2=$A$2:$A$11 соот. строки массива на примере G2 это массив {ЛОЖЬ:ЛОЖЬ:3:4:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ:ЛОЖЬ}
НАИМЕНЬШИЙ( … СТОЛБЕЦ(A1))это наименьший 1 из массива = 3; H2 => СТОЛБЕЦ(B1) это наименьший 2 из массива = 4


ЮMoney 41001841029809

Сообщение отредактировал Nic70yСреда, 15.07.2015, 09:15

 

Ответить

ShAM

Дата: Среда, 15.07.2015, 09:52 |
Сообщение № 6

Группа: Друзья

Ранг: Старожил

Сообщений: 1347


Репутация:

249

±

Замечаний:
0% ±


Excel 2010

 

Ответить

azZazZello

Дата: Среда, 15.07.2015, 10:05 |
Сообщение № 7

Группа: Пользователи

Ранг: Прохожий

Сообщений: 9


Репутация:

0

±

Замечаний:
0% ±


Excel 2010

Всё, разобрался. Всем спасибо!
Пошёл дальше читать матчасть deal

 

Ответить

_Boroda_

Дата: Среда, 15.07.2015, 10:06 |
Сообщение № 8

Группа: Модераторы

Ранг: Местный житель

Сообщений: 16618


Репутация:

6465

±

Замечаний:
0% ±


2003; 2007; 2010; 2013 RUS

Еще вариант немассивной формулой

Код

=ЕСЛИОШИБКА(ПРОСМОТР(;-1/($F2=$A$2:$A$11)/ЕНД(ПОИСКПОЗ($B$2:$B$11;$F2:F2;));$B$2:$B$11);»»)

Объяснялку смотрите здесь


Скажи мне, кудесник, любимец ба’гов…
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995

 

Ответить

Rioran

Дата: Среда, 15.07.2015, 10:07 |
Сообщение № 9

Группа: Авторы

Ранг: Ветеран

Сообщений: 903


Репутация:

290

±

Замечаний:
0% ±


Excel 2013

azZazZello, здравствуйте.

Ради спортивного интереса предлагаю решение пользовательской функцией.

Во вложении пример использования. Макросы должны быть разрешены. Первые два аргумента должны быть столбцами, 3-й аргумент — проверочное имя. Аргументы функции:

Код

=СЦЕПИТЬЕСЛИ( [«Кого будем сцеплять»] ; [«Диапазон для проверки критерия»] ; [«Критерий»] )

Код функции:

[vba]

Код

Function СЦЕПИТЬЕСЛИ$(Data As Range, Condition As Range, Target$)
      Dim i As Long, j As Long, ArrX() As String, rNum As Long
      rNum = Data.Rows.Count
      If rNum <> Condition.Rows.Count Then
          СЦЕПИТЬЕСЛИ = «- Укажите равные диапазоны -»
          Exit Function
      End If
      ReDim ArrX(rNum)
      For i = 1 To rNum
          If Condition.Cells(i, 1).Value = Target Then
              ArrX(j) = Data.Cells(i, 1).Value
              j = j + 1
          End If
      Next i
      ReDim Preserve ArrX(j — 1)
      СЦЕПИТЬЕСЛИ = Join(ArrX, «, «)
End Function

[/vba]


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279

Сообщение отредактировал RioranСреда, 15.07.2015, 10:10

 

Ответить

sv2014

Дата: Среда, 15.07.2015, 11:15 |
Сообщение № 10

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 226


Репутация:

61

±

Замечаний:
0% ±


Excel 2013

azZazZello, добрый день,
могу предложить вам макрос,который решает ваш вопрос при любом количестве ваших данных
в столбце F

[vba]

Код

Sub incert()
   Dim i&, j&, n&, s$
  n = Range(«F» & Cells.Rows.Count).End(xlUp).Row
For j = 2 To n
    s = «»
    For i = 2 To 11
      If Range(«A» & i) = Range(«F» & j) Then
          s = s & «,» & Range(«B» & i)
      End If
    Next i
     Range(«G» & j) = Right(s, Len(s) — 1)
    Next j
  End Sub

[/vba]

 

Ответить

sv2014

Дата: Среда, 15.07.2015, 11:43 |
Сообщение № 11

Группа: Проверенные

Ранг: Форумчанин

Сообщений: 226


Репутация:

61

±

Замечаний:
0% ±


Excel 2013

azZazZello, или такой же вариант с пробелом при необходимости.
На вашем файле- примере проверил.

[vba]

Код

Sub incert1()
   Dim i&, j&, n&, s$
  n = Range(«F» & Cells.Rows.Count).End(xlUp).Row
For j = 2 To n
    s = «»
    For i = 2 To 11
      If Range(«A» & i) = Range(«F» & j) Then
          s = s & «,» & Chr(32) & Range(«B» & i)
      End If
    Next i
     Range(«G» & j) = Right(s, Len(s) — 1)
    Next j
  End Sub

[/vba]

 

Ответить

Alekc7711

Дата: Суббота, 22.02.2020, 02:05 |
Сообщение № 12

Группа: Пользователи

Ранг: Прохожий

Сообщений: 2


Репутация:

0

±

Замечаний:
0% ±


Excel 2019

 

Ответить

Alekc7711

Дата: Суббота, 22.02.2020, 02:30 |
Сообщение № 13

Группа: Пользователи

Ранг: Прохожий

Сообщений: 2


Репутация:

0

±

Замечаний:
0% ±


Excel 2019

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

Сообщение отредактировал PelenaСуббота, 22.02.2020, 08:05

 

Ответить

Pelena

Дата: Суббота, 22.02.2020, 08:04 |
Сообщение № 14

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

Попробуйте в этой строке поставить проверку
[vba]

Код

If Len(s)>1 Then Range(«G» & j) = Right(s, Len(s) — 1)

[/vba]


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

solniechnaya

Дата: Воскресенье, 05.03.2023, 09:57 |
Сообщение № 15

Группа: Пользователи

Ранг: Прохожий

Сообщений: 2


Репутация:

0

±

Замечаний:
0% ±


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

Пример во вложении

С Уважением…
Solniechnaya@gmail.com

 

Ответить

jakim

Дата: Воскресенье, 05.03.2023, 10:23 |
Сообщение № 16

Группа: Друзья

Ранг: Старожил

Сообщений: 1150


Репутация:

305

±

Замечаний:
0% ±


Excel 2010

Power Query

[vba]

Код

let
    Source = Excel.CurrentWorkbook(){[Name=»Table1″]}[Content],
    #»Grouped Rows» = Table.Group(Source, {«mol»}, {{«Count», each _, type table}}),
    #»Added Custom» = Table.AddColumn(#»Grouped Rows», «Custom», each [Count][buh]),
    #»Removed Columns» = Table.RemoveColumns(#»Added Custom»,{«Count»}),
    #»Extracted Values» = Table.TransformColumns(#»Removed Columns», {«Custom», each Text.Combine(List.Transform(_, Text.From), «, «), type text})
in
    #»Extracted Values»

[/vba]

К сообщению приложен файл:

6945041.xlsx
(16.5 Kb)

 

Ответить

jakim

Дата: Воскресенье, 05.03.2023, 10:46 |
Сообщение № 17

Группа: Друзья

Ранг: Старожил

Сообщений: 1150


Репутация:

305

±

Замечаний:
0% ±


Excel 2010

Исправляю ошибку, т.к. мой ответ был сделан по первому посту.

[vba]

Код

let
    Source = Excel.CurrentWorkbook(){[Name=»Table1″]}[Content],
    #»Changed Type» = Table.TransformColumnTypes(Source,{{«ном-стр», Int64.Type}, {«mol», type text}, {«buh», type text}}),
    #»Grouped Rows» = Table.Group(#»Changed Type», {«mol», «buh»}, {{«Count», each Table.RowCount(_), type number}}),
    #»Pivoted Column» = Table.Pivot(#»Grouped Rows», List.Distinct(#»Grouped Rows»[buh]), «buh», «Count»)
in
    #»Pivoted Column»

[/vba]

 

Ответить

jakim

Дата: Воскресенье, 05.03.2023, 12:13 |
Сообщение № 18

Группа: Друзья

Ранг: Старожил

Сообщений: 1150


Репутация:

305

±

Замечаний:
0% ±


Excel 2010

Последний вариант

[vba]

Код

let
    Source = Excel.CurrentWorkbook(){[Name=»Table1″]}[Content],
    #»Grouped Rows» = Table.Group(Source, {«mol», «buh»}, {{«Count», each _, type table}}),
    #»Added Custom» = Table.AddColumn(#»Grouped Rows», «Custom», each [Count][номстр]),
    #»Removed Columns» = Table.RemoveColumns(#»Added Custom»,{«Count»}),
    #»Extracted Values» = Table.TransformColumns(#»Removed Columns», {«Custom», each Text.Combine(List.Transform(_, Text.From), «, «), type text}),
    #»Pivoted Column» = Table.Pivot(#»Extracted Values», List.Distinct(#»Extracted Values»[buh]), «buh», «Custom»)
in
    #»Pivoted Column»

[/vba]

К сообщению приложен файл:

1724779.xlsx
(22.4 Kb)

 

Ответить

прохожий2019

Дата: Воскресенье, 05.03.2023, 12:52 |
Сообщение № 19

Группа: Проверенные

Ранг: Старожил

Сообщений: 1044


Репутация:

294

±

Замечаний:
0% ±


365 Beta Channel


[vba]

Код

let
    from = Excel.CurrentWorkbook(){[Name=»Table1″]}[Content],
    gr = Table.Group(from, {«mol», «buh»}, {«tmp», (t)=>Text.Combine(List.Transform(t[номстр],Text.From),», «)}),
    to = Table.Pivot(gr, List.Distinct(gr[buh]), «buh», «tmp»)
in
    to

[/vba]

хотя задачка, конечно, для DAX:

Код

=CONCATENATEX(‘Table1’;’Table1′[номстр];», «)

К сообщению приложен файл:

12345.xlsx
(94.7 Kb)

Сообщение отредактировал прохожий2019Воскресенье, 05.03.2023, 13:06

 

Ответить

solniechnaya

Дата: Воскресенье, 05.03.2023, 21:30 |
Сообщение № 20

Группа: Пользователи

Ранг: Прохожий

Сообщений: 2


Репутация:

0

±

Замечаний:
0% ±


прохожий2019, jakim,
Благодарю за предложенные варианты решения,
А всё же можно сделать с использованием кликабельной сводной таблицы?
Если мы дабл-кликнем в примере на жёлтую ячейку с числом «2» в сводной таблице, то откроется лист с детальной информацией.
также ожидается при дабл-клике в итоговой таблице на ячейку с «6, 9»

С надеждой,

 

Ответить

Бывает, что необходимо какой-то список слов, фраз или других данных, расположенных списком в столбик преобразовать в последовательность строкой через запятую или наоборот из списка через запятую сформировать столбец, где каждая отделенная запятой фраза идет с новой строки. Мне, например, это бывает нужно при работе со списками ключевых слов в SEO-задачах или при работе с системами контекстной рекламы.

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

  1. Преобразовать программе Notepad++
  2. Cтолбец в строку Excel через запятую
  3. Использовать Онлайн-скрипт

Содержание

  1. Преобразование в программе Notepad++ с помощью регулярных выражений
  2. Преобразование столбца в строку через запятую в Excel
  3. Столбик через запятую и обратно онлайн
  4. Список через запятую > в столбик
  5. Столбик > список через запятую

Преобразование в программе Notepad++ с помощью регулярных выражений

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

Вставляем в программу список для преобразования.
Преобразование списка через запятую в столбик в Нотпад
Для примера я взял набор фраз через запятую. Нажимаем комбинацию клавиш Ctrl+H (поиск с заменой), в открывшемся окне ставим метку Режим поиска — Расширенный, Найти: , (запятая и пробел), Заменить на: n Заменить все. Получаем список столбиком.

Если нужно из столбика сделать список через запятую, тогда то же самое, только Найти: rn и Заменить на: , (запятая и пробел).
Если что-то заменилось не так, как надо, делаем отмену Ctrl+Z и пробуем по-другому, например, ищем только n.

Преобразование столбца в строку через запятую в Excel

Используем формулу «лесенка».
Скачать готовый файл можно здесь: 4memo-ru-stolbik-zapyataya.xls
Запятую в самой первой ячейке можно заменить, на что-то другое, если нужно.
Формулу во втором столбце растягиваем вниз, насколько потребуется.
Если полученный список нужно вставить в другой лист эксель, то не забываем избавиться от формул, вставив предварительно данные в блокнот.

Столбик через запятую и обратно онлайн

Этот вариант подойдет для тех, кому нужно срочно, прямо на этой странице, решить задачу конвертации списка — за вас все сделает скрипт.

Список через запятую > в столбик

Разделитель-запятую можно заменить каким-нибудь другим, например, точкой с запятой, только про пробел не забудьте, если он вам нужен.

Столбик > список через запятую

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

 

Добрый день.
Ребята, подскажите: есть столбец данных, нужно сцепить через запятую в одной итоговой ячейке все значения столбца. Формула «сцепить» нужно клацать каждую ячейку, а их сотни. Как?

 

Z

Пользователь

Сообщений: 6111
Регистрация: 21.12.2012

Win 10, MSO 2013 SP1

Показать — где лень? Что с пустыми делать — пробелы, «0» вставлять?
И главное — что с этой свалкой потом делать будете? Разбирать по ячейкам-строкам?
Впрочем, было уже немало вариантов, например, от HUGO и ZVI — сцепление по критерию. Ищем!

Изменено: Z15.11.2013 16:22:42

«Ctrl+S» — достойное завершение ваших гениальных мыслей!.. ;)

 

www

Пользователь

Сообщений: 48
Регистрация: 22.12.2012

 

Kuzmich

Пользователь

Сообщений: 7998
Регистрация: 21.12.2012

#5

15.11.2013 16:38:15

Результат в последнюю ячейку +1 столбца А

Код
Option Explicit

Sub scepka()
Dim iCell As Range
Dim Itogo As String
For Each iCell In Range("A2:A" & Cells(Rows.Count, 1).End(xlUp).Row).SpecialCells(2, 1)
    Itogo = Itogo & "," & iCell
Next
Cells(Cells(Rows.Count, 1).End(xlUp).Row + 1, 1) = Mid(Itogo, 2, Len(Itogo) - 1)
End Sub

 
 

SkyPro

Пользователь

Сообщений: 309
Регистрация: 23.07.2013

#6

15.11.2013 16:48:36

Вот такая функция есть:

Код
=ampersand(A2:A100;", ")

Код
Function ampersand(rRange As Range, Optional txt$ = "; ") As String
Dim rCell As Range
    For Each rCell In rRange
        If rCell.Value <> "" Then
            ampersand = ampersand & Trim(rCell.Value) & txt
        End If
    Next
ampersand = Left(ampersand, Len(ampersand) - Len(txt))
End Function
 

SkyPro

 

MaskaSmerti

Пользователь

Сообщений: 16
Регистрация: 05.11.2013

#7

15.11.2013 17:08:27

товарищи! Всем огромное спасибо! Все попробовал! Работает :)

Сортировка списка значений в порядке возрастания или убывания довольно распространена в наших ежедневных заданиях Excel, но пробовали ли вы когда-нибудь сортировать числа, разделенные запятыми, в ячейке Excel, как показано ниже? В этой статье я расскажу, как быстро с этим справиться.
doc сортировать через запятую число 1

Сортировка значений, разделенных запятыми, с помощью функции Text to Columns

Сортировать значения, разделенные запятыми, с помощью Kutools for Excelхорошая идея3


Сортировка значений, разделенных запятыми, с помощью функции Text to Columns

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

1. Выберите ячейки, которые вы хотите разделить на ячейки, разделенные запятыми, и нажмите Данные > Текст в столбцы. И в шаг 1 мастера преобразования текста в столбцы, проверить разграниченный вариант. Смотрите скриншот:
doc сортировать через запятую число 2

2. Нажмите Download , чтобы перейти к шаг 2 мастера, и проверьте Запятая флажок и щелкните Download идти на шаг 3 мастера, выберите одну ячейку для вывода разделенных значений. Смотрите скриншот:
doc сортировать через запятую число 3

3. Нажмите Завершить, а значения, разделенные запятыми, разбиты на ячейки. Смотрите скриншот:
doc сортировать через запятую число 4

4. Выберите разделенные ячейки и нажмите Ctrl + C чтобы скопировать их, а затем выберите пустую ячейку, щелкните правой кнопкой мыши, чтобы отобразить контекстное меню, щелкните Специальная вставка > транспонировать. Смотрите скриншот:
doc сортировать через запятую число 5

Затем значения были перенесены, как показано на скриншоте ниже:
doc сортировать через запятую число 6

5. Выберите один столбец транспонированных значений, щелкните Данные вкладка и выберите нужный порядок сортировки в Сортировать и фильтровать группа. В появлении Предупреждение о сортировке диалоговое окно, проверьте Продолжить текущий выбор и нажмите OK кнопку.
doc сортировать через запятую число 7 doc сортировать через запятую число 8

И теперь выбранный столбец отсортирован в указанном порядке. Смотрите скриншот:
doc сортировать через запятую число 9.png

6. Затем повторите шаг 5, чтобы отсортировать транспонированные значения одно за другим. Смотрите скриншот:
doc сортировать через запятую число 1


  Сортировка значений, разделенных запятыми, с помощью Kutools for Exce

Если у вас есть Kutools for Excel, вам просто нужно разделить значения, разделенные запятыми, из одной ячейки на строки с помощью Разделить клетки утилита, а затем отсортируйте.

После установки Kutools for Excel, пожалуйста, сделайте, как показано ниже :( Бесплатная загрузка Kutools for Excel Сейчас!)

1. Выберите диапазон, который вы хотите разделить запятыми, и нажмите Кутулс > Слияние и разделение > Разделить клеткиИ в Разделить клетки диалог, проверьте Разделить на строки вариант в Тип раздел и перейдите, чтобы проверить Другое in Разделить на раздел и введите , в текстовое поле рядом. Смотрите скриншот:
doc сортировать через запятую число 10 doc kutools разделить ячейки 2

2. Нажмите Ok, появится диалоговое окно с напоминанием о необходимости выбора ячейки для размещения значений разделения, щелкните OK, а значения диапазона разбиты на строки запятыми. Смотрите скриншот:
doc сортировать через запятую число 11
doc сортировать через запятую число 12

3. Выберите один из разделенных столбцов, щелкните Данные > Сортировать от наименьшего к наибольшему or Сортировать от большего к меньшему как вам нужно, и, наконец, проверьте Продолжить текущий выбор вариант и нажмите OK кнопка в выскакивающем Предупреждение о сортировке диалог. Смотрите скриншот:
doc сортировать через запятую число 7 doc сортировать через запятую число 8

4. Повторите шаг 3 выше, чтобы отсортировать все разделенные столбцы один за другим.
doc сортировать через запятую число 1

Наконечник. Если вы хотите получить бесплатную пробную версию Разделить клетки Функция, пожалуйста, перейдите к бесплатной загрузке Kutools for Excel сначала, а затем перейдите к применению операции в соответствии с вышеуказанными шагами.


Лучшие инструменты для работы в офисе

Kutools for Excel Решит большинство ваших проблем и повысит вашу производительность на 80%

  • Снова использовать: Быстро вставить сложные формулы, диаграммы и все, что вы использовали раньше; Зашифровать ячейки с паролем; Создать список рассылки и отправлять электронные письма …
  • Бар Супер Формулы (легко редактировать несколько строк текста и формул); Макет для чтения (легко читать и редактировать большое количество ячеек); Вставить в отфильтрованный диапазон
  • Объединить ячейки / строки / столбцы без потери данных; Разделить содержимое ячеек; Объединить повторяющиеся строки / столбцы… Предотвращение дублирования ячеек; Сравнить диапазоны
  • Выберите Дубликат или Уникальный Ряды; Выбрать пустые строки (все ячейки пустые); Супер находка и нечеткая находка во многих рабочих тетрадях; Случайный выбор …
  • Точная копия Несколько ячеек без изменения ссылки на формулу; Автоматическое создание ссылок на несколько листов; Вставить пули, Флажки и многое другое …
  • Извлечь текст, Добавить текст, Удалить по позиции, Удалить пробел; Создание и печать промежуточных итогов по страницам; Преобразование содержимого ячеек в комментарии
  • Суперфильтр (сохранять и применять схемы фильтров к другим листам); Расширенная сортировка по месяцам / неделям / дням, периодичности и др .; Специальный фильтр жирным, курсивом …
  • Комбинируйте книги и рабочие листы; Объединить таблицы на основе ключевых столбцов; Разделить данные на несколько листов; Пакетное преобразование xls, xlsx и PDF
  • Более 300 мощных функций. Поддерживает Office/Excel 2007-2021 и 365. Поддерживает все языки. Простое развертывание на вашем предприятии или в организации. Полнофункциональная 30-дневная бесплатная пробная версия. 60-дневная гарантия возврата денег.

вкладка kte 201905


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!

офисный дно

Работа с функцией СЦЕПИТЬ в Microsoft Excel

Функция СЦЕПИТЬ в Microsoft Excel

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

Применение оператора СЦЕПИТЬ

Функция СЦЕПИТЬ относится к группе текстовых операторов Excel. Её основная задача — объединение в одной ячейке содержимого нескольких ячеек, а также отдельных символов. Начиная с версии Excel 2016, вместо данного оператора используется функция СЦЕП. Но в целях сохранения обратной совместимости оператор СЦЕПИТЬ тоже оставлен, и его можно использовать наравне со СЦЕП.

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

В качестве аргументов могут выступать, как текст, так и ссылки на ячейки, которые его содержат. Количество аргументов может варьироваться от 1 до 255 включительно.

Способ 1: объединение данных в ячейках

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

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

Переход в Мастер функций в Microsoft Excel

Мастер функций в Microsoft Excel

Аргументы функции СЦЕПИТЬ в программе Microsoft Excel

Результат функции СЦЕПИТЬ в Microsoft Excel

Способ 2: применение функции с пробелом

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

  1. Выполняем задачу по тому же алгоритму, который описан выше.
  2. Двойным щелчком левой кнопки мыши по ячейке с формулой активируем её для редактирования.

Активация ячейки для редактирования функции СЦЕПИТЬ в Microsoft Excel

Изменения внесены в Microsoft Excel

Пробелы в функции СЦЕПИТЬ в Microsoft Excel установлены

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

Способ 3: добавление пробела через окно аргументов

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

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

Ячейка с пробелом в Microsoft Excel

Добавление пустого аргумента СЦЕПИТЬ в Microsoft Excel

Аргументы функции СЦЕПИТЬ в Microsoft Excel

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

Результат обработки данных функцией СЦЕПИТЬ в Microsoft Excel

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

Способ 4: объединение колонок

С помощью функции СЦЕПИТЬ можно быстро объединять данные нескольких колонок в одну.

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

Абсолютные ссылки в аргументах функции СЦЕПИТЬ в Microsoft Excel

Маркер заполнения в Microsoft Excel

Столбцы объединены функцией СЦЕПИТЬ в Microsoft Excel

Способ 5: добавление дополнительных символов

Функцию СЦЕПИТЬ можно также использовать для добавления дополнительных символов и выражений, которых не было в первоначальном объединяемом диапазоне. Более того, можно с помощью данной функции внедрять и другие операторы.

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

Добавление текстового материала с помощью функции СЦЕПИТЬ в Microsoft Excel

Текстовый материал добавлен с помощью функции СЦЕПИТЬ в Microsoft Excel

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

ЗакрытьМы рады, что смогли помочь Вам в решении проблемы.

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 объединит выделенные ячейки в одну, слив туда же и текст через пробелы.

Чтобы объединить значения (текстовые, цифровые) из разных ячеек в одну, используется функция СЦЕПИТЬ. Ее аналог – & (амперсанд). Знак справляется с простейшими задачами. Но для объединения множества строк не подходит.

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

Функция входит в группу «текстовые». Синтаксис: (текст 1; текст 2;…). Можно включить до 255 текстовых строк. Первый аргумент – «текст 1» – является обязательным. Любые аргументы можно указать в виде текста, цифр или ссылок на ячейки.

Общие правила использования функции СЦЕПИТЬ:

  1. Для разделения аргументов применяется точка с запятой. Пропуск или использование других знаков приведет к отображению в ячейке с результатом кавычек.
  2. Текстовые аргументы обязательно заключать в кавычки. В противном случае появляется ошибка – #ИМЯ? Числа и ссылки на ячейки – не нужно.
  3. Чтобы соединяемые элементы в строке результата отобразились с пробелом, пробелы нужно добавлять в формулу с функцией. С помощью двойных кавычек с пробелом внутри (“ “) или с помощью пробела после текстового аргумента (“Иванов ”;…).

Как пользоваться функцией СЦЕПИТЬ в Excel

Начнем с простейших примеров.

Данные для объединения:

Данные для объединения.

Ставим курсор в ячейку Е2 и вызываем мастер функций (кнопка fx). В категории «Текстовые» находим функцию СЦЕПИТЬ. Аргументы – ссылки на ячейки А2, В2, С2 и пробелы:

СЦЕПИТЬ.

Результат объединения значений в ячейках:

Результат.

Такой же результат получим с помощью амперсанда:

Результат 1.

Один из аргументов – текст. Формула: =СЦЕПИТЬ(«слесарь»; » «;A2;» «;B2;» «;C2). Результат:

Результат 2.

И с более сложными задачами справится функция СЦЕПИТЬ в Excel. Примеры:

  1. Соединим текст с датой. Данные находятся в отдельных ячейках. Для столбца «Дата» установлен формат «Дата». Если использовать только функцию СЦЕПИТЬ, дата отобразится в числовом формате. Поэтому добавим функцию ТЕКСТ для форматирования чисел. Формула: Второй аргумент функции ТЕКСТ – формат представления даты. Результат: Результат 3.
  2. Соединим сразу много ячеек в строке. Если писать формулу с функцией СЦЕПИТЬ, получится долго и малоэффективно. Используем маленькую хитрость. Вот наша строка со значениями в отдельных ячейках. В ячейку Н1 ставим знак «равно». Выделяем диапазон со значениями А1:F1. Вводим амперсанд & и пробел “ “. Жмем F9. В строке формул появится формула массива. Ставим курсор в строку формул после знака «равно». Пишем название функции. Фигурные скобки заменяем на круглые и жмем ВВОД. Получаем нужный результат. Результат 4.
  3. Соединим значения через косую черточку («-», «&» и т.п.). Формула будет выглядеть так: = СЦЕПИТЬ (ссылка на ячейку 1; «/»; ссылка на ячейку 2). Результат 5.
  4. Соединим несколько значений в столбце. Функция подходит для значений в строках. Описанный выше способ с формулой массива тоже не сработает.

Преобразуем вертикальный диапазон в горизонтальный с помощью функции ТРАНСП. А затем воспользуемся формулой массива для быстрого соединения значений. В ячейку В1 ставим знак «равно». Пишем ТРАНСП. Указываем диапазон А1:А6. Вводим & и пробел (« »). Жмем F9.

ТРАНСП.

Теперь преобразуем формулу массива, добавив функцию и заменив скобки.

Формула массива.

Обратная функция СЦЕПИТЬ в Excel

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

  • ЛЕВСИМВ (отображает заданную часть символов с начала строки);
  • ПРАВСИМВ (отображает заданную часть символов с конца строки);
  • ПСТР (отображает указанную часть символов, начиная с заданной позиции) и другие.
  1. Извлечем первое слово из строки, применив функцию ЛЕВСИМВ. Аргументы – «текст» (ссылка на строку с искомым значением), «количество знаков» (число символов, которые нужно извлечь). ЛЕВСИМВ.
  2. Извлечем последнее слово из строки с помощью функции ПРАВСИМВ. Синтаксис похожий (как в предыдущем примере). Только количество знаков считается с конца. ПРАВСИМВ.
  3. Извлечем из записи в строке фамилию (второе слово) с помощью функции ПСТР. Аргументы – «текст» (ссылка на строку), «начальная позиция» (номер символа, с которого программа начнет считать число знаков); «количество знаков». В примере: Е2 – «текст», с 9 знака функция вернет 8 символов.

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

Понравилась статья? Поделить с друзьями:
  • Формула excel значение следующей ячейки
  • Формула excel значение с форматом
  • Формула excel значение предыдущей ячейки
  • Формула excel значение после знака
  • Формула excel значение одной ячейки равно другой