Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Закрытая тема
Ваша тема закрыта, почему это могло произойти? Возможно,
Нет наработок или кода, если нужно готовое решение - создайте тему в разделе Фриланс и оплатите работу.
Название темы включает слова - "Помогите", "Нужна помощь", "Срочно", "Пожалуйста".
Название темы слишком короткое или не отражает сути вашего вопроса.
Тема исчерпала себя, помните, один вопрос - одна тема
Прочитайте правила и заново правильно создайте тему.
 
Опции темы Поиск в этой теме
Старый 17.10.2008, 09:42   #1
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
Злость Чтение БД Dbf (для Профи)

Уважаемые Господа!
Я давно умею читать БД, но в последнее время натолкнулся на странную базу см. вложение, которую прочитать в Excel-e не получается (БД динамическая). В то же время она без проблем читается в Access-e. Приходилось извращаться (читать в Accesse - сделать запрос читать запрос в Excel). Может кто-то подскажет как ее прочитать.

Кстати НЕ хочется заморачиваться на вторую тему как закрыть Excel из макроса
Вложения
Тип файла: rar Events.rar (36.9 Кб, 26 просмотров)
Юнлинг вне форума
Старый 17.10.2008, 09:55   #2
Aristarh Dark
Форумчанин
 
Регистрация: 07.08.2007
Сообщений: 154
По умолчанию

Такая ДБэФка у меня получалась когда я из программы на дельфи пытался создать dbf файл посрежством SQL запроса через ADO. Т.к. никто из тех кому предназначался этот файл прочитать его не мог, я поискав решение пару дней и не найдя его просто написал генератор заголовка dbf 4 и создавал сначала нужный заголовок, а потом дописывал туда данные.
Aristarh Dark вне форума
Старый 17.10.2008, 10:24   #3
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию Стремно, такой подход я пока думаю не возможен. Хотя...

К сожалению я не могу пойти по такому пути. Файл динамический - постоянно добовляющийся - и корежить заголовок стремно необходимо делать прогу отслеживания (перехват записи).
Юнлинг вне форума
Старый 17.10.2008, 11:29   #4
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Как вариант, попробуйте вставлять файл dbf как внешние данные. В 2007 Excel вроде так нормально читается содержимое файла
pu4koff вне форума
Старый 17.10.2008, 11:53   #5
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

А в Excel 2003 или XP (я пробовал такой подход) это фокус не проходит - у нашего предприятия лицензия только на них. Мы законопослушные люди.
Дома конечно я пробовал в excele 2007 - все OK
Юнлинг вне форума
Старый 17.10.2008, 12:17   #6
Aristarh Dark
Форумчанин
 
Регистрация: 07.08.2007
Сообщений: 154
По умолчанию

Если файл не все время открыт, то как вариант, можно сделать нормальную dbfку (с такими же полями) и подменить существующую. Скорее всего программа ее прожует на ура (главное при проектировании dbfки не забыть указать кодировку 1251).
Aristarh Dark вне форума
Старый 17.10.2008, 12:29   #7
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

Программа может и проглотит, но поставщики требуют отсавить все как есть. Ругаться с ними не возможно. Упертые до не возможности.

Я думаю открыть ее с помощью макроса (есть DLL которая ее читает, говорят проверена в СИ++). Но из-за своего скeдоумия я незнаю как ее подключить к Excel.
Юнлинг вне форума
Старый 17.10.2008, 14:19   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Юнлинг, а если, действительно, попробовать так сделать - в тот момент, когда Вы хотите получить данные в Excel (это же не в реалтайм нужно получать данные, я правильно понимаю?), Вы копируете файлик, специальной утилиткой правите в СКОПИРОВАННОМ (то бишь временном) файлике заголовок DBF и открываете его в любимом Excel'е... Так пойдёт?
Serge_Bliznykov вне форума
Старый 17.10.2008, 14:28   #9
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

Так конечно пойдет. Но система должна работать автоматически, а я к сожалению не знаю такой утилиты, которая самостоятельно может подкорректировать заголовок. DBf нужен для обработки каждый час - в рабочее время. Пользуются руководители, а они кроме Excel не понимают другого. И так их долго приучал к макросам.
Юнлинг вне форума
Старый 18.10.2008, 11:54   #10
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
а я к сожалению не знаю такой утилиты, которая самостоятельно может подкорректировать заголовок.
хорошо. если ничего не случится, то сегодня ночью-завтра утром выложу я Вам такую утилитку (заточена будет под структуру Вашего Events.dbf). Напишу сам. Кстати, она же и копировать будет - в командной строке два параметра - первый - имя(путь) к исходному файлику - второй параметер - путь к результирующему файлу... ок?
Serge_Bliznykov вне форума
Закрытая тема


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен совет профи по клав. шпиону. Titan123 Общие вопросы Delphi 10 03.11.2008 19:27
сохранение результата выборки из DBF файла в DBF файл с такой же структурой таблицы GazimagomedovM БД в Delphi 5 06.11.2007 17:58
Ребят, помогите прогу сделать для авто-группировки таблиц dbf HIC БД в Delphi 6 22.06.2007 14:37