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

Вход

Регистрация

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

 

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

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Разбить значения в строке по ячейкам
hatter Дата: Понедельник, 23.06.2014, 15:46 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 160
Репутация: 0 ±
Замечаний: 0% ±

Добрый день!

В столбце подряд в каждой ячейке находятся значения через запятую. Можно с помощью формулы разбить значения таким образом, чтобы каждое значения помещалось в отдельную ячейку или нужно писать макрос?
К сообщению приложен файл: 3248239.xlsx (8.7 Kb)
 
Ответить
СообщениеДобрый день!

В столбце подряд в каждой ячейке находятся значения через запятую. Можно с помощью формулы разбить значения таким образом, чтобы каждое значения помещалось в отдельную ячейку или нужно писать макрос?

Автор - hatter
Дата добавления - 23.06.2014 в 15:46
Pelena Дата: Понедельник, 23.06.2014, 17:02 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19518
Репутация: 4632 ±
Замечаний: ±

Excel 365 & Mac Excel
Попробуйте сделать так:
1) с помощью Найти/Заменить замените запятые на пробелы
2) выделите диапазон А2:А6 (по Вашему примеру), можно и больше, с запасом
3) на вкладке Главная найдите кнопку Заполнить и выберите вариант Выровнять


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеПопробуйте сделать так:
1) с помощью Найти/Заменить замените запятые на пробелы
2) выделите диапазон А2:А6 (по Вашему примеру), можно и больше, с запасом
3) на вкладке Главная найдите кнопку Заполнить и выберите вариант Выровнять

Автор - Pelena
Дата добавления - 23.06.2014 в 17:02
_Boroda_ Дата: Понедельник, 23.06.2014, 17:17 | Сообщение № 3
Группа: Админы
Ранг: Местный житель
Сообщений: 16901
Репутация: 6613 ±
Замечаний: ±

2003; 2007; 2010; 2013 RUS
Лен, это прокатит только в том случае, если у слов примерно одинаковая длина. А если вот так: а,п,ррррррррррр, то уже нет. Правда, если в первом пункте заменить не на пробел, а на кучу пробелов (штук 50, например), то нормально.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеЛен, это прокатит только в том случае, если у слов примерно одинаковая длина. А если вот так: а,п,ррррррррррр, то уже нет. Правда, если в первом пункте заменить не на пробел, а на кучу пробелов (штук 50, например), то нормально.

Автор - _Boroda_
Дата добавления - 23.06.2014 в 17:17
Pelena Дата: Понедельник, 23.06.2014, 17:18 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 19518
Репутация: 4632 ±
Замечаний: ±

Excel 365 & Mac Excel
Поэтому я и написала "попробуйте" :)


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеПоэтому я и написала "попробуйте" :)

Автор - Pelena
Дата добавления - 23.06.2014 в 17:18
Rioran Дата: Понедельник, 23.06.2014, 17:27 | Сообщение № 5
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
hatter, здравствуйте.

Если макросом - то можно как во вложении, на кнопке. В столбце "B" нужные данные для разделки, в столбце "А" выводит результат.

[vba]
Код
Sub Separator()
Application.ScreenUpdating = False: With ThisWorkbook.Sheets(1)

Dim X As Long: Dim Y As Long: Y = 2
Dim strX As String

If .Cells(.Rows.Count, 2).End(xlUp).Row < 2 Then MsgBox ("Error! Check the data"): Exit Sub

For X = 2 To .Cells(.Rows.Count, 2).End(xlUp).Row
     strX = .Cells(X, 2).Value
     Do While InStr(1, strX, ",") > 0
         .Cells(Y, 1).Value = Left(strX, InStr(1, strX, ",") - 1)
         strX = Right(strX, Len(strX) - InStr(1, strX, ","))
         Y = Y + 1
     Loop
     .Cells(Y, 1).Value = strX: Y = Y + 1
Next X

End With: Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: Separation.xlsm (18.2 Kb)


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
Сообщениеhatter, здравствуйте.

Если макросом - то можно как во вложении, на кнопке. В столбце "B" нужные данные для разделки, в столбце "А" выводит результат.

[vba]
Код
Sub Separator()
Application.ScreenUpdating = False: With ThisWorkbook.Sheets(1)

Dim X As Long: Dim Y As Long: Y = 2
Dim strX As String

If .Cells(.Rows.Count, 2).End(xlUp).Row < 2 Then MsgBox ("Error! Check the data"): Exit Sub

For X = 2 To .Cells(.Rows.Count, 2).End(xlUp).Row
     strX = .Cells(X, 2).Value
     Do While InStr(1, strX, ",") > 0
         .Cells(Y, 1).Value = Left(strX, InStr(1, strX, ",") - 1)
         strX = Right(strX, Len(strX) - InStr(1, strX, ","))
         Y = Y + 1
     Loop
     .Cells(Y, 1).Value = strX: Y = Y + 1
Next X

End With: Application.ScreenUpdating = True
End Sub
[/vba]

Автор - Rioran
Дата добавления - 23.06.2014 в 17:27
hatter Дата: Вторник, 24.06.2014, 10:13 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 160
Репутация: 0 ±
Замечаний: 0% ±

Rioran,
Если макросом - то можно как во вложении, на кнопке. В столбце "B" нужные данные для разделки, в столбце "А" выводит результат.

Спасибо! Очень удобный вариант!
 
Ответить
СообщениеRioran,
Если макросом - то можно как во вложении, на кнопке. В столбце "B" нужные данные для разделки, в столбце "А" выводит результат.

Спасибо! Очень удобный вариант!

Автор - hatter
Дата добавления - 24.06.2014 в 10:13
rombess Дата: Вторник, 24.06.2014, 13:32 | Сообщение № 7
Группа: Пользователи
Ранг: Прохожий
Сообщений: 3
Репутация: 0 ±
Замечаний: 0% ±

Excel 2007
Добрый день ! Подскажите где найти формулу такого плана. В столбце идут друг за другом значения (цифровые). В следующем столбце напротив некоторых значений поставлена цифра 1. Нужна формула, чтобы посчитать сумму тех значений в первом столбце, напротив которых проставлена цифра 1 во втором столбце. Спасибо!
[moder]Вот тут.
Тема закрыта

Спасибо! Очень помогли!


Сообщение отредактировал rombess - Вторник, 24.06.2014, 15:33
 
Ответить
СообщениеДобрый день ! Подскажите где найти формулу такого плана. В столбце идут друг за другом значения (цифровые). В следующем столбце напротив некоторых значений поставлена цифра 1. Нужна формула, чтобы посчитать сумму тех значений в первом столбце, напротив которых проставлена цифра 1 во втором столбце. Спасибо!
[moder]Вот тут.
Тема закрыта

Спасибо! Очень помогли!

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

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