Если вы имеете дело с большим количеством данных, например, с тысячами записей, попробуйте мощный запрос в Excel.
Пожалуйста, обратитесь к этой статье , чтобы узнать, как использовать Power Query в вашей версии Excel. Он доступен в Excel 2010 Professional Plus и более поздних версиях . Моя демонстрация использует Excel 2016 .
Шаги:
- Добавьте данные из одного столбца в Power Query Editor;
- Выделитестолбец, используйте функцию Разделить столбцы и выберите
By Digit to Non-Digit
, она отделит первые nth
числовые символы от строки; - Выделите второй столбец, используйте Разделить столбцы снова функционируйте и выберите
By Delimiter
и используйте пробел в качестве разделителя, он разделит тип и идентификатор по желанию; - Переименует столбцы, и вы должны иметь что-то вроде следующего:
Затем можно Закрыть и загрузить вывод на новый рабочий лист (по умолчанию).
Здесьзапрос мощности M Code за сценой только для справки. Все используемые функции доступны в графическом интерфейсе, поэтому их легко выполнить.
let
Source = Excel.CurrentWorkbook(){[Name="Table3"]}[Content],
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Column1", type text}}),
#"Split Column by Character Transition" = Table.SplitColumn(#"Changed Type", "Column1", Splitter.SplitTextByCharacterTransition({"0".."9"}, (c) => not List.Contains({"0".."9"}, c)), {"Column1.1", "Column1.2"}),
#"Split Column by Delimiter" = Table.SplitColumn(#"Split Column by Character Transition", "Column1.2", Splitter.SplitTextByDelimiter(" ", QuoteStyle.Csv), {"Column1.2.1", "Column1.2.2"}),
#"Changed Type1" = Table.TransformColumnTypes(#"Split Column by Delimiter",{{"Column1.1", Int64.Type}, {"Column1.2.1", type text}, {"Column1.2.2", type text}}),
#"Renamed Columns" = Table.RenameColumns(#"Changed Type1",{{"Column1.1", "numbers"}, {"Column1.2.1", "type"}, {"Column1.2.2", "id"}})
in
#"Renamed Columns"
Дайте мне знать, если у вас есть какие-либо вопросы. Ура :) 1046 *