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

Вход

Регистрация

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

 

= Мир MS Excel/Привести разнообразные данные к единому стилю - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Привести разнообразные данные к единому стилю (Форматирование/Formattings)
Привести разнообразные данные к единому стилю
ReydAn Дата: Вторник, 27.08.2019, 20:50 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Здравствуйте!
Помогите, пожалуйста навести порядок в данных.
Имеются набранные за несколько лет данные в эксель.
Данные представляют из себя набор состоящий из «Названия» и «Обозначения». Набирались разными людьми и по-этому не имеют никакого четкого шаблона.
Кто-то набирал сперва название, а потом обозначение, кто-то наоборот. Кто-то разделял их пробелом, кто-то тире, кто-то просто точкой. Вообщем в полученном файле царит хаос.
Можно ли его хоть немножечко привести к однотипному виду ?

ПРБЖ-7Дж.08.401 Уголок
Станина ПРБЖ-7Г.03.503
БДП-8.01 507 – Ригель
Серьга_БДП 03.708

Необходимо получить (и вывести в соседнем столбце)

ПРБЖ-7Дж.08.401 Уголок
ПРБЖ-7Г.03.503 Станина
БДП-8.01 507 Ригель
БДП 03.708 Серьга

Где аббревиатура + цифры – это Обозначение, а текстовая часть – название.

Есть ли возможность решить такое возможностями Экселя. Помогите, пожалуйста. Или хотя бы натолкните в какую сторону копать. Заранее огромное спасибо всем откликнувшимся.
 
Ответить
СообщениеЗдравствуйте!
Помогите, пожалуйста навести порядок в данных.
Имеются набранные за несколько лет данные в эксель.
Данные представляют из себя набор состоящий из «Названия» и «Обозначения». Набирались разными людьми и по-этому не имеют никакого четкого шаблона.
Кто-то набирал сперва название, а потом обозначение, кто-то наоборот. Кто-то разделял их пробелом, кто-то тире, кто-то просто точкой. Вообщем в полученном файле царит хаос.
Можно ли его хоть немножечко привести к однотипному виду ?

ПРБЖ-7Дж.08.401 Уголок
Станина ПРБЖ-7Г.03.503
БДП-8.01 507 – Ригель
Серьга_БДП 03.708

Необходимо получить (и вывести в соседнем столбце)

ПРБЖ-7Дж.08.401 Уголок
ПРБЖ-7Г.03.503 Станина
БДП-8.01 507 Ригель
БДП 03.708 Серьга

Где аббревиатура + цифры – это Обозначение, а текстовая часть – название.

Есть ли возможность решить такое возможностями Экселя. Помогите, пожалуйста. Или хотя бы натолкните в какую сторону копать. Заранее огромное спасибо всем откликнувшимся.

Автор - ReydAn
Дата добавления - 27.08.2019 в 20:50
Pelena Дата: Вторник, 27.08.2019, 20:55 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19176
Репутация: 4413 ±
Замечаний: ±

Excel 365 & Mac Excel
Здравствуйте.
Здесь что-то можно сделать, если есть отдельный список - перечень уникальных наименований (или обозначений), да и то 100% результата не будет


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеЗдравствуйте.
Здесь что-то можно сделать, если есть отдельный список - перечень уникальных наименований (или обозначений), да и то 100% результата не будет

Автор - Pelena
Дата добавления - 27.08.2019 в 20:55
ReydAn Дата: Вторник, 27.08.2019, 21:04 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Здесь что-то можно сделать, если есть отдельный список - перечень уникальных наименований (или обозначений), да и то 100% результата не будет

Увы, но полного списка нет. Но есть понимание как должно выглядеть обозначение - в начале везде есть определенная аббревиатура (АН, БДП, ПРБЖ и т.д.) и оно всегда заканчивается числами. Причем буквы заглавные.
В свою очередь имена - только буквы. Первая заглавная - остальные строчные.
Никак нельзя написать макрос, что если видишь БДП, то бери данные от сюда и до того момента, пока не закончатся цифры ? А если видишь заглавную букву, а за ней несколько строчных, то это имя и бери его до окончания строчных букв (правда там могут быть по два и три слова).
 
Ответить
Сообщение
Здесь что-то можно сделать, если есть отдельный список - перечень уникальных наименований (или обозначений), да и то 100% результата не будет

Увы, но полного списка нет. Но есть понимание как должно выглядеть обозначение - в начале везде есть определенная аббревиатура (АН, БДП, ПРБЖ и т.д.) и оно всегда заканчивается числами. Причем буквы заглавные.
В свою очередь имена - только буквы. Первая заглавная - остальные строчные.
Никак нельзя написать макрос, что если видишь БДП, то бери данные от сюда и до того момента, пока не закончатся цифры ? А если видишь заглавную букву, а за ней несколько строчных, то это имя и бери его до окончания строчных букв (правда там могут быть по два и три слова).

Автор - ReydAn
Дата добавления - 27.08.2019 в 21:04
Светлый Дата: Вторник, 27.08.2019, 22:32 | Сообщение № 4
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация: 510 ±
Замечаний: 0% ±

Excel 2013, 2016
Грубая прикидка. Формула массива, вводится одновременным нажатием Ctrl+Shift+Enter:
Код
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A1;ПСТР(A1;МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))-1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1)));))-МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))+2);)&" "&ПСТР(A1;МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))-1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1)));))-МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))+2))
*Или немного проще. Тоже массивная:
Код
=ПСТР(A1&" "&A1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1)));))+2;ДЛСТР(A1))
**Или так:
Код
=ПСТР(A1&" "&A1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1))>223);))+2;ДЛСТР(A1))
****
Код
=ПСТР(A1&" "&A1;ПРОСМОТР(99;ЕСЛИ(КОДСИМВ(ПСТР(A1;СТРОКА($1:$97);1))>223;СТРОКА($3:$99)));ДЛСТР(A1))


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Среда, 28.08.2019, 00:04
 
Ответить
СообщениеГрубая прикидка. Формула массива, вводится одновременным нажатием Ctrl+Shift+Enter:
Код
=СЖПРОБЕЛЫ(ПОДСТАВИТЬ(A1;ПСТР(A1;МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))-1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1)));))-МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))+2);)&" "&ПСТР(A1;МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))-1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1)));))-МИН(ЕСЛИОШИБКА(ЕСЛИ(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1));СТРОКА($1:$99));""))+2))
*Или немного проще. Тоже массивная:
Код
=ПСТР(A1&" "&A1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(ПРОПИСН(A1);СТРОКА($1:$99);1))<>КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1)));))+2;ДЛСТР(A1))
**Или так:
Код
=ПСТР(A1&" "&A1;МАКС(ЕСЛИОШИБКА(СТРОКА($1:$99)*(КОДСИМВ(ПСТР(A1;СТРОКА($1:$99);1))>223);))+2;ДЛСТР(A1))
****
Код
=ПСТР(A1&" "&A1;ПРОСМОТР(99;ЕСЛИ(КОДСИМВ(ПСТР(A1;СТРОКА($1:$97);1))>223;СТРОКА($3:$99)));ДЛСТР(A1))

Автор - Светлый
Дата добавления - 27.08.2019 в 22:32
ReydAn Дата: Среда, 28.08.2019, 07:34 | Сообщение № 5
Группа: Пользователи
Ранг: Новичок
Сообщений: 15
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Цитата Светлый, 27.08.2019 в 22:32, в сообщении № 4 ()
Грубая прикидка

Здравствуйте!
На тех 4-рех примерах, что написал 1й вариант оставляет после себя нижнее подчеркивание и тире. Остальные 3 - отрабатывают практиче все, оставлячю только тире. Сейчас попробую разобраться во всем этом разнообразии примененных формул. Возможно получится очищать тире по определенным условиям.
Спасибо Вам большое! :)
 
Ответить
Сообщение
Цитата Светлый, 27.08.2019 в 22:32, в сообщении № 4 ()
Грубая прикидка

Здравствуйте!
На тех 4-рех примерах, что написал 1й вариант оставляет после себя нижнее подчеркивание и тире. Остальные 3 - отрабатывают практиче все, оставлячю только тире. Сейчас попробую разобраться во всем этом разнообразии примененных формул. Возможно получится очищать тире по определенным условиям.
Спасибо Вам большое! :)

Автор - ReydAn
Дата добавления - 28.08.2019 в 07:34
Светлый Дата: Среда, 28.08.2019, 14:20 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация: 510 ±
Замечаний: 0% ±

Excel 2013, 2016
Тире тоже уберём. Какие ещё сюрпризы нас ждут? Обычно прикладывается файл с максимальным количеством различных вариантов. Без конфиденциальной информации и не более 100 кб.
Код
=ПОДСТАВИТЬ(ПСТР(A1&" "&A1;ПРОСМОТР(99;ЕСЛИ(КОДСИМВ(ПСТР(A1;СТРОКА($1:$97);1))>223;СТРОКА($3:$99)));ДЛСТР(A1));"– ";)
*Можно ещё учесть букву ё:
Код
=ПОДСТАВИТЬ(ПСТР(A1&" "&A1;ПРОСМОТР(99;ЕСЛИ((КОДСИМВ(ПСТР(A1;СТРОКА($1:$97);1))>223)+(ПСТР(A1;СТРОКА($1:$97);1)="ё");СТРОКА($3:$99)));ДЛСТР(A1));"– ";)


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Среда, 28.08.2019, 14:34
 
Ответить
СообщениеТире тоже уберём. Какие ещё сюрпризы нас ждут? Обычно прикладывается файл с максимальным количеством различных вариантов. Без конфиденциальной информации и не более 100 кб.
Код
=ПОДСТАВИТЬ(ПСТР(A1&" "&A1;ПРОСМОТР(99;ЕСЛИ(КОДСИМВ(ПСТР(A1;СТРОКА($1:$97);1))>223;СТРОКА($3:$99)));ДЛСТР(A1));"– ";)
*Можно ещё учесть букву ё:
Код
=ПОДСТАВИТЬ(ПСТР(A1&" "&A1;ПРОСМОТР(99;ЕСЛИ((КОДСИМВ(ПСТР(A1;СТРОКА($1:$97);1))>223)+(ПСТР(A1;СТРОКА($1:$97);1)="ё");СТРОКА($3:$99)));ДЛСТР(A1));"– ";)

Автор - Светлый
Дата добавления - 28.08.2019 в 14:20
krosav4ig Дата: Среда, 28.08.2019, 15:03 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 2347
Репутация: 989 ±
Замечаний: 0% ±

Excel 2007,2010,2013


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениекросс

Автор - krosav4ig
Дата добавления - 28.08.2019 в 15:03
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Привести разнообразные данные к единому стилю (Форматирование/Formattings)
  • Страница 1 из 1
  • 1
Поиск:

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