Всем привет! 👋
В одном из предыдущих обзоров мы рассматривали пример пользовательской функции которая позволяет объединять и сцепить текст по условию.
В продолжение темы рассмотрим еще 3 (три) варианта решения позволяющие объединить значения из указанного диапазона.
📢 Файл с примером размещен в конце статьи 🔽
▶️ Исходные данные
В качестве исходных данных рассмотрим сведения о контрагентах и их адресах:
▶️ Пример 1
🔘 Задача: объединить значения из указанного диапазона и поместить их в ячейку C2:
Для данного примера применим макрос:
Макрос позволяет пользователю выбирать диапазон ячеек в таблице. После выбора диапазона макрос собирает текстовые значения из каждой ячейки этого диапазона и объединяет их в одну строку, разделяя запятыми. Полученная строка затем автоматически вставляется в ячейку C2 на активном листе.
📝 Для использования макроса:
- Запустите макрос. Появится диалоговое окно (требуется указать диапазон):
- Выберите нужный диапазон и подтвердите ввод:
➡️ Значения из выбранного диапазона будут объединены, а результат перенесен ячейку C2:
🤔 Если диапазон не был выбран, будет показано предупреждение:
▶️ Пример 2
🔘 Задача: объединить значения из указанного диапазона и распределить их следующим образом:
- наименование контрагента - в ячейку в ячейку C2;
- адрес контрагента в ячейку в ячейку C3:
Для поставленной задачи изменим макрос следующим образом:
Аналогично предыдущему примеру макрос позволяет пользователю выбрать диапазон ячеек:
Далее, первое значение из выбранного диапазона помещается в ячейку C2. Остальные значения (без первого) сцепляются в одну строку и помещаются в ячейку C3:
🤔 Если пользователь не выбрал диапазон или нажал "Отмена", появится предупреждение о том, что диапазон не выбран.
▶️ Пример 3
🔘 Задача: при выборе контрагента из выпадающего списка поместить объединенные значения в ячейку C3:
Для решения задачи обратимся ек событию Worksheet_Change:
В данном случае макрос реагирует на изменения в ячейке C2 и автоматически обрабатывает эти изменения.
Если в ячейке C2 введено значение, код ищет это значение в столбце A.
Если значение найдено, он сцепляет остальные значения из строк этой же строки (начиная со столбца B и далее) и помещает их в строку в ячейке C3, разделяя их запятыми:
🤔 Если значение не выбрано, ячейка C3 очищается:
🔔 Обращаем внимание! Код макроса должен быть размещен в модуле листа
📍 Рекомендуемые статьи 🔽