Как dbf перевести в excel

КАК: Как открыть, изменить и преобразовать файлы DBF – 2020

Как dbf перевести в excel

Файл с расширением .DBF, скорее всего, является файлом базы данных, используемым программным обеспечением для управления данными dBASE. Данные хранятся в файле в массиве с несколькими записями и полями.

Поскольку структура файла довольно проста, и формат использовался на ранних этапах, когда впервые появились программы баз данных, DBF считался стандартным форматом для структурированных данных.

ArcInfo от Esri хранит данные в файлах, которые также заканчиваются на .DBF, но это называется атрибут shapefile формат. Эти файлы используют формат dBASE для хранения атрибутов для фигур.

Файлы FoxPro Table также используют расширение DBF-файла, в программном обеспечении базы данных под названием Microsoft Visual FoxPro.

Как открыть файлы DBF

dBASE – основная программа, используемая для открытия файлов DBF.

Тем не менее, формат файла поддерживается и в других приложениях базы данных и для баз данных, таких как Microsoft Access, Microsoft Excel, Quattro Pro (часть Corel WordPerfect Office), OpenOffice Calc, LibreOffice Calc, HiBase Group DBF Viewer, Astersoft DBF Manager, DBF Viewer Plus, DBFView, Swiftpage Act! и Alpha Software Alpha Anywhere.

Совет: Вы должны сохранить файлы базы данных Microsoft Works в формате dBASE, если вы хотите открыть их в Microsoft Excel.

GTK DBF Editor является одним из бесплатных открывателей DBF для MacOS и Linux, но NeoOffice (для Mac), multisoft FlagShip (Linux) и OpenOffice тоже работают.

Режим Xbase можно использовать с Emacs для чтения файлов xBase.

ArcInfo из ArcGIS использует файлы DBF в формате файла атрибута шейп-файла.

Прерванное программное обеспечение Microsoft Visual FoxPro также может открывать файлы DBF, будь то в формате базы данных или FoxPro Table.

Большая часть программного обеспечения выше, которое может открыть или отредактировать файл DBF, скорее всего, также преобразует его. Например, MS Excel может сохранять DBF-файл в любой формат, поддерживаемый этой программой, например CSV, XLSX, XLS, PDF и т. Д.

Одна и та же HiBase Group, которая выпустила упомянутый выше DBF Viewer, также имеет DBF Converter, который преобразует DBF в CSV, форматы Excel, такие как XLSX и XLS, простой текст, SQL, HTM, PRG, XML, RTF, SDF или TSV.

Замечания: Конвертер DBF может экспортировать только 50 записей в бесплатной пробной версии. Вы можете перейти на платный выпуск, если вам нужно экспортировать больше.

dbfUtilities экспортирует DBF в форматы файлов, такие как JSON, CSV, XML и Excel. Он работает через dbfExport инструмент, включенный в набор dbfUtilities.

Вы также можете конвертировать DBF-файл с помощью DBF Converter. Он поддерживает экспорт файла в CSV, TXT и HTML.

Дополнительная информация о dBASE

Файлы DBF часто видны с текстовыми файлами, использующими расширение .DBT или .FPT. Их цель – описать базу данных записками или заметками в необработанном тексте, который легко читать.

Файлы NDX представляют собой файлы с одним индексом, которые хранят информацию о поле и структуру базы данных; он может содержать один индекс. Файлы MDX – это файлы с несколькими индексами, которые могут содержать до 48 индексов.

Все сведения о заголовке формата файла можно найти на веб-сайте dBASE.

Релиз dBASE в 1980 году стал его разработчиком, Ashton-Tate, одним из крупнейших издателей программного обеспечения для бизнеса на рынке. Первоначально он запускался только в операционной системе микрокомпьютера CP / M, но вскоре был перенесен на DOS, UNIX и VMS.

Позднее в этом десятилетии другие компании начали выпускать собственные версии dBASE, включая FoxPro и Clipper. Это вызвало выпуск dBASE IV, который появился примерно одновременно с SQL (Structured Query Language) и растущим использованием Microsoft Windows.

К началу 1990-х годов, когда продукты xBase по-прежнему достаточно популярны, чтобы быть лидером в бизнес-приложениях, три лучших фирмы, Ashton-Tate, Fox Software и Nantucket, были приобретены соответственно Borland, Microsoft и Computer Associates.

Не удается открыть файл?

Если ваш файл не открывается с предложениями выше, дважды проверьте расширение файла, чтобы убедиться, что он действительно читает как DBF. В некоторых форматах файлов используются расширения файлов, которые пишутся аналогично, но на самом деле находятся в совершенно другом формате и не могут открываться с помощью средств просмотра и редакторов DBF.

Одним из примеров является DBX-файлы. Это могут быть файлы электронной почты Outlook Express или файлы расширения AutoCAD Database Extension, но в любом случае они не могут открываться с помощью тех же инструментов, о которых говорилось выше. Если ваш файл не открывается с этими программами базы данных, убедитесь, что вы фактически не имеете дело с DBX-файлом.

Если ваш файл действительно является файлом DBK, он может быть в формате файла резервной копии мобильного телефона Sony Ericsson. Вероятно, он может быть открыт с помощью Sony Ericsson PC Suite или инструмента для распаковки файлов, такого как 7-Zip, но он не будет работать с приложениями базы данных выше.

Источник: https://ru.go-travels.com/25101-dbf-file-4144695-1861567

Перевод dbf в xls

Как dbf перевести в excel

Конвертер XLS а также XLSX в DBF и DBF в XLSX представляет собой макрос EXCEL, которым можно использовать не только для конвертирования, но и для поиска, заполнения из файла другой структуры по ключевым полям записей и их модификация. Например, если требуется заполнить файл EXCEL, в котором присутствует какое либо ключевое поле (номер счета или код товара) из базы DBF с таким же ключевым полем.

Или же обратная ситуация — есть EXCEL файл, надо модифицировать или заполнить DBF файл. Конечно потребуется коррекция VBA кода макроса, но сочинять и отлаживать «с нуля» не придется.

Идея выложить подобный макрос появилась, когда самому потребовался подобный конвертор, а поиски в интернете указывали только на платные конвертеры, к тому же без возможности что либо изменить под себя.

За основу была взята оригинальная надстройка XlsToDBF, автор Василий Малинин, которая распространялась в интернете бесплатно, но найти и скачать ее оказалось не просто.

Больше попадались либо платные утилиты, либо он-лайн конверторы. Ни то ни другое не подходило.

Тем более с выходом версии MS Office 2007 в программе Excel по кнопке ( ) в списке возможных вариантов формат dBASE (*.DBF) уже нет. В последующих подавно.

Краткое описание файла конвертора с макросом XLSX_DBF

В скачанном архиве XLSX_DBF.zip (в конце статьи) присутствуют файлы:

Конвертор.xlsm — собственно сам EXCEL файл с макросами.

Файлы для примера конвертации и заполнения

in_file.DBF

LK_in1.xlsx

RK_in2.xlsx

out1.xlsx

out2.xlsx

Еще два файла появятся после нажатия кнопки » Заполнить L,R DBF»

SUB_K.DBF

SUB_L.DBF

Все действия по кнопкам легко подкорректировать в VBA из меню макросов

По умолчанию в файле прописаны пути «D:\File». Для удобства разархивируйте архив на диск D в корень и у Вас сохранится начальная настройка каталогов.

Естественно какие то начальные знания VBA должны присутствовать. Подробных инструкций нет, но все и так максимально просто. Если Вы хоть раз работали с макросами, то подправить по себя наверняка сумеете.

Для выполнения макроса необходимо в EXCEL включить разрешение на открытие и запуск макросов. В этих макросах ВИРУСОВ НЕТ. Для включения надо в меню «ФАЙЛ» выбрать «Сведения» -> «Параметры»

Далее выбрать «Центр управления безопасностью» -> «Параметры центра управления безопасностью» -> «Параметры макросов» -> «Включить все макросы»

Для запуска конвертора открываутся файл Конвертор.xlsm. Слева кнопки выбора файлов, справа кнопки запуска. Для примера представлены файлы EXCEL (Субсидии и льготы — Out1 и Out2), которые обновляются из IN_FILE.DBF, по ключевому полю LSCHET. В сроки файлов XLSX, где будет найден «Номер лицевого счета» будет заполнено значением из поля «DOLG» файла IN_FILE.DBF.

Вторая часть Конвертор.xlsm демонстрирует создание и заполнение файлов SUB_K.DBF иSUB_L.DBF из LK_in1.xlsx иRK_in2.xlsx согласно заданной структуры. За основу создания взята надстройка XlsToDBF, преобразованная в макрос с исправлением некоторых ошибок.

Макрос (надстройка) XlsToDBF и его описание

    • задать произвольное имя выходного DBF-файла
    • задать тип и размер для каждого поля по усмотрению пользователя
    • задать кодовую страницу (WINDOWS-1251 или DOS-866) для выходного DBF-файла
    • задать параметр MAC для корректного вывода DBF-файла на Macintosh

Чтобы надстройка поняла, что от неё требуется и создала требуемый DBF-файл, необходимо задать тип, размер, имена полей для конечного DBF-файла, а также его название.

Надстройка умеет работать с четырьмя основными форматами полей DBF: Character (Cnnn), Numeric (Nnn или Nnn.n), Date (D) и Logical (L), т.е такие поля как General, Memo, Currency и т.д. в конечном файле она создать не сумеет. Собственно, родной конвертер предыдущих версий Excel имел такое же ограничение.

Для примера используется файл Price.xls из архива, Лист: Price. Существует таблица EXCEL, которую необходимо сохранить в DBF-файле.

В конечном DBF-файле назначаем необходимые имена полей и форматы, чтобы:

  • Поле Идентификатор имело целочисленный тип (т.е Numeric) шириной в 14 знаков и называлось ID.
  • Поле Наименование — строковый тип (Character) шириной в 100 символов с названием NAME
  • Поле Единица измерения — строковый, 20 символов, с названием ONE_NAME
  • Поле Цена — числовой тип (Numeric) шириной в 14 знаков с двумя знаками за запятой с названием PRICE
  • Поле Включать в прайс — логический тип (Logical) с названием L_PRICE
  • Поле Дата обновления имело тип даты (Date) с названием D_UPDATE

Также мы хотим конечный DBF-файл сохранить с названием PRICE.DBF в кодовой странице (Code Page) DOS-866.

Для того, чтобы получить ожидаемый результат, нужно изменить заголовок таблицы следующим образом (файл Price.xls из архива, Лист: Price_pre).

Первая ячейка первой строки, экспортируемой области, содержит имя конечного файла. Расширение в имени файла на процесс конвертации не влияет, т.е. конечный файл в любом случае будет иметь структуру DBF (dBASE).

Вторая ячейка (B1) указывает макросу надстройки в какой кодовой странице сохранять DBF-файл. Если значение ячейки (B1) отличается от CP866 или не задано совсем, то конечный DBF-файл сохранится в кодовой странице WINDOWS CP1251.

Вторая строка описывает форматы полей, которые мы хотим получить в конечном файле. Здесь хочу отметить, т.к. многие путаются, что числовой формат с дробной десятичной частью, например N14.2 трактуется следующим образом: ширина поля 14 знаков, включая десятичную точку и 2 знака за ней. Т.е. 11 целых знаков, десятичная точка и 2 знака за ней, а не 14 целых знаков и 2 за точкой.

Третья строка описывает наименование полей (максимально 10 символов). Я думаю, больше комментировать здесь нечего.

Начиная с четвёртой строки и до конца непрерывной области, располагаются данные. Желательно, чтобы данные соответствовали заданному типу. Красным цветом я отметил те поля, в которых значения не могут быть корректно преобразованы.

В таких случаях надстройка задаёт им значения по умолчанию. Например, значение ДА не может быть преобразовано к логическому типу. Поэтому в конечном DBF-файле это поле будет иметь значение FALSE (F).

В данном примере то же самое произойдёт и с датами, отмеченными красным цветом (в DBF-файле они будут пустые).

В макросе файла Конвертор.xlsm эти операции прописаны в VBA коде, макрос — «Вывод_в_dbf()»

Sub Вывод_в_dbf() Dim i As Integer Dim strMes As String Dim strMes1 As String Dim strMes2 As String Dim WBook As String Dim WMak As String Dim Wind1 As String strMes = «» Range(«D13:D200»).Value = «» Range(«D13»).Value = «Обработка 1» f_lgot = Range(«D8»).Value f_sub = Range(«D9»).Value f_dbf_l = Range(«D10»).Value

f_dbf_r = Range(«D11»).Value

WBook = ThisWorkbook.Name strMes2 = Range(«D10»).Value If is_file(f_lgot) = 1 Then Range(«D13»).Value = «Обработка 1» Workbooks.Open (f_lgot) Range(«A1»).Value = strMes2 i = rep_file() Application.Run «‘Конвертор.xlsm’!XlsToDBF» ActiveWindow.Close SaveChanges:=False

Windows(WBook).Activate

Источник: https://longsword.ru/perevod-dbf-v-xls/

Как dbf-файл открыть в excel или excel преобразовать в dbf – ПК Консультант

Как dbf перевести в excel

DBF — файл баз данных, возможность работы с которым раньше интегрировалась в среду Microsoft Office. С форматом работали приложения Access и Excel, позже Access был выведен из состава пакета и стал отдельной программой, а в Excel с 2007 года поддержка DataBaseFile была существенно ограничена.

При невозможности открыть DBF-файл напрямую в Excel его нужно предварительно конвертировать.

Однако DBF хоть и считается многими устаревшим форматом, но до сих пор широко используется в специализированных программах в сфере бизнеса, проектирования, инженерной сфере.

Везде, где требуется работа с большими массивами информации, их структурирование и обработка, выполнение запросов. Например, программный комплекс 1С Предприятие целиком основан на управлении базами данных.

А учитывая, что масса офисной документации и данных проходит в Excel, то вопрос интегрированной работы с этими форматами актуален и востребован.

Проблемы Excel при работе с DBF

В Excel 2003 была возможность открыть и редактировать DBF , а также сохранять в этом формате документы XLS:

  1. На панели меню выбрать «Файл».
  2. Далее, нажать «Сохранить как».
  3. Выбрать из выпадающего списка «*.dbf».

ВАЖНО. Начиная с 2007 года вы можете открыть и просмотреть в Excel формат баз данных, но не можете вносить изменения, а также сохранять в нём документы.xls. Стандартные средства программы больше не предусматривают такой возможности.

Однако существуют специальные надстройки для приложения, добавляющие ему такую функцию. В сети на различных форумах программисты выкладывают свои разработки, можно найти разные варианты.

Наиболее популярную надстройку, которая называется XslToDBF, можно скачать с сайта разработчика http://basile-m.narod.ru/xlstodbf/download.html. Загрузка бесплатная, но по желанию можно поддержать проект, перечислив любую сумму на кошелёк или карту.

Установка и использование:

  1. Скачайте архив с указанного выше сайта.
  2. Извлеките из него XlsToDBF.xla и сохраните на своём компьютере.
  3. В Excel зайдите в меню кнопкой со значком Майкрософт слева, «Параметры».
  4. В разделе «Параметры Excel» выберите «Надстройки».
  5. В строке «Управление/Надстройки Excel» нажмите «Перейти».
  6. Нажмите «Обзор» и укажите сохранённый XlsToDBF.xla.
  7. В списке надстроек должна появиться запись «XLS -> DBF» с поставленной галочкой проверки. Отметьте, если её нет.
  8. Теперь вы можете сохранять.xls в формат.dbf. С того же сайта можно скачать подробную инструкцию по использованию. Главное, правильно подготовить табличные данные.
  9. После того как таблица готова, выберите любую заполненную ячейку и нажмите Alt и F
  10. В открывшемся окне макроса в поле наберите XlsToDBF, регистр не важен.
  11. Нажмите «Выполнить».
  12. Если вы правильно подготовили и оформили данные, то в папке, где находится исходный XLS, будет сохранён и файл базы данных.

Если вы не хотите ничего менять в Office, не доверяете надстройкам и сторонним приложениям, то можно предложить более трудоёмкий способ преобразовать файл XLS в DBF:

  1. Приобретите и установите программу Microsoft Access.
  2. В Excel подготовьте и сохраните документ.
  3. Нажмите кнопку «Открыть» в MS Access и выберите файл.
  4. Теперь нужно корректно настроить импорт.
  5. Выберите лист, с которого начнёте. Если их несколько, всё равно придётся делать по одному.
  6. Если в таблице есть строка заголовков, поставьте соответствующую галочку.
  7. Далее, можно изменить имя таблицы.
  8. Теперь нажмите на «Внешние данные».
  9. Жмите кнопку «Экспорт», «Дополнительно».
  10. Выберите «Файл dBase».
  11. Укажите имя и место сохранения.

Такой способ не всегда работает удачно, часто возникают ошибки в обработке данных, в последующем сохранении. И он весьма долгий и неудобный.

Конвертация

Чтобы не мучиться самим с офисными программами, создано множество приложений , позволяющих перевести данные из одного формата в другой. Во-первых, почти все мощные программы по работе с СУБД предполагают возможность экспорта в XLS и загрузки из него. Во-вторых, есть небольшие утилиты, специализирующиеся на конвертации. Вот некоторые из них:

Во всех этих программах преобразование сводится к тому, что нужно открыть исходный файл, а затем выполнить команду «Конвертировать» или «Экспорт».

Существуют и бесплатные сервисы онлайн-преобразования. На таких сайтах предлагается прислать (загрузить) исходный файл, нажать «Конвертировать», после чего появится ссылка на преобразованный документ. Насколько можно доверять таким услугам, решение индивидуальное, на свой страх и риск.

Таким образом, открыть DBF в программе Excel можно, но если его версия 2007 и новее, то сделать с ним больше ничего не получится, только посмотреть.

Для редактирования, сохранения в XLS есть специальные надстройки или программы, так же как и для преобразования в обратном направлении.

Если у вас есть опыт конвертации и работы с DBF в разных приложениях, поделитесь своими советами в х.

Программы для работы с DBF-файлами.


Новое в категории «Работа с DBF»:

Бесплатная Редактор DBF 1.75.1 является достаточно мощным вьюером и редактором для файлов DBF, который предоставит возможность выполнить большое число операций с базами данных. Приложение Редактор DBF предусматривает возможность просмотра и редактирования dbf-файлов в форматах dBase III-IV, Visual FoxPro, FoxPro и Clipper.

Бесплатная Scan DBF 1.6 является приложением по ремонту или восстановлению повреждённых DBF-файлов. Приложение Scan DBF поможет восстановить повреждённые файлы при сбое компьютера или электропитания, когда повреждается конец или сам заголовок DBF-файлf.

Бесплатная Reportizer 3.7.1.629 является инструментом для изготовления и распечатки отчётов, выполненных базами данных. Приложение Reportizer поможет с легкость создавать, печатать и изменять отчеты, а также производить управление коллекциями отчетов.

Бесплатная DBREdit 1.25 является редактором таблиц для баз данных DBF. Редактор DBREdit работает с плоскими таблицами, не используя драйвера и системы доступа.

Бесплатная DBF2ORA 1.0 является приложением по импорту из DBF таблиц данных в Oracle, а также возможностью сохранения настроек произведённого импорта. Приложение DBF2ORA также имеет возможность обработать файлы перед началом импорта.

Бесплатная DBF Work 3.0.0.1 является программой по просмотру, редактированию и экспорту файлов DBF формата. Программа DBF Work имеет возможность экспортировать данные в 14 форматов (pdf, excel, word, html и прочие).

Бесплатная DBF View 2.79 является бесплатной, компактной и удобной программой по работе с DBF файлами. Программа DBF View работает без инсталляции, а также без дополнительных библиотек или драйверов.

Бесплатная DBF DeskTop 1.0.0.0 (build 2600) является многофункциональным редактором для файлов DBF (баз данных). Программа DBF DeskTop предусматривает возможность создавать новые DBF таблицы, упаковывать их, изменять структуру (порядок следования полей) и создавать индексы с выражениями.

Бесплатная DBF data import for ORACLE 1.4 является профессиональным инструментом по импорту или подготовке к импорту файлов DBF из разряда языков программирования xBase (Visual FoxPro, Clipper, FlagShip, FoxPro, FoxBase, dBaseIII+, dBaseV и dBaseIV) в базу данных ORACLE.

Бесплатная Check and repair DBF 1.4.0.2 является удобным приложением по диагностированию и восстановлению поврежденных файлов DBF из семейства языка программирования xBase (FoxBase, FlagShip, FoxPro, dBaseV, dBaseIII+, Clipper, dBaseIV, Visual FoxPro). Приложение Check and repair DBF имеет возможность провести детальный анализ, а также диагностику структуры файлов.

Привет друзья! Сегодня говорим о файлах с форматом DBF и чем их открыть. Знакомое расширение? Тем лучше — вы просто повторите уже изученное, ну а если я в чем-то окажусь не права, тогда можете смело указывать на ошибки. Начнем, как всегда с небольшой вводной информации.

Расширение файла DBF — что это такое?

Файлы в данном формате используют для хранения различных данных, а также в качестве передачи разнообразной информации между системами управления (таблицы, базы данных, отчеты и т.д.)

Если обратится к истории, то можно проследить цепь различных программ, которые использовали усовершенствованные версии.DBF, набор функциональных возможностей которых каждый раз изменялся: dBase II (стандартный формат) -> dBase III ->dBase IV ->…

Аналогичная ситуация наблюдалась и с рядом различных прикладных пакетов и библиотек, которые также использовали DBF-формат в своих целях.

Таким образом, сложно утверждать, ввиду отсутствия стандартизации, что созданная или разрабатываемая программа будет свободно распознавать любой файл с таким расширением. Однако общая база все же сохранена:

  • заголовок (информация о структуре базы и кол-ве записей)
  • область данных (таблица фиксированных размеров)

Логично предположить, что в связи с таким положением вещей, существует большое количество просмотрщиков. И без точного знания программы, на которой создавался файл, процесс открытия превращается в увлекательную головоломку. Хотя существует перечень универсальных программ и редакторов, который представлен ниже.

Чем отрыть файл с расширением DBF?

1. Универсальным средством для чтения формата является Excel.

2. WinDBFview — бесплатная программа для просмотра и редактирования файлов с расширением DBF. Более современные версии содержат встроенную опцию просмотра адресных классификаторов.

3. Database Workshop — это редактор базы данных. Его основными функциями являются: просмотр, редактирование и экспорт таблиц в различные форматы. Эта программа отличается универсальностью, широким спектром функциональных возможностей и простотой, что делает ее полезной как профессионалам, так и обычным пользователям.

4. CDBF — это мощный софт, который дает возможность совершать различные операции с содержимым, не прибегая к программированию. Помимо всего, вы можете расширить функционал путем установки плагинов, а также вводить ваши данные и создавать новые отчеты на строенном редакторе.

5. СТМ-Проводник данных обеспечивает следующие возможности:

  • чтение информации локальных и серверных СУБД
  • сортировка и фильтрация информации
  • данные о структуре таблиц
  • возможность создания закладок
  • возможность открытия таблицы в новом окне
  • функция автозагрузки при запуске системы
  • осуществление передачи информации в Word, Excel, IE

6. DBF SEE — бесплатный простой и удобный просмотрщик, поддерживающий редактирование и кодировку таблиц.

7. DBREdit — редактор таблиц и баз данных DBF, предназначенный для работы без использования дополнительных драйверов и систем доступа. Программа поддерживает работу с dBaseIII+, dBaseIV, dBaseV, dBaseVII, FoxPro, VisualFoxPro и таблицами собственноручной авторской разработки. Кроме того, DBREdit обеспечивает возможность объединенной работы нескольких компьютеров на базе с общим доступом.

8. Редактор DBF — это редактор и просмотрщик файлов с расширением DBF, обеспечивающий возможность различных операций с базами данных, в том числе импорт и экспорт. Поддерживает форматы dBase III, dBase IV, FoxPro, Visual FoxPro и Clipper.

9. DBFViewer обеспечивает функции редактирования, быстрого просмотра и печати документов DBF с форматами dBase, Clipper, Foxpro, Visual Foxpro, Visual Dbase. Кроме того имеются следующие опции:

  • поиск с последующей шаблонной заменой
  • упаковка
  • создание новых документов
  • удаление и восстановление данных,
  • модификация
  • экспорт
  • настройка дополнительных параметров (шрифт, цвет и прочее)

Источник: https://ipt-miit.ru/programmy/kak-dbf-fajl-otkryt-v-excel-ili-excel-preobrazovat-v-dbf.html

Открытие и преобразование DBF-файла в EXCEL

Как dbf перевести в excel

DBF — файл баз данных, возможность работы с которым раньше интегрировалась в среду Microsoft Office. С форматом работали приложения Access и Excel, позже Access был выведен из состава пакета и стал отдельной программой, а в Excel с 2007 года поддержка DataBaseFile была существенно ограничена.

При невозможности открыть DBF-файл напрямую в Excel его нужно предварительно конвертировать.

Однако DBF хоть и считается многими устаревшим форматом, но до сих пор широко используется в специализированных программах в сфере бизнеса, проектирования, инженерной сфере.

Везде, где требуется работа с большими массивами информации, их структурирование и обработка, выполнение запросов. Например, программный комплекс 1С Предприятие целиком основан на управлении базами данных.

А учитывая, что масса офисной документации и данных проходит в Excel, то вопрос интегрированной работы с этими форматами актуален и востребован.

Бесплатный конвертер XLS в DBF и DBF в XLS

Как dbf перевести в excel

Конвертер XLS а также XLSX в DBF и DBF в XLSX представляет собой макрос EXCEL,которым можно использовать не только для конвертирования, но и для поиска, заполнения из файла другой структуры по ключевым полям записей и их модификация. Например, если требуется заполнить файл EXCEL, в котором присутствует какое либо ключевое поле (номер счета или код товара) из базы DBF с таким же ключевым полем.

Или же обратная ситуация – есть EXCEL файл, надо модифицировать или заполнить DBF файл. Конечно потребуется коррекция VBA кода макроса, но сочинять и отлаживать “с нуля” не придется. 

Идея выложить подобный макрос появилась, когда самому потребовался подобный конвертор, а поиски в интернете указывали только на платные конвертеры, к тому же без возможности что либо изменить под себя.

За основу была взята оригинальная надстройка XlsToDBF, автор Василий Малинин, которая распространялась в интернете бесплатно, но найти и скачать ее оказалось не просто.

 Больше попадались либо платные утилиты, либо он-лайн конверторы. Ни то ни другое не подходило. 

Тем более с выходом версии MS Office 2007 в программе Excel по кнопке () в списке возможных вариантов формат dBASE (*.DBF) уже нет. В последующих  подавно.

Краткое описание файла конвертора с макросом XLSX_DBF 

В скачанном архиве XLSX_DBF.zip (в конце статьи) присутствуют файлы: 

 Конвертор.xlsm – собственно сам EXCEL файл с макросами.

Файлы для примера конвертации и заполнения

in_file.DBF

LK_in1.xlsx

RK_in2.xlsx

out1.xlsx

out2.xlsx

Еще два файла появятся после нажатия кнопки ” Заполнить L,R DBF”

SUB_K.DBF

SUB_L.DBF

Все действия по кнопкам легко подкорректировать в VBA из меню макросов

По умолчанию в файле прописаны пути “D:\File”. Для удобства разархивируйте архив на диск D в корень и у Вас сохранится начальная настройка каталогов.

Естественно какие то начальные знания VBA должны присутствовать. Подробных инструкций нет, но все и так максимально просто.  Если Вы хоть раз работали с макросами, то подправить по себя наверняка сумеете.

Для  выполнения макроса необходимо в EXCEL включить разрешение на открытие и запуск макросов. В этих макросах ВИРУСОВ НЕТ. Для включения надо в меню “ФАЙЛ” выбрать “Сведения” -> “Параметры”

Далее выбрать “Центр управления безопасностью” -> “Параметры центра управления безопасностью” -> “Параметры макросов” -> “Включить все макросы”

Для запуска конвертора открываутся файл Конвертор.xlsm. Слева кнопки выбора файлов, справа кнопки запуска. Для примера представлены  файлы EXCEL (Субсидии и льготы – Out1 и Out2), которые обновляются из IN_FILE.DBF, по ключевому полю LSCHET.  В сроки файлов XLSX, где будет найден “Номер лицевого счета” будет заполнено значением из поля “DOLG”  файла IN_FILE.DBF.

Вторая часть Конвертор.xlsm демонстрирует создание и заполнение файлов SUB_K.DBF и SUB_L.DBF из  LK_in1.xlsx и  RK_in2.xlsx согласно заданной структуры. За основу создания взята надстройка XlsToDBF, преобразованная в макрос с исправлением некоторых ошибок.

Макрос (надстройка) XlsToDBF и его описание 

Позволяет:  

    • задать произвольное имя выходного DBF-файла
    • задать тип и размер для каждого поля по усмотрению пользователя
    • задать кодовую страницу (WINDOWS-1251 или DOS-866) для выходного DBF-файла
    • задать параметр MAC для корректного вывода DBF-файла на Macintosh

 Чтобы надстройка поняла, что от неё требуется и создала требуемый DBF-файл, необходимо задать тип, размер, имена полей для конечного DBF-файла, а также его название.

Надстройка умеет работать с четырьмя основными форматами полей DBF: Character (Cnnn), Numeric (Nnn или Nnn.n), Date (D) и Logical (L), т.е такие поля как General, Memo, Currency и т.д. в конечном файле она создать не сумеет. Собственно, родной конвертер предыдущих версий Excel имел такое же ограничение.

Для примера используется файл Price.xls из архива, Лист: Price. Существует таблица EXCEL, которую необходимо сохранить в DBF-файле.

В конечном DBF-файле назначаем необходимые имена полей и форматы, чтобы:

  • Поле Идентификатор имело целочисленный тип (т.е Numeric) шириной в 14 знаков и называлось ID.
  • Поле Наименование — строковый тип (Character) шириной в 100 символов с названием NAME
  • Поле Единица измерения — строковый, 20 символов, с названием ONE_NAME
  • Поле Цена — числовой тип (Numeric) шириной в 14 знаков с двумя знаками за запятой с названием PRICE
  • Поле Включать в прайс — логический тип (Logical) с названием L_PRICE
  • Поле Дата обновления имело тип даты (Date) с названием D_UPDATE

Также мы хотим конечный DBF-файл сохранить с названием PRICE.DBF в кодовой странице (Code Page) DOS-866.

Для того, чтобы получить ожидаемый результат, нужно изменить заголовок таблицы следующим образом (файл Price.xls из архива, Лист: Price_pre).

Первая ячейка первой строки, экспортируемой области, содержит имя конечного файла. Расширение в имени файла на процесс конвертации не влияет, т.е. конечный файл в любом случае будет иметь структуру DBF (dBASE).

Вторая ячейка (B1) указывает макросу надстройки в какой кодовой странице сохранять DBF-файл. Если значение ячейки (B1) отличается от CP866 или не задано совсем, то конечный DBF-файл сохранится в кодовой странице WINDOWS CP1251.

Вторая строка описывает форматы полей, которые мы хотим получить в конечном файле. Здесь хочу отметить, т.к. многие путаются, что числовой формат с дробной десятичной частью, например N14.2 трактуется следующим образом: ширина поля 14 знаков, включая десятичную точку и 2 знака за ней. Т.е. 11 целых знаков, десятичная точка и 2 знака за ней, а не 14 целых знаков и 2 за точкой.

Третья строка описывает наименование полей (максимально 10 символов). Я думаю, больше комментировать здесь нечего.

Начиная с четвёртой строки и до конца непрерывной области, располагаются данные. Желательно, чтобы данные соответствовали заданному типу. Красным цветом я отметил те поля, в которых значения не могут быть корректно преобразованы.

В таких случаях надстройка задаёт им значения по умолчанию. Например, значение ДА не может быть преобразовано к логическому типу. Поэтому в конечном DBF-файле это поле будет иметь значение FALSE (F).

В данном примере то же самое произойдёт и с датами, отмеченными красным цветом (в DBF-файле они будут пустые).

В макросе файла Конвертор.xlsm эти операции прописаны в VBA коде, макрос –  “Вывод_в_dbf()”

Sub Вывод_в_dbf() Dim i As Integer Dim strMes As String Dim strMes1 As String Dim strMes2 As String Dim WBook As String Dim WMak As String Dim Wind1 As String strMes = “” Range(“D13:D200”).Value = “” Range(“D13”).Value = “Обработка 1” f_lgot = Range(“D8”).Value f_sub = Range(“D9”).Value f_dbf_l = Range(“D10”).

Value f_dbf_r = Range(“D11”).Value WBook = ThisWorkbook.Name strMes2 = Range(“D10”).Value If is_file(f_lgot) = 1 Then Range(“D13”).Value = “Обработка 1” Workbooks.Open (f_lgot) Range(“A1”).Value = strMes2 i = rep_file() Application.Run “'Конвертор.xlsm'!XlsToDBF” ActiveWindow.

Close SaveChanges:=False

Windows(WBook).Activate

strMes = strMes + “DBF Файл льгот ” & Range(“D10″).Value & ” заполнен” & Chr(13) + Chr(10) Else strMes = strMes + “!!! DBF Файл льгот НЕ заполнен!” & Chr(13) + Chr(10)

End If

Запуск макроса надстройки XlsToDBF

После того, как мы подготовили данные для выгрузки, можно запустить макрос надстройки. Для этого нужно выделить любую ячейку в области данных или заголовка и нажать . В диалоговом окне «Макрос» в поле «Имя макроса:» нужно ВРУЧНУЮ ввести XlsToDBF (регистр не имеет значения) и нажать кнопку .

Если на предыдущем этапе всё сделано верно, то DBF-файл будет сохранен с именем PRICE.DBF в той же папке, где расположена исходная книга Excel. В случае если книга новая и не сохранена, то DBF-файл будет сохранён в папке по умолчанию (скорее всего в папке «Мои документы»).

Будьте внимательны: при повторном запуске макроса DBF-файл будет переписан без каких-либо предупреждений.

Если работа надстройки устраивает, и Вы предполагаете часто её использовать, то для удобства создайте пользовательскую кнопку на ленте и назначьте ей макрос XlsToDBF.

 Скачать XLSX_DBF бесплатно   

Скачать XlsToDBF бесплатно    

Источник: https://softclipper.net/ispolzovanie-sql-i-dbf/xls-v-dbf-i-dbf-v-xls-makros-excel.html

Все лайфхаки
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: