Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Копирование в ячейку текста из других ячеек через запятую - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Manyasha, SLAVICK, китин  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Копирование в ячейку текста из других ячеек через запятую (Формулы/Formulas)
Копирование в ячейку текста из других ячеек через запятую
AZaytsev Дата: Вторник, 07.01.2020, 14:58 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
Добрый день! С наступившими праздниками, друзья!

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


То есть, если напротив ячейки в столбце А стоит 1 в столбце B, то она попадает в ячейку F17 и так далее.
Таким образом, я ожидаю увидеть в F17 следующее содержание:
"Киви, Манго, Дуриан"
в F18:
"Малина, Клубника, Ирга"
в F19:
"Огурец, Редис, Картофель, Тыква"

Подскажите чайнику как это реализовать?
Спасибо!
Файл в приложении.
К сообщению приложен файл: 7301621.xlsx(9.9 Kb)


alexeyzaytsev.ru

Сообщение отредактировал AZaytsev - Вторник, 07.01.2020, 15:00
 
Ответить
СообщениеДобрый день! С наступившими праздниками, друзья!

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


То есть, если напротив ячейки в столбце А стоит 1 в столбце B, то она попадает в ячейку F17 и так далее.
Таким образом, я ожидаю увидеть в F17 следующее содержание:
"Киви, Манго, Дуриан"
в F18:
"Малина, Клубника, Ирга"
в F19:
"Огурец, Редис, Картофель, Тыква"

Подскажите чайнику как это реализовать?
Спасибо!
Файл в приложении.

Автор - AZaytsev
Дата добавления - 07.01.2020 в 14:58
Che79 Дата: Вторник, 07.01.2020, 16:34 | Сообщение № 2
Группа: Друзья
Ранг: Старожил
Сообщений: 1424
Репутация: 256 ±
Замечаний: 0% ±

Excel 2013
AZaytsev, здравствуйте.
Можно с помощью UDF СцепитьЕсли (Автор Дмитрий Щербаков). Макросы должны быть разрешены. B F17 и далее тянем вниз
Код
=СцепитьЕсли(ИНДЕКС($B$2:$Z$14;;СТРОКА(A1));1;$A$2:$A$14;", ")
Сделал Вам с запасом, на случай, если Ваш фруктово-овощной массив начнет расти вправо.
К сообщению приложен файл: 7301621_1.xlsm(20.5 Kb)


Делай нормально и будет нормально!
 
Ответить
СообщениеAZaytsev, здравствуйте.
Можно с помощью UDF СцепитьЕсли (Автор Дмитрий Щербаков). Макросы должны быть разрешены. B F17 и далее тянем вниз
Код
=СцепитьЕсли(ИНДЕКС($B$2:$Z$14;;СТРОКА(A1));1;$A$2:$A$14;", ")
Сделал Вам с запасом, на случай, если Ваш фруктово-овощной массив начнет расти вправо.

Автор - Che79
Дата добавления - 07.01.2020 в 16:34
Kostya_Ye Дата: Среда, 08.01.2020, 13:24 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 118
Репутация: 48 ±
Замечаний: 0% ±

Excel 2016
AZaytsev, добрый день.
вариант на Power Query.
Исходный диапазон преобразован в таблицу, при добавлении строк и столбцов в исходную таблицу нужно только обновить таблицу-результат.
Подсчет количества по виду также можно сделать в результирующей таблице
К сообщению приложен файл: 7301621_1.xlsx(20.6 Kb)
 
Ответить
СообщениеAZaytsev, добрый день.
вариант на Power Query.
Исходный диапазон преобразован в таблицу, при добавлении строк и столбцов в исходную таблицу нужно только обновить таблицу-результат.
Подсчет количества по виду также можно сделать в результирующей таблице

Автор - Kostya_Ye
Дата добавления - 08.01.2020 в 13:24
AZaytsev Дата: Среда, 08.01.2020, 16:20 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Excel 2016
К сообщению приложен файл: 7301621_1.xlsm(20.5 Kb)


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


alexeyzaytsev.ru
 
Ответить
Сообщение
К сообщению приложен файл: 7301621_1.xlsm(20.5 Kb)


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

Автор - AZaytsev
Дата добавления - 08.01.2020 в 16:20
Pelena Дата: Среда, 08.01.2020, 16:23 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 15023
Репутация: 3283 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
На маке почему-то не захотело работать

Мак не знает про Power Query, к сожалению


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
Сообщение
На маке почему-то не захотело работать

Мак не знает про Power Query, к сожалению

Автор - Pelena
Дата добавления - 08.01.2020 в 16:23
bmv98rus Дата: Среда, 08.01.2020, 16:51 | Сообщение № 6
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2895
Репутация: 501 ±
Замечаний: 0% ±

Excel 2013/2016
Pelena, Лен, думаю это про UDF было. а там VBScript.RegExp, а он вроде на яблоке не должно работать, также как и словари.

Попробуйте на маке так, крошечная UDF
[vba]
Код
Function TextJoin(ByRef ArrText As Variant, Optional ByRef Delim As String = ",") As String
For Each TextElem In ArrText
TextJoin = TextJoin & Delim & TextElem
Next
TextJoin = Mid(TextJoin, Len(Delim) + 1)
End Function
[/vba] И массивная
Код
=textJoin(INDEX(Table1[Объект];N(INDEX(SMALL(IF(INDEX(Table1[[Тропический фрукт]:[Овощ]];;MATCH([@Вид];Table1[[#Headers];[Тропический фрукт]:[Овощ]];));ROW(Table1[Объект])-1);ROW($A$1:INDEX($A:$A;COUNTIFS(INDEX(Table1[[Тропический фрукт]:[Овощ]];;MATCH([@Вид];Table1[[#Headers];[Тропический фрукт]:[Овощ]];));">0"))));)));",")
К сообщению приложен файл: Copy_of_1390.xlsm(25.6 Kb)


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Среда, 08.01.2020, 17:52
 
Ответить
СообщениеPelena, Лен, думаю это про UDF было. а там VBScript.RegExp, а он вроде на яблоке не должно работать, также как и словари.

Попробуйте на маке так, крошечная UDF
[vba]
Код
Function TextJoin(ByRef ArrText As Variant, Optional ByRef Delim As String = ",") As String
For Each TextElem In ArrText
TextJoin = TextJoin & Delim & TextElem
Next
TextJoin = Mid(TextJoin, Len(Delim) + 1)
End Function
[/vba] И массивная
Код
=textJoin(INDEX(Table1[Объект];N(INDEX(SMALL(IF(INDEX(Table1[[Тропический фрукт]:[Овощ]];;MATCH([@Вид];Table1[[#Headers];[Тропический фрукт]:[Овощ]];));ROW(Table1[Объект])-1);ROW($A$1:INDEX($A:$A;COUNTIFS(INDEX(Table1[[Тропический фрукт]:[Овощ]];;MATCH([@Вид];Table1[[#Headers];[Тропический фрукт]:[Овощ]];));">0"))));)));",")

Автор - bmv98rus
Дата добавления - 08.01.2020 в 16:51
Pelena Дата: Среда, 08.01.2020, 17:57 | Сообщение № 7
Группа: Админы
Ранг: Местный житель
Сообщений: 15023
Репутация: 3283 ±
Замечаний: ±

Excel 2010, 2016 & Mac Excel
Да, регулярки Мак точно не понимает, но на тему СцепитьЕсли можно найти UDF, работающую на Мак. Тут, например, или тут


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
СообщениеДа, регулярки Мак точно не понимает, но на тему СцепитьЕсли можно найти UDF, работающую на Мак. Тут, например, или тут

Автор - Pelena
Дата добавления - 08.01.2020 в 17:57
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Копирование в ячейку текста из других ячеек через запятую (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

Яндекс цитирования
© 2010-2020 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!