Геоинформационные системы (ГИС) вроде MapInfo Professional хранят данные в специализированных форматах (.TAB, .MIF/MID, .DAT), которые несовместимы с Microsoft Excel. Однако часто требуется перенести табличные данные, координаты или атрибуты объектов в .XLSX для анализа, отчётности или совместной работы. Эта статья раскрывает все нюансы экспорта — от простого копирования до автоматизированных скриптов, с учётом сохранения структуры данных и решения типичных ошибок.
Многие пользователи сталкиваются с проблемами: теряются русские символы, искажаются числа с запятыми, или в Excel попадает только часть столбцов. Мы разберём, как избежать этих ошибок, какие форматы выбирать для разных типов данных, и что делать, если MapInfo отказывается экспортировать таблицу целиком. Особое внимание уделим работе с геоданными — как перенести координаты точек, линий или полигонов в удобный для Excel вид.
В статье вы найдёте:
- 🔹 5 способов экспорта — от ручного до автоматизированного
- 🔹 Таблицу совместимости форматов MapInfo и Excel
- 🔹 Инструкции по сохранению кириллицы и числовых форматов
- 🔹 Решение 3 самых распространённых ошибок экспорта
1. Способ 1: Экспорт через меню «Сохранить копию»
Самый простой метод — использовать встроенную функцию MapInfo Professional. Он подходит для однотабличных данных без сложных геометрий.
Откройте таблицу в MapInfo, затем:
- Перейдите в меню
Файл → Сохранить копию(File → Save Copy As). - В поле
Тип файлавыберитеText File (.txt)илиCSV File (.csv). - Укажите разделитель: для Excel оптимален
ТабуляцияилиЗапятая. - Отметьте галочкой
Включить имена столбцов(Include Column Names).
После сохранения откройте файл в Excel через Данные → Из текста/CSV. Важно: если в данных есть русские буквы, выбирайте кодировку UTF-8 или Windows-1251 (в зависимости от версии MapInfo).
⚠️ Внимание: При экспорте через Сохранить копию геометрические данные (координаты объектов) не сохраняются — только атрибутивная информация. Для экспорта геоданных используйте методы из разделов 3 или 4.
2. Способ 2: Копирование через буфер обмена
Быстрый, но ограниченный метод — копирование данных напрямую в Excel. Подходит для небольших таблиц (до 10 000 строк).
Инструкция:
- Откройте таблицу в MapInfo и выделите нужные строки (или нажмите
Ctrl+Aдля выбора всех). - Нажмите
Ctrl+Cили выберитеПравка → Копировать(Edit → Copy). - Откройте Excel и вставьте данные (
Ctrl+V).
Ограничения метода:
- 🚫 Не копируются названия столбцов — их придётся добавлять вручную.
- 🚫 Геометрические данные (координаты) игнорируются.
- 🚫 При большом объёме данных Excel может «зависнуть».
3. Способ 3: Экспорт в DBF с последующей конвертацией
Формат .DBF — промежуточное звено между MapInfo и Excel. Он сохраняет структуру данных и поддерживает кириллицу.
Шаги:
- В MapInfo откройте таблицу и выберите
Файл → Сохранить копию. - В поле
Тип файлаукажитеDBF File (*.dbf). - Откройте полученный
.DBFв Excel черезФайл → Открыть(выберитеВсе файлыв фильтре).
Преимущества: сохраняются все атрибуты, включая числовые форматы и даты. Недостаток: геометрические данные по-прежнему теряются.
Как открыть DBF в новых версиях Excel (2019+)?
В Excel 2019 и новее поддержка DBF удалена. Чтобы открыть файл:
1. Установите бесплатный плагин DBF Viewer Plus или Excel Plug-in for DBF.
2. Или конвертируйте DBF в CSV через LibreOffice Calc (открыть → сохранить как CSV).
| Формат экспорта | Сохраняет атрибуты | Сохраняет геометрию | Поддержка кириллицы | Макс. размер файла |
|---|---|---|---|---|
.TXT/.CSV |
✅ Да | ❌ Нет | ⚠️ Зависит от кодировки | 2 ГБ |
.DBF |
✅ Да | ❌ Нет | ✅ Да | 2 ГБ |
.MIF/MID |
✅ Да | ✅ Да (в текстовом виде) | ✅ Да | 4 ГБ |
.XLSX (через скрипт) |
✅ Да | ⚠️ Частично | ✅ Да | 10 ГБ |
4. Способ 4: Экспорт геоданных через MIF/MID
Если нужно перенести не только атрибуты, но и координаты объектов (точек, линий, полигонов), используйте формат .MIF (MapInfo Interchange Format).
Алгоритм:
- В MapInfo выберите
Файл → Сохранить копию. - Укажите тип
MIF File (*.mif). - Отметьте галочку
Экспортировать геометрию(Export Geometry). - Откройте полученный
.MIFв текстовом редакторе (например, Notepad++). - Скопируйте блоки с координатами (начинаются с
PLINE,POLYGON,POINT) в Excel.
Критическая деталь: координаты в MIF хранятся в виде пар чисел (X,Y), разделённых пробелами. Чтобы Excel корректно распознал их как отдельные столбцы, используйте функцию Текст по столбцам с разделителем Пробел.
Удалить служебные строки (начинаются с "Version", "Charsets")
Оставить только блоки с координатами (PLINE, POLYGON, POINT)
Заменить запятые на точки в числовых значениях
Сохранить файл в кодировке UTF-8
-->
5. Способ 5: Автоматизация через MapBasic
Для регулярного экспорта больших объёмов данных напишите скрипт на MapBasic — встроенном языке программирования MapInfo.
Пример скрипта для экспорта таблицы в CSV:
Open Table "Исходная_таблица.TAB" As source_table
Open "Экспорт.csv" For Output As #1
' Запись заголовков
Print #1, FieldNames$(source_table)
' Запись данных
Fetch First From source_table
While Not EOT(source_table)
Print #1, Join$(FieldValues$(source_table), ",")
Fetch Next From source_table
Wend
Close Table source_table
Close File #1
Чтобы запустить скрипт:
- Создайте текстовый файл с расширением
.MB. - Вставьте код выше, заменив
Исходная_таблица.TABна имя вашей таблицы. - В MapInfo выберите
Программы → Запустить программу MapBasic(Programs → Run MapBasic Program).
⚠️ Внимание: Скрипты MapBasic не экспортируют геометрию по умолчанию. Чтобы сохранить координаты, добавьте в код обработку объектов через функцииObjectInfo()иObjectGeography().
6. Решение типичных ошибок экспорта
При переносе данных из MapInfo в Excel часто возникают проблемы. Разберём самые распространённые и способы их устранения.
Ошибка 1: Вместо русских букв — кракозябры
- 🔸 При экспорте в
CSV/TXTвыберите кодировкуUTF-8илиWindows-1251. - 🔸 В Excel при импорте укажите правильную кодировку в мастере текстов.
- 🔸 Если данные уже искажены, откройте файл в Notepad++ и конвертируйте кодировку через меню
Кодировки → Преобразовать в UTF-8.
Ошибка 2: Числа с запятой становятся датами
В MapInfo числа с десятичным разделителем (например, 12,345) при экспорте в CSV могут распознаваться Excel как даты. Решение:
- 🔸 Перед экспортом преобразуйте числовые поля в текстовые через
Таблица → Изменить → Преобразовать. - 🔸 Или в Excel после импорта выделите столбец и выберите формат
Текстовый.
Ошибка 3: Не экспортируются все строки
Если при экспорте пропадают данные:
- 🔸 Проверьте фильтры в MapInfo — возможно, часть строк скрыта.
- 🔸 Убедитесь, что таблица не содержит повреждённых объектов (используйте
Таблица → Maintenance → Проверка целостности). - 🔸 Для больших таблиц (>50 000 строк) разбейте экспорт на части.
7. Оптимизация данных для Excel
После экспорта данные часто требуют доработки. Вот как подготовить их для анализа:
1. Разделение координат
Если вы экспортировали геометрию в текстовый формат (например, POINT 37.6178 55.7519), в Excel разделите X и Y на отдельные столбцы:
- Выделите столбец с координатами.
- Перейдите в
Данные → Текст по столбцам. - Выберите разделитель
Пробел.
2. Преобразование форматов
- 🔸 Даты: используйте формулу
=ДАТАЗНАЧ(LEFT(A1;10))для преобразования строкиДД.ММ.ГГГГв формат даты. - 🔸 Числа: применяйте формат
Числовойс нужным количеством десятичных знаков.
3. Удаление служебных символов
В экспортированных данных могут оставаться кавычки, скобки или лишние пробелы. Удалите их функцией =ПОДСТАВИТЬ():
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(A1;"""";"");" "; "")
8. Альтернативные инструменты для конвертации
Если встроенные средства MapInfo не подходят, используйте сторонние утилиты:
- 🌐 FME (Feature Manipulation Engine): мощный конвертер ГИС-данных с поддержкой
.TAB→.XLSX. Позволяет трансформировать геометрию и атрибуты. - 🌐 QGIS: бесплатная ГИС, которая открывает
.TABи экспортирует вCSV/ExcelчерезСлой → Сохранить как. - 🌐 Global Mapper: поддерживает пакетный экспорт MapInfo-таблиц в
Excelс сохранением геометрии. - 🌐 Online-конвертеры (например, MyGeodata): загружаете
.TAB, получаетеXLSX. Ограничение: риск утечки данных и ограничение по размеру файла (обычно до 50 МБ).
Сравнение инструментов:
| Инструмент | Стоимость | Сохраняет геометрию | Поддержка больших файлов | Автоматизация |
|---|---|---|---|---|
| FME | Платный | ✅ Да | ✅ До 100+ ГБ | ✅ Скрипты, графический интерфейс |
| QGIS | Бесплатный | ✅ Да | ✅ До 10 ГБ | ✅ Через Python-скрипты |
| Global Mapper | Платный | ✅ Да | ✅ До 50 ГБ | ⚠️ Ограниченно |
| Online-конвертеры | Бесплатно/платно | ❌ Нет | ❌ До 50 МБ | ❌ Нет |
FAQ: Частые вопросы по экспорту из MapInfo в Excel
1. Можно ли экспортировать из MapInfo прямо в XLSX без промежуточных форматов?
Нет, MapInfo Professional не поддерживает прямой экспорт в .XLSX. Используйте промежуточные форматы (CSV, DBF, MIF) или скрипты MapBasic.
2. Почему после экспорта в Excel вместо чисел отображаются знаки #?
Это означает, что ширина столбца недостаточна или формат ячейки неверный. Расширьте столбец или измените формат на Общий.
3. Как экспортировать только выделенные объекты?
Перед экспортом создайте новый слой с выделенными объектами через Выделение → Сохранить как (Selection → Save As), затем экспортируйте его.
4. Можно ли автоматизировать экспорт для 100+ таблиц?
Да, с помощью скриптов MapBasic или Python (библиотека pymapinfo). Пример скрипта для пакетного экспорта:
For Each file In FileList("C:\Data\*.TAB")
Open Table file As current_table
ExportToCSV(file, "C:\Export\" + Mid$(file, 9) + ".csv")
Close Table current_table
Next
5. Как перенести стили объектов (цвета, толщину линий) в Excel?
Стили — это метаданные MapInfo, и они не экспортируются в Excel. Чтобы сохранить информацию о стилях, создайте в таблице дополнительные текстовые поля (например, Color, LineWidth) и заполните их вручную или через скрипт.