MSExcelявляется мощным инструментом не только для расчетов, но и для обработки массивов структурированной текстовой информации. В этой статье на примере анализа лог-файла сервера Apacheмы увидим, как с помощью Excelобрабатывать текстовые файлы.
Практически все современные программы, работающие с данными, поддерживают экспорт информации. Экспорт данных в формат Excel считается хорошим тоном. Однако некоторые данные можно получить для дальнейшей обработки в других форматах, например в виде текстового файла. Excel прекрасно справляется с их обработкой.
Вот несколько примеров, когда Вам может понадобиться обработка больших массивов текста в Excel:
- Вы получили с АТС текстовый файл с распечаткой междугородних переговоров и хотите построить сводный отчет: с каких номеров звонили, на какие, сколько и т.д.
- Ваша учетная программа (например 1С) умеет выгружать отчеты в Excel, но размер отчета настолько велик, что сохранение в Excel занимает массу времени. В текстовом формате отчет сохраняется гораздо быстрее. Я использовал эту особенность 1С при разработке своей Выгрузки проводок (http://excel.1gb.ru/component/option,com_remository/func,fileinfo/id,12/).
- Вам нужно проанализировать лог-файл Вашего веб-сервера.
Вариантов множество. Мы разберем сегодня последний пример – анализ лог-файла.
Открываем текстовый файл в Excel.
Есть несколько вариантов вставки текстовой информации в книгу Excel:
- Вставить ее через буфер обмена из текстового редактора
- Через меню Файл – Открыть. В диалоге открытия файла укажите тип Все файлы (*.*). Это позволит Вам увидеть не только собственно txt-файлы, но и файлы с другими расширениями (например файлы *.log, как в нашем примере).
- В проводнике Windows правой кнопкой кликнуть нужный файл и выбрать пункт Открыть с помощью. Дальше следует из списка предложенных программ выбрать Excel. Если в предложенном списке еще нет Excel, это означает, что на Вашем компьютере файлы такого типа еще не открывали с помощью Excel. В таком случае нажмите пункт Выбрать программу... внизу списка. В следующий раз Excel уже должен быть в списке.
Мастер разбивки текста по столбцам
Первое, что следует сделать с текстом после открытия его в Excel – это разделение на столбцы. Это позволит нам сортировать, фильтровать, группировать строки и т.д.
Для этих целей служит мастер текстов.
Выделяем столбец с текстом (А) или несколько ячеек в столбце и выбираем меню Данные – Текст по столбцам.
На первом шаге работы с мастером нужно определить, как в нашем тексте разделены поля данных. Вариантов два: поля могут быть разбиты разделителями либо иметь фиксированную ширину.
Если текст разбит на колонки одинаковой ширины, на втором шаге нужно расставить мышью разделитель столбцов, а точнее, проверить и отредактировать то, как Excel разбил текст. Разделители можно перетаскивать мышью, добавлять (щелчок мыши по пустому полю) или удалять (двойной щелчок по существующему разделителю).
Если текст разбит на колонки разделителями (запятыми, двоеточиями, пробелами, табуляторами и т.п.), на втором шаге нужно указать мастеру, какие символы считать разделителями.
Некоторые программы выгружают текстовые строки, заключенные в кавычки или апострофы. Если на втором шаге работы мастера указать ограничители строк, то текст внутри кавычек (или апострофов) будет считаться единой строкой, в пределах которой символы-разделители игнорируются.
После разбивки текста на столбцы можно дополнительно настроить параметры интерпретации данных в столбцах:
По завершении работы мастера мы получаем текст, разбитый на колонки.
Возможности дальнейшего анализа ограничены лишь Вашей фантазией. Сортируйте, суммируйте, ищите промежуточные итоги, стройте частотные словари и т.д.
В следующем выпуске продолжим разбирать наш пример с лог-файлом веб-сервера и поговорим об использовании текстовых функций.