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

Вход

Регистрация

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

 

= Мир MS Excel/Разделение содержимого ячейки (e-mail) по строчкам. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Разделение содержимого ячейки (e-mail) по строчкам.
Vladimir9961 Дата: Вторник, 20.06.2023, 13:24 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Здравствуйте!
Нужна помощь новичку.

Есть список с названием компаний и их электронными адресами. В данных некоторых компаний попадаются (в одной ячейке) по 2-6 e-mail, нужно разделить адреса по разным строкам и сделать так чтобы наименование компании дублировалось на ячейку ниже и к ней привязывался электронный адрес, т.е. если в списке под одной компанией 3 адреса, то компания должна быть 3 раза продублирована с разными адресами, при этом если адрес один, то никакого дубля быть не должно. Пример в файле, как есть и как должно быть. Список который необходимо разделить содержит более 17 054 компании, так что без помощи перебирать все вручную туго.javascript:;
К сообщению приложен файл "образец". В файле "тест" пробовал подставить формулы, тоже прикрепил.javascript:;
 
Ответить
СообщениеЗдравствуйте!
Нужна помощь новичку.

Есть список с названием компаний и их электронными адресами. В данных некоторых компаний попадаются (в одной ячейке) по 2-6 e-mail, нужно разделить адреса по разным строкам и сделать так чтобы наименование компании дублировалось на ячейку ниже и к ней привязывался электронный адрес, т.е. если в списке под одной компанией 3 адреса, то компания должна быть 3 раза продублирована с разными адресами, при этом если адрес один, то никакого дубля быть не должно. Пример в файле, как есть и как должно быть. Список который необходимо разделить содержит более 17 054 компании, так что без помощи перебирать все вручную туго.javascript:;
К сообщению приложен файл "образец". В файле "тест" пробовал подставить формулы, тоже прикрепил.javascript:;

Автор - Vladimir9961
Дата добавления - 20.06.2023 в 13:24
Serge_007 Дата: Вторник, 20.06.2023, 13:30 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Здравствуйте

Пример в файле
Вы не приложили файл


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеЗдравствуйте

Пример в файле
Вы не приложили файл

Автор - Serge_007
Дата добавления - 20.06.2023 в 13:30
Vladimir9961 Дата: Среда, 21.06.2023, 16:40 | Сообщение № 3
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Он почему-то не крепится.
К сообщению приложен файл: obrazec.xlsx (14.2 Kb) · test.xlsx (288.2 Kb)
 
Ответить
СообщениеОн почему-то не крепится.

Автор - Vladimir9961
Дата добавления - 21.06.2023 в 16:40
Serge_007 Дата: Среда, 21.06.2023, 16:43 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Он почему-то не крепится
Потому что Вы правила не читали


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Он почему-то не крепится
Потому что Вы правила не читали

Автор - Serge_007
Дата добавления - 21.06.2023 в 16:43
прохожий2019 Дата: Среда, 21.06.2023, 17:08 | Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 1264
Репутация: 322 ±
Замечаний: 0% ±

365 Beta Channel
pq
К сообщению приложен файл: 8109377.xlsx (24.5 Kb)
 
Ответить
Сообщениеpq

Автор - прохожий2019
Дата добавления - 21.06.2023 в 17:08
msi2102 Дата: Четверг, 22.06.2023, 11:35 | Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 414
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
VBA
[vba]
Код
Sub Макрос2()
    Dim arr1, arr2, n As Long, m As Long, k As Long, i As Long
    arr1 = Worksheets("Данные").Range("A1:V" & Worksheets("Данные").Cells(Rows.Count, 1).End(xlUp).Row)
    m = 1
    For n = 2 To UBound(arr1)
        a = Split(arr1(n, 11), ",")
        m = m + UBound(Split(arr1(n, 11), ",")) + 1
        arr1(n, 22) = a
    Next
    ReDim arr2(1 To m + 1, 1 To UBound(arr1, 2) - 1)
    k = 1
    For n = 1 To UBound(arr1)
        If k = 1 Then
            arr2(k, 1) = arr1(n, 1): k = k + 1
        Else
            For m = 0 To UBound(arr1(n, 22))
                For i = 1 To UBound(arr1, 2) - 1
                    If i <> 11 Then arr2(k, i) = arr1(n, i) Else arr2(k, i) = Trim(arr1(n, 22)(m))
                Next
                 k = k + 1
            Next
        End If
    Next
    Worksheets("Результат").Range("A1").Resize(UBound(arr2), UBound(arr2, 2)) = arr2
    Worksheets("Результат").Select
End Sub
[/vba]
К сообщению приложен файл: test_2.xlsm (26.3 Kb)


Сообщение отредактировал msi2102 - Четверг, 22.06.2023, 11:55
 
Ответить
СообщениеVBA
[vba]
Код
Sub Макрос2()
    Dim arr1, arr2, n As Long, m As Long, k As Long, i As Long
    arr1 = Worksheets("Данные").Range("A1:V" & Worksheets("Данные").Cells(Rows.Count, 1).End(xlUp).Row)
    m = 1
    For n = 2 To UBound(arr1)
        a = Split(arr1(n, 11), ",")
        m = m + UBound(Split(arr1(n, 11), ",")) + 1
        arr1(n, 22) = a
    Next
    ReDim arr2(1 To m + 1, 1 To UBound(arr1, 2) - 1)
    k = 1
    For n = 1 To UBound(arr1)
        If k = 1 Then
            arr2(k, 1) = arr1(n, 1): k = k + 1
        Else
            For m = 0 To UBound(arr1(n, 22))
                For i = 1 To UBound(arr1, 2) - 1
                    If i <> 11 Then arr2(k, i) = arr1(n, i) Else arr2(k, i) = Trim(arr1(n, 22)(m))
                Next
                 k = k + 1
            Next
        End If
    Next
    Worksheets("Результат").Range("A1").Resize(UBound(arr2), UBound(arr2, 2)) = arr2
    Worksheets("Результат").Select
End Sub
[/vba]

Автор - msi2102
Дата добавления - 22.06.2023 в 11:35
Vladimir9961 Дата: Четверг, 22.06.2023, 15:43 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

прохожий2019, Не совсем понял, можете пояснить?
 
Ответить
Сообщениепрохожий2019, Не совсем понял, можете пояснить?

Автор - Vladimir9961
Дата добавления - 22.06.2023 в 15:43
Vladimir9961 Дата: Четверг, 22.06.2023, 15:45 | Сообщение № 8
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

msi2102, Уравнение красивое) Только не совсем понимаю что с ним делать)
 
Ответить
Сообщениеmsi2102, Уравнение красивое) Только не совсем понимаю что с ним делать)

Автор - Vladimir9961
Дата добавления - 22.06.2023 в 15:45
msi2102 Дата: Четверг, 22.06.2023, 16:16 | Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 414
Репутация: 129 ±
Замечаний: 0% ±

Excel 2007
Только не совсем понимаю что с ним делать)
Скачайте файл, откройте, нажмите на кнопку и будет чудо.
А если совсем не знаете, что это такое, то гуглите или яндексите: "Макрос EXCEL, что это такое"


Сообщение отредактировал msi2102 - Четверг, 22.06.2023, 16:25
 
Ответить
Сообщение
Только не совсем понимаю что с ним делать)
Скачайте файл, откройте, нажмите на кнопку и будет чудо.
А если совсем не знаете, что это такое, то гуглите или яндексите: "Макрос EXCEL, что это такое"

Автор - msi2102
Дата добавления - 22.06.2023 в 16:16
прохожий2019 Дата: Четверг, 22.06.2023, 22:39 | Сообщение № 10
Группа: Проверенные
Ранг: Старожил
Сообщений: 1264
Репутация: 322 ±
Замечаний: 0% ±

365 Beta Channel
можете пояснить?
пояснить что? в файле запрос, созданный через pq (Power Query)
 
Ответить
Сообщение
можете пояснить?
пояснить что? в файле запрос, созданный через pq (Power Query)

Автор - прохожий2019
Дата добавления - 22.06.2023 в 22:39
Vladimir9961 Дата: Понедельник, 26.06.2023, 08:44 | Сообщение № 11
Группа: Пользователи
Ранг: Прохожий
Сообщений: 7
Репутация: 0 ±
Замечаний: 0% ±

Принял. Благодарю.
Буду разбираться)
 
Ответить
СообщениеПринял. Благодарю.
Буду разбираться)

Автор - Vladimir9961
Дата добавления - 26.06.2023 в 08:44
  • Страница 1 из 1
  • 1
Поиск:

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