Страницы: 1
RSS
Соединить каждое слово из одной ячейки с каждым словом из другой.
 
Всем добрый день.

Задача такая:

Нужно объединить ячейки "a1", "b1", "c1" при этом добавляя запятые после последнего слова в ячейке "A1" и "B2". Следующий шагом нужно взять результат из предидущего действия и соединить каждое его слово с каждым словом из ячейки "d1". Результат вывести столбиком в ячейке "e1". Потом проделать это действие для каждой новой строки.
Один важный момент: Столбец "c" иногда бывает пустым.

Заранее спасибо за помощь.
Изменено: Чайник1 - 21.12.2018 13:40:23 (ознакомился с правилами форума)
 
Содержание ячеек Вы хорошо знаете, а с содержанием правил не ознакомились. Там есть что-нибудь о файле примере?
 
Что Вы имеете ввиду?
 
Чайник1, прочитайте внимательно правила форума. В частности о файле-примере.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Доброе время суток.
Версия на Power Query
 
Код
Sub Join2Cells()
  Dim s$, i&, j&, ar1, ar2
  ar1 = Split(Cells(1, 1), ","): ar2 = Split(Cells(2, 1), ",")
  For i = 0 To UBound(ar1)
    For j = 0 To UBound(ar2)
      s = s & Trim(ar1(i)) & " " & Trim(ar2(j)) & vbLf
    Next
  Next
  Cells(3, 1) = Left(s, Len(s) - 1)
End Sub
Изменено: Ігор Гончаренко - 21.12.2018 13:18:32
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Извините забыл сказать, что это все для гугл таблиц.
 
хахаха #ржунемогу
В жизни нет ничего невозможного! Есть только недостаток знаний и умений.
 
Расшифруйте на входе
Цитата
Чайник1 написал:
Нужно объединить ячейки "a1", "b1", "c1"
тогда каким образом участвует ячейка
Цитата
Чайник1 написал:
"B2".
Где пример результата?
 
Вам предложили решения, которые работают в Excel. Google-таблицы и Excel -  хоть и похожи, но РАЗНЫЕ!
 
Цитата
vikttur написал:
но РАЗНЫЕ!
Виктор, да в принципе, не смертельно.
Код
function Cartesian(source) {
  const out = [];
  source.forEach(function(fields) {
    var abc = fields[0] + ', ' + fields[1];
    abc += (fields[2].length == 0 ? '' : ', ' + fields[2]);
    abc = abc.split(', ');
    fields[3].split(', ').forEach(function(item) {
      abc.forEach(function(word) {out.push([word + ' ' + item]);});
    });
  });
  return out;
}

Я другого не понимаю, ну ладно, в Google spreadsheet - Чайник, но внятно задачу поставить и привести пример входа/выхода, неужели разума не хватает? Тогда нафига такой работой заниматься?
 
Цитата
Андрей VG написал: нафига такой работой заниматься?
OFF А почему и нет - ведь не вы один, и не единожды откликнулись (оперативно и качественно) на хотелкИ ТСа? Вот потому-то бурсаки, халявщики, неумехи и пасутся на форумах - мир не без добрых людей - выручат. Не брюзжание - горький личный опыт общения с подобными "мимопролетающими".. ;)
Изменено: Z - 21.12.2018 14:59:10
"Ctrl+S" - достойное завершение ваших гениальных мыслей!.. ;)
 
Перед всеми извиняюсь. Действительно криво все сделал.
В ТЗ ошибка. Не  "B2", а "B1"
И вот пример результата:
Скрытый текст
 
И тишина, помогло, не помогло, не говоря уж о спасибо. Пример разбора по исходным.
 
Чайник1, будьте добры свои "простыни" оборачивать в спойлер. (кнопка на панели SP)

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
Помогло здесь:) Поэтому продолжаем здесь  :) Чайник1, от Вас форуму не нужен был непонятный результат в #13, Вам намекали, что Вы на форуме по Excel. а не гугл-таблицам. Вместо "Спасибо" за ответы Вы еще одну тему создаете... Чем мы еще можем Вам помочь? Спасибо за проявленный к форуму интерес  :)  
 
Андрей VG
Большое Вам спасибо. Последний вариант работает. Но результат выводится столбиком используя множество ячеек. Мне нужен столбик в одной единственной ячейке.

Создал тему в разделе Работа.
Страницы: 1
Наверх