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

Вход

Регистрация

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

 

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

  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_, DrMini  
Разнести значения по ячейкам
122334boss Дата: Вторник, 24.06.2014, 18:40 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

Добрый день, форумчане!

Помогите разнести текстовые значения из одной ячейки по нескольким, визуально в прикрепленном примере.
Функция текст по столбцам не работает, точнее не совсем подходит, потому что значения, которые нужно разнести, заполнены не в полном объеме и не в одинаковой последовательности.

Заранее благодарен.
К сообщению приложен файл: 5741730.xlsx (10.9 Kb)
 
Ответить
СообщениеДобрый день, форумчане!

Помогите разнести текстовые значения из одной ячейки по нескольким, визуально в прикрепленном примере.
Функция текст по столбцам не работает, точнее не совсем подходит, потому что значения, которые нужно разнести, заполнены не в полном объеме и не в одинаковой последовательности.

Заранее благодарен.

Автор - 122334boss
Дата добавления - 24.06.2014 в 18:40
AlexM Дата: Вторник, 24.06.2014, 19:46 | Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Сделать так можно, но очень не красивые формулы получаются.
К сообщению приложен файл: 5741730_new.xls (31.5 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеСделать так можно, но очень не красивые формулы получаются.

Автор - AlexM
Дата добавления - 24.06.2014 в 19:46
122334boss Дата: Вторник, 24.06.2014, 22:27 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
Пускай формула немного сложная (для меня если честно не понятная), но в очередной раз вы меня спасаете. Вам огромное человеческое спасибо!

можно один не скромный вопрос: "очень хочу понять как работает excel, не на столько глобально как ваш уровень, но хотелось бы уловить некоторые хитрости, у вас можно получить мастер класс?"
 
Ответить
СообщениеAlexM,
Пускай формула немного сложная (для меня если честно не понятная), но в очередной раз вы меня спасаете. Вам огромное человеческое спасибо!

можно один не скромный вопрос: "очень хочу понять как работает excel, не на столько глобально как ваш уровень, но хотелось бы уловить некоторые хитрости, у вас можно получить мастер класс?"

Автор - 122334boss
Дата добавления - 24.06.2014 в 22:27
AlexM Дата: Вторник, 24.06.2014, 22:53 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Я сам на этом форум захожу получить мастер класс. Полученные знания использую для ответа на вопросы.
Лучший способ закрепить полученные знания, это передать их.
Формулы в C:G определяют позицию заголовка столбца в строке описания товара из столбца А, например "Материал лезвия". К номеру позиции прибавляем длину заголовка. Получаем позицию названия материала лезвия. От этой позиции в исходной строке ищем точку. По ней определяем из скольких символов состоит название материала. Функция ПСТР() извлекает фрагмент с названием материала из исходной строки.
В C3:D4 формулы вернули ошибку, которую скрыл условным форматированием.
В последнем столбце в исходную строку подставляем пустую строку "" вместо полученных строк с заголовками.
Вкратце так.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеЯ сам на этом форум захожу получить мастер класс. Полученные знания использую для ответа на вопросы.
Лучший способ закрепить полученные знания, это передать их.
Формулы в C:G определяют позицию заголовка столбца в строке описания товара из столбца А, например "Материал лезвия". К номеру позиции прибавляем длину заголовка. Получаем позицию названия материала лезвия. От этой позиции в исходной строке ищем точку. По ней определяем из скольких символов состоит название материала. Функция ПСТР() извлекает фрагмент с названием материала из исходной строки.
В C3:D4 формулы вернули ошибку, которую скрыл условным форматированием.
В последнем столбце в исходную строку подставляем пустую строку "" вместо полученных строк с заголовками.
Вкратце так.

Автор - AlexM
Дата добавления - 24.06.2014 в 22:53
122334boss Дата: Вторник, 24.06.2014, 23:32 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
В любом случае спасибо. Принцип я разобрал, правда формулу не понял. А не подскажите ссылочку, где можно почитать принцип работы функций с примерами. Охота самому разбираться, чтобы в рабочих моментах не было трудностей.
 
Ответить
СообщениеAlexM,
В любом случае спасибо. Принцип я разобрал, правда формулу не понял. А не подскажите ссылочку, где можно почитать принцип работы функций с примерами. Охота самому разбираться, чтобы в рабочих моментах не было трудностей.

Автор - 122334boss
Дата добавления - 24.06.2014 в 23:32
AlexM Дата: Вторник, 24.06.2014, 23:38 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
В Excel есть встроенная справка. При выборе функции через мастер функций, вы можете кликнуть на ссылку справки.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеВ Excel есть встроенная справка. При выборе функции через мастер функций, вы можете кликнуть на ссылку справки.

Автор - AlexM
Дата добавления - 24.06.2014 в 23:38
122334boss Дата: Вторник, 24.06.2014, 23:51 | Сообщение № 7
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
я знаю, но там принцип работы формулы, но меня больше интересует какую функцию можно использовать в том или ином случае.
 
Ответить
СообщениеAlexM,
я знаю, но там принцип работы формулы, но меня больше интересует какую функцию можно использовать в том или ином случае.

Автор - 122334boss
Дата добавления - 24.06.2014 в 23:51
AlexM Дата: Среда, 25.06.2014, 08:57 | Сообщение № 8
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
[offtop]Вариантов решения задачи, как правило несколько. Какие использовать функции зависит в основном от опыта. В вашем варианте было бы интереснее сделать свою функцию (функции пользователя) у которой два аргумента: ячейка столбца А и заголовок столбца C:G. Функции пользователя создают на встроенном в Excel языке программирования VBA.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение[offtop]Вариантов решения задачи, как правило несколько. Какие использовать функции зависит в основном от опыта. В вашем варианте было бы интереснее сделать свою функцию (функции пользователя) у которой два аргумента: ячейка столбца А и заголовок столбца C:G. Функции пользователя создают на встроенном в Excel языке программирования VBA.

Автор - AlexM
Дата добавления - 25.06.2014 в 08:57
122334boss Дата: Среда, 25.06.2014, 09:16 | Сообщение № 9
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
Спасибо, буду изучать.
 
Ответить
СообщениеAlexM,
Спасибо, буду изучать.

Автор - 122334boss
Дата добавления - 25.06.2014 в 09:16
AlexM Дата: Среда, 25.06.2014, 14:04 | Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Что такое функция пользователя для вашей задачи.
В исходных строках Название характеристики и характеристика разделены двоеточием и пробелом, а некоторые разделены только пробелом. Для упрощения кода сделал везде с двоеточием.
Функция вставляется в Module1[vba]
Код
Function Boss(Source_String As Range, Characteristic As Range) As String
Dim Source_Str As String, ps As Long, pl As Long
If Characteristic = "Описание" Then
     Source_Str = Source_String.Value
     For Each iCell In Range(Cells(Source_String.Row, 3), Cells(Source_String.Row, 7))
         Source_Str = Replace(Source_Str, IIf(iCell = "", "", Cells(2, iCell.Column) & ": " & iCell & "."), "")
     Next
     Boss = Trim(Source_Str)
Else
     ps = InStr(Source_String, Characteristic)
     If ps = 0 Then Boss = "": Exit Function
     pl = InStr(ps, Source_String, ".") - InStr(Source_String, Characteristic)
     Boss = Trim(Mid(Source_String, ps + Len(Characteristic) + 1, pl - Len(Characteristic) - 1))
End If
End Function
[/vba]
У вашей пользовательской функции "Boss" два аргумента, о которых я писал в предыдущем сообщении. Для ячейки С3 так
Код
=Boss($A3;C$2)
Затем протягиваете по таблице.
Для работы функции надо разрешить работу макросов.
К сообщению приложен файл: 5741730_new1.xls (45.5 Kb)



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеЧто такое функция пользователя для вашей задачи.
В исходных строках Название характеристики и характеристика разделены двоеточием и пробелом, а некоторые разделены только пробелом. Для упрощения кода сделал везде с двоеточием.
Функция вставляется в Module1[vba]
Код
Function Boss(Source_String As Range, Characteristic As Range) As String
Dim Source_Str As String, ps As Long, pl As Long
If Characteristic = "Описание" Then
     Source_Str = Source_String.Value
     For Each iCell In Range(Cells(Source_String.Row, 3), Cells(Source_String.Row, 7))
         Source_Str = Replace(Source_Str, IIf(iCell = "", "", Cells(2, iCell.Column) & ": " & iCell & "."), "")
     Next
     Boss = Trim(Source_Str)
Else
     ps = InStr(Source_String, Characteristic)
     If ps = 0 Then Boss = "": Exit Function
     pl = InStr(ps, Source_String, ".") - InStr(Source_String, Characteristic)
     Boss = Trim(Mid(Source_String, ps + Len(Characteristic) + 1, pl - Len(Characteristic) - 1))
End If
End Function
[/vba]
У вашей пользовательской функции "Boss" два аргумента, о которых я писал в предыдущем сообщении. Для ячейки С3 так
Код
=Boss($A3;C$2)
Затем протягиваете по таблице.
Для работы функции надо разрешить работу макросов.

Автор - AlexM
Дата добавления - 25.06.2014 в 14:04
122334boss Дата: Среда, 25.06.2014, 17:21 | Сообщение № 11
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
для понимания выше изложенного мне нужно наверное неделя, чтобы вообще понять как это работает. В любом случае спасибо, будет чем заняться в свободное время.
 
Ответить
СообщениеAlexM,
для понимания выше изложенного мне нужно наверное неделя, чтобы вообще понять как это работает. В любом случае спасибо, будет чем заняться в свободное время.

Автор - 122334boss
Дата добавления - 25.06.2014 в 17:21
122334boss Дата: Четверг, 26.06.2014, 12:43 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
начал методом подбора смотреть как работает ваша формула, подставил другие значения и не могу понять почему не получилось в последнем столбике (я прикрепил файл). Подскажите, на что нужно обратить внимание?
 
Ответить
СообщениеAlexM,
начал методом подбора смотреть как работает ваша формула, подставил другие значения и не могу понять почему не получилось в последнем столбике (я прикрепил файл). Подскажите, на что нужно обратить внимание?

Автор - 122334boss
Дата добавления - 26.06.2014 в 12:43
122334boss Дата: Четверг, 26.06.2014, 12:46 | Сообщение № 13
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
прикрепленный файл
К сообщению приложен файл: 3832643.xls (28.5 Kb)
 
Ответить
СообщениеAlexM,
прикрепленный файл

Автор - 122334boss
Дата добавления - 26.06.2014 в 12:46
AlexM Дата: Четверг, 26.06.2014, 13:14 | Сообщение № 14
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4517
Репутация: 1130 ±
Замечаний: 0% ±

Excel 2003
Формулы в C:G определяют позицию заголовка столбца в строке описания товара из столбца А, например "Материал лезвия". К номеру позиции прибавляем длину заголовка. Получаем позицию названия материала лезвия. От этой позиции в исходной строке ищем точку.

У вас изменился формат, появились теги <br>, в числах разделитель точка, вместо запятой, вместо двоеточий дефис и заголовки поменялись.
Формулы и программы будут работать, если формат всегда один.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение
Формулы в C:G определяют позицию заголовка столбца в строке описания товара из столбца А, например "Материал лезвия". К номеру позиции прибавляем длину заголовка. Получаем позицию названия материала лезвия. От этой позиции в исходной строке ищем точку.

У вас изменился формат, появились теги <br>, в числах разделитель точка, вместо запятой, вместо двоеточий дефис и заголовки поменялись.
Формулы и программы будут работать, если формат всегда один.

Автор - AlexM
Дата добавления - 26.06.2014 в 13:14
122334boss Дата: Четверг, 26.06.2014, 13:23 | Сообщение № 15
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 200
Репутация: 0 ±
Замечаний: 20% ±

AlexM,
исправил все работает...
спасибо.
 
Ответить
СообщениеAlexM,
исправил все работает...
спасибо.

Автор - 122334boss
Дата добавления - 26.06.2014 в 13:23
  • Страница 1 из 1
  • 1
Поиск:

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