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

Вход

Регистрация

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

 

= Мир MS Excel/Работа с текстом. Извлечение части текста 2. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Работа с текстом. Извлечение части текста 2. (Формулы/Formulas)
Работа с текстом. Извлечение части текста 2.
Ralf Дата: Среда, 04.05.2016, 15:17 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 5 ±
Замечаний: 0% ±

Салют участникам! Пытаюсь полуавтоматизировать анализ 51 счёта 1С, с помощью пользовательской функции Split.
Проблема 1 - чувствительность к регистру. Как заставить Split воспринимать "Сч" и "сч" одинаково, чтобы упростить формулу в столбце H?
Проблема 2 - иногда попутаны местами фрагменты в исходном тексте, из-за чего неверно извлекаются затраты, например "материалы сч.3 от 13.01.2016г." и " сч.3 от 13.01.2016г. материалы" - в данном случае нужно извлечь "материалы", но функция split реагирует на "сч", как тогда задать смещение или чего, чтоб "материалы" или другие наименования извлекались в любом случае?
К сообщению приложен файл: _2016__.xlsm (20.9 Kb)
 
Ответить
СообщениеСалют участникам! Пытаюсь полуавтоматизировать анализ 51 счёта 1С, с помощью пользовательской функции Split.
Проблема 1 - чувствительность к регистру. Как заставить Split воспринимать "Сч" и "сч" одинаково, чтобы упростить формулу в столбце H?
Проблема 2 - иногда попутаны местами фрагменты в исходном тексте, из-за чего неверно извлекаются затраты, например "материалы сч.3 от 13.01.2016г." и " сч.3 от 13.01.2016г. материалы" - в данном случае нужно извлечь "материалы", но функция split реагирует на "сч", как тогда задать смещение или чего, чтоб "материалы" или другие наименования извлекались в любом случае?

Автор - Ralf
Дата добавления - 04.05.2016 в 15:17
_Boroda_ Дата: Среда, 04.05.2016, 15:24 | Сообщение № 2
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16675
Репутация: 6481 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
1. LCase() и UCase() — перевести строку в нижний и верхний регистры соответственно
2. Опишите словами - что и почему нужно вынимать из столбца А.
[moder]И по Правилам форума один вопрос - одна тема.


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995


Сообщение отредактировал _Boroda_ - Среда, 04.05.2016, 15:27
 
Ответить
Сообщение1. LCase() и UCase() — перевести строку в нижний и верхний регистры соответственно
2. Опишите словами - что и почему нужно вынимать из столбца А.
[moder]И по Правилам форума один вопрос - одна тема.

Автор - _Boroda_
Дата добавления - 04.05.2016 в 15:24
Ralf Дата: Среда, 04.05.2016, 15:37 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 5 ±
Замечаний: 0% ±

Ok, с регистром разобрался, LCase() работает, осталась проблема 2, в 1 случае когда "сч" следует после наименования затрат - затраты извлекаются в столбец H, в случае когда "Сч.3 от 13.01.2016г. материалы" как задать смещение после "Сч", чтобы получить "материалы"
Небольшое пояснение - сплит() возвращает нужную часть после CHR10 (символ перехода на новую строку), и от этой части уже нужно извлечь наименование, я решил что лучше привязаться к "сч" поскольку он во всех фразах присутствует, но может другие решения есть. Кол-во символов в номере счёта разное
Пока вот что придумал: сплит1(сплит(C4;2);2) - извлекаем 2 часть предпоследнего "этажа" после "Сч.", осталось только удалить из неё спереди сам номер и дату, включая "г."
[moder]Комментарий модератора выше видели?


Сообщение отредактировал Ralf - Среда, 04.05.2016, 15:58
 
Ответить
СообщениеOk, с регистром разобрался, LCase() работает, осталась проблема 2, в 1 случае когда "сч" следует после наименования затрат - затраты извлекаются в столбец H, в случае когда "Сч.3 от 13.01.2016г. материалы" как задать смещение после "Сч", чтобы получить "материалы"
Небольшое пояснение - сплит() возвращает нужную часть после CHR10 (символ перехода на новую строку), и от этой части уже нужно извлечь наименование, я решил что лучше привязаться к "сч" поскольку он во всех фразах присутствует, но может другие решения есть. Кол-во символов в номере счёта разное
Пока вот что придумал: сплит1(сплит(C4;2);2) - извлекаем 2 часть предпоследнего "этажа" после "Сч.", осталось только удалить из неё спереди сам номер и дату, включая "г."
[moder]Комментарий модератора выше видели?

Автор - Ralf
Дата добавления - 04.05.2016 в 15:37
Ralf Дата: Среда, 04.05.2016, 16:27 | Сообщение № 4
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 5 ±
Замечаний: 0% ±

Ув. модератор, Ваш комментарий выше видел, однако считаю, что оба вопроса в равной мере связаны с темой. Впрочем, можете тему закрыть, дальше сам додумаю.
[moder]Вы правы - оба этих вопроса с темой связаны. Впрочем, также, как и множество других возможных вопросов по извлечению части текста. Но в п.4 Правил четко сказано: "Один вопрос - одна тема". И не важно, связаны эти вопросы или нет.
Поэтому не обижайтесь, а просто создайте еще один вопрос. Тем более, что решение уже готово. Думаю, что не только у меня.


Сообщение отредактировал _Boroda_ - Среда, 04.05.2016, 16:34
 
Ответить
СообщениеУв. модератор, Ваш комментарий выше видел, однако считаю, что оба вопроса в равной мере связаны с темой. Впрочем, можете тему закрыть, дальше сам додумаю.
[moder]Вы правы - оба этих вопроса с темой связаны. Впрочем, также, как и множество других возможных вопросов по извлечению части текста. Но в п.4 Правил четко сказано: "Один вопрос - одна тема". И не важно, связаны эти вопросы или нет.
Поэтому не обижайтесь, а просто создайте еще один вопрос. Тем более, что решение уже готово. Думаю, что не только у меня.

Автор - Ralf
Дата добавления - 04.05.2016 в 16:27
Ralf Дата: Среда, 04.05.2016, 19:03 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 71
Репутация: 5 ±
Замечаний: 0% ±

В Правилах, на которые Вы ссылаетесь, написано "Нельзя в одной теме задавать несколько не связанных одной темой вопросов", т.е. авторы этих Правил всё же придавали значение связанности этих нескольких вопросов :D
Просто связь тут возможно не такая явная. Я ведь не стал в предыдущей теме "Работа с текстом. Извлечение части текста" задавать эти вопросы - там анализировался 62 счёт на предмет извлечения даты и №, а теперь уже 51 счёт и задачи соответственно встают иные. Вопрос 2 с положением фрагментов уже решил, так что тему можете закрыть. Хотя полностью избавиться от проблемы извлечения информации не получилось, т.к. на большей выборке имеют место больше нюансов, которые не стоят интеллектуальных усилий - например отсутствует "г." после даты, либо несколько форматов даты, также встречаются предлоги, сокращения. В любом случае благодарю за содействие.
[moder]Дело Ваше, хотите объяснять нам, как понимать Правила - пожалуйста, объясняйте, а хотите решить свою задачу - тоже пожалуйста, я уже написал выше, что для этого нужно сделать. И еще раз повторяю, что решение уже готово. Кстати, формулой, без макросов.


Сообщение отредактировал Ralf - Среда, 04.05.2016, 19:09
 
Ответить
СообщениеВ Правилах, на которые Вы ссылаетесь, написано "Нельзя в одной теме задавать несколько не связанных одной темой вопросов", т.е. авторы этих Правил всё же придавали значение связанности этих нескольких вопросов :D
Просто связь тут возможно не такая явная. Я ведь не стал в предыдущей теме "Работа с текстом. Извлечение части текста" задавать эти вопросы - там анализировался 62 счёт на предмет извлечения даты и №, а теперь уже 51 счёт и задачи соответственно встают иные. Вопрос 2 с положением фрагментов уже решил, так что тему можете закрыть. Хотя полностью избавиться от проблемы извлечения информации не получилось, т.к. на большей выборке имеют место больше нюансов, которые не стоят интеллектуальных усилий - например отсутствует "г." после даты, либо несколько форматов даты, также встречаются предлоги, сокращения. В любом случае благодарю за содействие.
[moder]Дело Ваше, хотите объяснять нам, как понимать Правила - пожалуйста, объясняйте, а хотите решить свою задачу - тоже пожалуйста, я уже написал выше, что для этого нужно сделать. И еще раз повторяю, что решение уже готово. Кстати, формулой, без макросов.

Автор - Ralf
Дата добавления - 04.05.2016 в 19:03
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Работа с текстом. Извлечение части текста 2. (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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