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

Вход

Регистрация

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

 

= Мир MS Excel/Как объединить диапазон ячеек по условию? - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Как объединить диапазон ячеек по условию?
bear_ukraine Дата: Понедельник, 18.03.2013, 13:59 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация: 0 ±
Замечаний: 0% ±

Добрый день
Подскажите пожалуйста, как сделать следующее:
Имеем таблицу, в которой имеются строки формата размер:к-во.
Как с помощью формул сделать так, чтобы все размеры, присутствующие в каждой строке собирались воедино, и если их несколько, то между ними был разделитель :::
Аналогичное нужно проделать и для количества.
Не хватает опыта работы с Экселем, чтоб подобное решить.
Спасибо большое!
К сообщению приложен файл: sample.xls (26.5 Kb)
 
Ответить
СообщениеДобрый день
Подскажите пожалуйста, как сделать следующее:
Имеем таблицу, в которой имеются строки формата размер:к-во.
Как с помощью формул сделать так, чтобы все размеры, присутствующие в каждой строке собирались воедино, и если их несколько, то между ними был разделитель :::
Аналогичное нужно проделать и для количества.
Не хватает опыта работы с Экселем, чтоб подобное решить.
Спасибо большое!

Автор - bear_ukraine
Дата добавления - 18.03.2013 в 13:59
Hugo Дата: Понедельник, 18.03.2013, 14:21 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3711
Репутация: 795 ±
Замечаний: 0% ±

365
UDF в стандартный модуль:

[vba]
Код
Function bear(r As Range, ind&) As String
       Dim cc As Range, s As String
       For Each cc In r
           If Len(cc.Value) Then s = s & ":::" & Split(cc.Value, ":")(ind)
       Next
       bear = Mid(s, 4)
End Function
[/vba]
В ячейки листа:
Код
=bear(B3:J3,0)
и
Код
=bear(B3:J3,1)
и тянуть каждую вниз.


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеUDF в стандартный модуль:

[vba]
Код
Function bear(r As Range, ind&) As String
       Dim cc As Range, s As String
       For Each cc In r
           If Len(cc.Value) Then s = s & ":::" & Split(cc.Value, ":")(ind)
       Next
       bear = Mid(s, 4)
End Function
[/vba]
В ячейки листа:
Код
=bear(B3:J3,0)
и
Код
=bear(B3:J3,1)
и тянуть каждую вниз.

Автор - Hugo
Дата добавления - 18.03.2013 в 14:21
bear_ukraine Дата: Понедельник, 18.03.2013, 15:04 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация: 0 ±
Замечаний: 0% ±

Пора учить функционал, как все просто то можно сделать.
Спасибо!

Только вместо
=bear(B3:J3,0)
нужно было
=bear(B3:J3;0)
 
Ответить
СообщениеПора учить функционал, как все просто то можно сделать.
Спасибо!

Только вместо
=bear(B3:J3,0)
нужно было
=bear(B3:J3;0)

Автор - bear_ukraine
Дата добавления - 18.03.2013 в 15:04
Hugo Дата: Понедельник, 18.03.2013, 15:12 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3711
Репутация: 795 ±
Замечаний: 0% ±

365
Ну этот разделитель зависит от настроек системы/версии Экселя. У меня тут английский Эксель в русской локали, разделитель аргументов запятая.
И да, с помощью UDF можно многое сделать просто.


webmoney: E265281470651 Z422237915069
USDT TRC20: TN8XeEF17o5KPBD9pNwYzNyruycuAc2mVD
 
Ответить
СообщениеНу этот разделитель зависит от настроек системы/версии Экселя. У меня тут английский Эксель в русской локали, разделитель аргументов запятая.
И да, с помощью UDF можно многое сделать просто.

Автор - Hugo
Дата добавления - 18.03.2013 в 15:12
  • Страница 1 из 1
  • 1
Поиск:

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