powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Доступ из Excel к DBF-файлам для чайника.
6 сообщений из 6, страница 1 из 1
Доступ из Excel к DBF-файлам для чайника.
    #33098255
^junior^
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Раньше я к базам данных лазил только из приложений, написанных на Delphi или C++. Да и базы были Oracle, MS SQL... На худой конец Firebird. И вот... Подкрался незаметно!
Нужно сделать выгрузку данных из Excel'я в dbf-файлы.
С Visual Basic'ом уже давно не сталкивался, но в общих чертах ещё помню. А вот работать из Excel'я с базами данных не приходилось никогда. Поэтому наступаю на все грабли.
В связи с чем просьба подсказать, ежели кто знает, ссылки на соответствующие теме ресурсы. Или подскажите, что мне нужно сделать, чтобы строка
Код: plaintext
Dim cn as ADODB.Connected
не вызывала ошибку: User-defined type not defined?
...
Рейтинг: 0 / 0
Доступ из Excel к DBF-файлам для чайника.
    #33098360
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Нормальные герои всегда идут в обход!"
А "Save As" не катит?
...
Рейтинг: 0 / 0
Доступ из Excel к DBF-файлам для чайника.
    #33098397
^junior^
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нет, не катит. Долго объяснять. Есть настроенные, чудесно работающие отчеты в Excel. Есть программа, написанная на FoxPro. И бедной тетеньке-экономисту приходится вводить одни и те же данные дважды. Отчеты в Excele и формат данных в dbf-ках ОЧЕНЬ отличаются. И отчеты и dbf-ки нужно регулярно отсылать в разные инстанции ИМЕННО в таком виде, как они есть сейчас. Моя задача: автоматизировать ручной труд. Сделать так, чтобы тетенька вводила данные только в Excel, а уж в dbf они должны попадать сами.
...
Рейтинг: 0 / 0
Доступ из Excel к DBF-файлам для чайника.
    #33098719
Фотография HandKot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
^junior^Раньше я к базам данных лазил только из приложений, написанных на Delphi или C++. Да и базы были Oracle, MS SQL... На худой конец Firebird. И вот... Подкрался незаметно!
Нужно сделать выгрузку данных из Excel'я в dbf-файлы.
С Visual Basic'ом уже давно не сталкивался, но в общих чертах ещё помню. А вот работать из Excel'я с базами данных не приходилось никогда. Поэтому наступаю на все грабли.
В связи с чем просьба подсказать, ежели кто знает, ссылки на соответствующие теме ресурсы. Или подскажите, что мне нужно сделать, чтобы строка
Код: plaintext
Dim cn as ADODB.Connected
не вызывала ошибку: User-defined type not defined?

ну, во-первых, Dim cn as ADODB.Connection

и не забудь в рефренсы добавить Microsoft ActiveX DataObject Library
...
Рейтинг: 0 / 0
Доступ из Excel к DBF-файлам для чайника.
    #33099173
Processor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
^junior^Нет, не катит.
Есть настроенные, чудесно работающие отчеты в Excel.
Есть программа, написанная на FoxPro. Отчеты в Excele и формат данных в dbf-ках ОЧЕНЬ отличаются.Порывшись в давно забытых исходниках, нашёл:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
'Алгоритм:
'1. Извлекаем ... № последней сохранённой накладной и инкрементируем его (NNNN).
'2. Копируем файл-шаблон prod_tpl.dbf в файл prod0000.dbf.
'3. Открываем пустую таблицу prod0000 для добавления.
'4. Добавляем в prod0000 записи с заполненными из накладной полями
'   Nomer,Vid_oper,Kod_tov,Vupis_d,Sklad,Cpr NdsPr
'5. Переименовываем файл prod0000.dbf в prodNNNN.dbf
'------------------------
Private Sub FillOrderFromGrid(ByVal PackNo As Integer)
Dim csPR0 As New ADODB.Connection
With csPR0
    .CursorLocation = adUseClient
    .Mode = adModeReadWrite
    .Provider = "MSDASQL"
    .Open "DSN=PROD0000;UID=sa;PWD=;"    '
End With
Dim rsPR0 As New ADODB.Recordset
With rsPR0
    .CursorLocation = adUseClient
    .CursorType = adOpenDynamic                 '
    .LockType = adLockBatchOptimistic
    .Open "SELECT * FROM PROD0000 ", csPR0       '
    .Filter = adFilterNone
    Dim i As Long, N As Long
    N = frmMain.wndEdit.Rows -  1    'это - сетка vsFlexGrid
    For i =  1  To N
        .AddNew
        .Fields("Nomer") = PackNo
        .Fields("Vid_oper") = "СЧЕТ_Ф"                              'flexcpVariantValue
        .Fields("Kod_tov") = frmMain.wndEdit.Cell(flexcpVariantValue, i,  0 ) 'скрытый код товара
' остальные поля убраны из листинга.... 
        .MoveNext
    Next i
    .UpdateBatch
    .Close
End With
csPR0.Close
End Sub
Как сделать DSN - знаешь сам...
...
Рейтинг: 0 / 0
Доступ из Excel к DBF-файлам для чайника.
    #33099330
^junior^
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
to HandKot: ADODB.Connected - сие есть очепятка.
HandKotи не забудь в рефренсы добавить Microsoft ActiveX DataObject Library - спасибо, проверю.

to Processor: Спасибо, попробую использовать.
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Доступ из Excel к DBF-файлам для чайника.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]