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

Вход

Регистрация

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

 

= Мир MS Excel/Соединить города из разных строк таблицы в одну ячейку - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Соединить города из разных строк таблицы в одну ячейку (Формулы/Formulas)
Соединить города из разных строк таблицы в одну ячейку
ex Дата: Среда, 30.12.2015, 03:52 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Здравствуйте! Требуется найти в таблице города, где бизнес ведет конкретный дилер, и поместить их в одну ячейку через запятую. Более подробно - в примере. Заранее спасибо!
К сообщению приложен файл: 5877974.xlsx(82Kb)
 
Ответить
СообщениеЗдравствуйте! Требуется найти в таблице города, где бизнес ведет конкретный дилер, и поместить их в одну ячейку через запятую. Более подробно - в примере. Заранее спасибо!

Автор - ex
Дата добавления - 30.12.2015 в 03:52
sv2014 Дата: Среда, 30.12.2015, 06:47 | Сообщение № 2
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 165
Репутация: 37 ±
Замечаний: 0% ±

Excel 2013
ex, добрый день,попробуйте макрос test,кнопка test,в файл-примере,приложу позже,надо сжать.

[vba]
Код
Sub test()
    Dim z(), i&, i1&, j&, m&
    i1 = Range("B6").End(xlDown).Row
    z = Range("B6:C" & i1).Value
    With CreateObject("scripting.dictionary"): .comparemode = 1
    For i = 1 To UBound(z)
         If .exists(z(i, 1)) = False Then
         m = m + 1: .Item(z(i, 1)) = m: For j = 1 To 2: z(m, j) = z(i, j): Next
         Else
         z(.Item(z(i, 1)), 2) = z(.Item(z(i, 1)), 2) & " ," & z(i, 2)
         End If
   Next
   Range("B19").Resize(.Count, 2).Value = z
   End With
End Sub
[/vba]
 
Ответить
Сообщениеex, добрый день,попробуйте макрос test,кнопка test,в файл-примере,приложу позже,надо сжать.

[vba]
Код
Sub test()
    Dim z(), i&, i1&, j&, m&
    i1 = Range("B6").End(xlDown).Row
    z = Range("B6:C" & i1).Value
    With CreateObject("scripting.dictionary"): .comparemode = 1
    For i = 1 To UBound(z)
         If .exists(z(i, 1)) = False Then
         m = m + 1: .Item(z(i, 1)) = m: For j = 1 To 2: z(m, j) = z(i, j): Next
         Else
         z(.Item(z(i, 1)), 2) = z(.Item(z(i, 1)), 2) & " ," & z(i, 2)
         End If
   Next
   Range("B19").Resize(.Count, 2).Value = z
   End With
End Sub
[/vba]

Автор - sv2014
Дата добавления - 30.12.2015 в 06:47
sv2014 Дата: Среда, 30.12.2015, 06:57 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 165
Репутация: 37 ±
Замечаний: 0% ±

Excel 2013
ex, добавляю файл-пример,используйте ,например ,программу WinRar.
К сообщению приложен файл: example_30_12_2.rar(76Kb)
 
Ответить
Сообщениеex, добавляю файл-пример,используйте ,например ,программу WinRar.

Автор - sv2014
Дата добавления - 30.12.2015 в 06:57
ex Дата: Вторник, 05.01.2016, 03:56 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 12
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Здравствуйте! sv2014, спасибо за ответ! А если без макроса? У меня получилось вот так (с дополнительными построениями). Но мне сказали, что можно сделать проще.
К сообщению приложен файл: 3379755.xlsx(20Kb)
 
Ответить
СообщениеЗдравствуйте! sv2014, спасибо за ответ! А если без макроса? У меня получилось вот так (с дополнительными построениями). Но мне сказали, что можно сделать проще.

Автор - ex
Дата добавления - 05.01.2016 в 03:56
krosav4ig Дата: Вторник, 05.01.2016, 04:42 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1465
Репутация: 596 ±
Замечаний: 0% ±

Excel 2007, 2013
можно так, на таблице ПКМ>Обновить (таблица справа на листе 1)
В файле использовал UDF СцепитьЕсли отсюда
К сообщению приложен файл: 5877974.xlsm(95Kb)


(_)Õvõ(_)

Сообщение отредактировал krosav4ig - Вторник, 05.01.2016, 04:44
 
Ответить
Сообщениеможно так, на таблице ПКМ>Обновить (таблица справа на листе 1)
В файле использовал UDF СцепитьЕсли отсюда

Автор - krosav4ig
Дата добавления - 05.01.2016 в 04:42
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Соединить города из разных строк таблицы в одну ячейку (Формулы/Formulas)
Страница 1 из 11
Поиск:

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