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

Вход

Регистрация

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

 

= Мир MS Excel/Разбиение ячеек на строки - Мир MS Excel

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Разбиение ячеек на строки
Anna_Chernova_89 Дата: Вторник, 30.06.2015, 12:00 | Сообщение № 1
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Добрый день!

Есть файл Excel (см. приложенный файл), в котором в столбце E в одной ячейке записаны несколько значений через перенос строки. Вопрос: как сделать так, что бы каждая позиция записалась в отдельную строку?

Заранее спасибо за ответ.
К сообщению приложен файл: 6767614.xlsx (36.3 Kb)
 
Ответить
СообщениеДобрый день!

Есть файл Excel (см. приложенный файл), в котором в столбце E в одной ячейке записаны несколько значений через перенос строки. Вопрос: как сделать так, что бы каждая позиция записалась в отдельную строку?

Заранее спасибо за ответ.

Автор - Anna_Chernova_89
Дата добавления - 30.06.2015 в 12:00
SLAVICK Дата: Вторник, 30.06.2015, 12:52 | Сообщение № 2
Группа: Модераторы
Ранг: Старожил
Сообщений: 2290
Репутация: 766 ±
Замечаний: 0% ±

2019
Так ? :D

Нужно нажать на кнопку - данные появятся на новом листе. :)
К сообщению приложен файл: 676761.xlsm (43.9 Kb)


Иногда все проще чем кажется с первого взгляда.

Сообщение отредактировал SLAVICK - Вторник, 30.06.2015, 13:06
 
Ответить
СообщениеТак ? :D

Нужно нажать на кнопку - данные появятся на новом листе. :)

Автор - SLAVICK
Дата добавления - 30.06.2015 в 12:52
AlexM Дата: Вторник, 30.06.2015, 12:57 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Еще вариант[vba]
Код
Sub Macros()
Dim i As Long, n As Long
Application.ScreenUpdating = False
For i = Columns(1).End(xlDown).Row To 2 Step -1
     On Error Resume Next
     n = UBound(Split(Range("E" & i), Chr(10)))
     Rows(i).Copy
     Rows(i).Resize(n).Insert Shift:=xlDown
     Range("E" & i).Resize(n + 1, 1) = Application.Transpose(Split(Range("E" & i), Chr(10)))
Next i
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: 6767614_1.rar (37.6 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеЕще вариант[vba]
Код
Sub Macros()
Dim i As Long, n As Long
Application.ScreenUpdating = False
For i = Columns(1).End(xlDown).Row To 2 Step -1
     On Error Resume Next
     n = UBound(Split(Range("E" & i), Chr(10)))
     Rows(i).Copy
     Rows(i).Resize(n).Insert Shift:=xlDown
     Range("E" & i).Resize(n + 1, 1) = Application.Transpose(Split(Range("E" & i), Chr(10)))
Next i
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub
[/vba]

Автор - AlexM
Дата добавления - 30.06.2015 в 12:57
Anna_Chernova_89 Дата: Вторник, 30.06.2015, 13:49 | Сообщение № 4
Группа: Пользователи
Ранг: Прохожий
Сообщений: 4
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Уважаемые SLAVICK и AlexM!

Спасибо Вам большое! Да, всё получилось ровно так, как нужно.
 
Ответить
СообщениеУважаемые SLAVICK и AlexM!

Спасибо Вам большое! Да, всё получилось ровно так, как нужно.

Автор - Anna_Chernova_89
Дата добавления - 30.06.2015 в 13:49
  • Страница 1 из 1
  • 1
Поиск:

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