powered by simpleCommunicator - 2.0.55     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Загрузка бинарной базы в таблицу Access
22 сообщений из 22, страница 1 из 1
Загрузка бинарной базы в таблицу Access
    #39223907
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дорогие гуру, помогите самоучке загрузить бинарную базу данных в таблицу Access 2013. Я в VB полный "0", всё что мог, то это подгонять уже готовый образец под свою базу. (Да, искал и по форуму и в интернете примеры, но свой создать не получается - я в программировании вообще путаюсь, и совершенно не разбираюсь, уж простите).
Что требуется - есть бинарные файлы базы данных, с такой структурой (12+5+1+3+1+3+1+1+1+1+8):
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
 12  символов - текст с пробелами,
 5  символов - бинарные (символы 0-255),
 1  символ - текст или пробел,
 3  символа - текст или пробелы,
 1  символ - текст или пробел,
 3  символа  - текст или пробелы,
 1  символ - текст или пробел,
 1  символ - текст или пробел,
 1  символ - текст или пробел,
 1  символ - * или пробел,
 8  символов - бинарные (символы 0-255).
Требуется:
Создать таблицу Access 2013 из бинарной базы с названием расширения файла (в данном примере BF1) и со структурой:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
 VIN  - тип: Короткий текст; Размер поля - 12,
 Index_1  - тип: Короткий текст; Размер поля - 25 (3-х значные Hex-коды 5 символов (000-255)),
 Int  - тип: Короткий текст; Размер поля - 1,
 Color  - тип: Короткий текст; Размер поля - 3,
 01  - тип: Короткий текст; Размер поля - 1,
 02  - тип: Короткий текст; Размер поля - 3,
 03  - тип: Короткий текст; Размер поля - 1,
 04  - тип: Короткий текст; Размер поля - 1,
 05  - тип: Короткий текст; Размер поля - 1,
 06  - тип: Короткий текст; Размер поля - 1,
 Index_2  - тип: Короткий текст; Размер поля - (3-х значные Hex-коды 8 символов (000-255)).
Образец бинарного файла базы прилагается.
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39223912
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903Требуется:
Создать таблицу Access 2013 из бинарной базы с названием расширения файла (в данном примере BF1) и со структурой:Сперва создай таблицу или шаблон (пофиг с каким именем) такой структуры.
Потом открывай свой файл как Binary, читай оттуда нужное количество байтов и клади в очередную запись. Снова читай и клади. И так, пока файл не кончится.
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39223927
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903Дорогие гуру, помогите самоучке загрузить бинарную базу данных в таблицу Access 2013. Я в VB полный "0", всё что мог, то это подгонять уже готовый образец под свою базу. (Да, искал и по форуму и в интернете примеры, но свой создать не получается - я в программировании вообще путаюсь, и совершенно не разбираюсь, уж простите).
Что требуется - есть бинарные файлы базы данных, с такой структурой (12+5+1+3+1+3+1+1+1+1+8):
Что вы называете "Бинарным файлом"?
В принципе все файлы бинарные.
Но есть парсеры или редакторы или программы которые и приводят к удобоваримуему виду.
Как парсить ваш бинарник "Vindata8.BF1"
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39223938
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Akina , Вы наверное не поняли суть - в бинарном файле файле присутвуют индексированые данные, т.е. управляющие символы (Hex-коды с 000-031), а это и конец строки, перевод каретки и т.д., поэтому мне и нужны их 3-х значные коды; к тому же, для написания самой процедуры у меня напрочь отсутвуют знания (дальше создания простых запросов на выборку и создания таблиц не продвигался).
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39223946
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ROI , Вы наверное точно поняли, что мне требуется пропарсить Vindata8.BF1, но как это сделать средствами Access 2013 (напишите, пожалуйста образец, как это сделать)...
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39223966
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903Вы наверное не поняли суть - в бинарном файле файле присутвуют индексированые данные, т.е. управляющие символы (Hex-коды с 000-031)
Это когда "управляющие символы" стали индексироваными?
Вас спрашивают как парсить ваш файл?
Я сомневаюсь что в поля Access вы можете хранить управляющие символы хотя некоторые можно.
Будут наверно забавные артефакты.
Ну с полным отсутствием знаний, вам будет трудно.
Мне интересно, а зачем это.
С уважением.
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39223969
ROI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903 ROI , Вы наверное точно поняли, что мне требуется пропарсить Vindata8.BF1, но как это сделать средствами Access 2013 (напишите, пожалуйста образец, как это сделать)...
Дык как его собаку парсить ежели мы не знаем и не видим результат на чё надо орентироваться.
Хотя бы от какой программы ентот файл?
С уважением.
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224008
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ROI , это база ВИН номеров Ниссан, из программы подбора запчастей, мне нужно её загрузить для дальнейшей "доработки" в таблицу Access 2013. А управляющие символы не стали индексированными, они используются в базе как "подстановочные". Я вручную, в текстовом редакторе Notepad++ делал замену и получал строку в таком виде:
5N1AL0MM0DC0[000][207][247][004][186][067][075][050][051] C [000][000][124][144][000][000][045][180]
При загрузке в Access 2013 она имеет вид:
PreVIN01020304050607080910111213141516171819202122235N1AL0MM0DC0[000][207][247][004][186][067][075][050][051]C[000][000][124][144][000][000][045][180]
- где в символах заключен "[" и "]" Hex-код.
Но при замене вручную присутствует фактор ошибки, и Notepad++ нормально не обрабатывает без сбоев файлы общим размером более 300 мб (я разбивал их даже по 100 мб и обрабатывал в многооконном силе). А т.к. их всё равно требуется записать в таблицу, то и обратился к вам за помощью.
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224012
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Забыл добавить - для упрощения, я объединил в результирующей таблице (которую указал в первом посте) поля с 01 по 06 и с 16 по 23.
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224013
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
опять опечатка, с 01 по 05, и с 16 по 23 (моя невнимательность).
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224014
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903 Akina , Вы наверное не поняли суть - в бинарном файле файле присутвуют индексированые данные, т.е. управляющие символы (Hex-коды с 000-031), а это и конец строки, перевод каретки и т.д., поэтому мне и нужны их 3-х значные коды;Это я как раз всё понял - не зря указал режим открытия файла именно как Binary.

sergy2903для написания самой процедуры у меня напрочь отсутвуют знанияЭто Ваша проблема. И как Вы её будете решать - самообучением или наёмом специалиста, - тоже Ваша проблема.
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224188
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903,


ПОПРОБОВАЛА ВАШ ФАЙЛИК-5000записей, 4 секунды
5N3AA08CX9N90,11,180,3,42,GG10 N 0,0,127,51,0,0,0,1,5N3AA08CXAN90,0,24,3,136,GK11 N *0,0,127,78,0,0,0,0,5N3AA08CXAN90,0,38,3,136,GG10 N *0,0,127,78,0,0,0,0,5N3AA08CXAN90,0,41,3,136,CG10 N 0,0,127,78,0,0,0,2,5N3AA08CXAN90,0,55,3,136,GG10 N 0,0,127,78,0,0,0,2,5N3AA08CXAN90,0,69,3,136,CG10 N 0,0,127,78,0,0,0,2,5N3AA08CXAN90,0,72,3,136,GG10 N 0,0,127,78,0,0,0,2,5N3AA08CXAN90,0,86,3,136,GK12 N 0,0,127,78,0,0,0,2,5N3AA08CXAN90,2,94,3,137,GG10 N *0,0,127,78,0,0,0,0,5N3AA08CXAN90,2,111,3,137,GG10 N 0,0,127,78,0,0,0,2,5N3AA08CXAN90,3,146,3,138,GK11 N 0,0,127,78,0,0,0,2,5N3AA08CXAN90,3,160,3,138,GG10 N 0,0,127,78,0,0,0,2,
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224199
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА , спасибо, а как это реализовано, можно увидеть (пример кода)?
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224228
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Собрал такую фигуру:
Код: vbnet
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.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
Private Sub Command1_Click()
  Dim buf() As Byte, k%
  Dim rs As DAO.Recordset
  Dim f00, f01, f06, f07, f08, f09, f10, f11, f12, f13, f14, f15, f02, f03, f04, f05, f16, f17, f18, f19, f20, f21, f22, f23, f24, f25, f26 As String
  Dim Pos As Long
  Dim LenAllText As Long
  Dim AllText As String
  k = FreeFile
  Open "d:\VINDAT8.BF1" For Binary As #k
   ReDim buf(1 To LOF(k))
   Get k, , buf
  Close k
  AllText = buf
  Set rs = CurrentDb.OpenRecordset("T", dbOpenTable, dbAppendOnly)
  Pos = 1
  LenAllText = Len(AllText)
  Do While Pos < LenAllText
    ' &#209;&#242;&#238;&#235;&#225;&#229;&#246;1
    f00 = Mid(AllText, Pos, 12)
    Pos = Pos + 12
    f01 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f02 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f03 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f04 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f05 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f06 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f07 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f08 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f09 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f10 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f11 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f12 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f13 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f14 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f15 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f16 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f17 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f18 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f19 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f20 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f21 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f22 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f23 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f24 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f25 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    f26 = Mid(AllText, Pos, 1)
    Pos = Pos + 1
    rs.AddNew
    rs.Fields("PreVIN") = Trim(f00)
    rs.Fields("01") = Asc(f01)
    rs.Fields("02") = Asc(f02)
    rs.Fields("03") = Asc(f03)
    rs.Fields("04") = Asc(f04)
    rs.Fields("05") = Asc(f05)
    rs.Fields("06") = Asc(f06)
    rs.Fields("07") = Asc(f07)
    rs.Fields("08") = Asc(f08)
    rs.Fields("09") = Asc(f09)
    rs.Fields("10") = Asc(f10)
    rs.Fields("11") = Asc(f11)
    rs.Fields("12") = Asc(f12)
    rs.Fields("13") = Asc(f13)
    rs.Fields("14") = Asc(f14)
    rs.Fields("15") = Asc(f15)
    rs.Fields("16") = Asc(f16)
    rs.Fields("17") = Asc(f17)
    rs.Fields("18") = Asc(f18)
    rs.Fields("19") = Asc(f19)
    rs.Fields("20") = Asc(f20)
    rs.Fields("21") = Asc(f21)
    rs.Fields("22") = Asc(f22)
    rs.Fields("23") = Asc(f23)
    rs.Fields("24") = Asc(f24)
    rs.Fields("25") = Asc(f25)
    rs.Fields("26") = Asc(f26)
    rs.Update
  Loop
  rs.Close
End Sub


И получил:
PreVIN0102030405060708091011121314151617181920212223242526丵䄱が䵍䐰ぃ케ӷ䎺㉋″†6313432636363636363636363516363636313413463134063022463䄱が䵍䐰㍃猀Ы䎼䅑⁁†䌠13432636306363636363635163636363134134631340630636363

Как исправить кодировку, т.к. выводится она в UTF-16?
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224231
Predeclared
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не?
Код: vbnet
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.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
Public Type TypVIN
    PreVin As String * 12
    f1(4) As Byte ' for 0 to 4
    f2 As String * 1
    f3 As String * 3
    f4 As String * 1
    f5 As String * 3
    f6 As String * 1
    f7 As String * 1
    f8 As String * 1
    f9 As String * 1
    f10(7) As Byte ' for 0 to 7
End Type
    
    
Public Sub ReadData()
    Dim vin As TypVIN
    Dim Records As Long
    Dim r As Long
    Dim ff
    Dim i As Integer
    
    With CurrentDb.OpenRecordset("Items", , dbAppendOnly)
        ff = FreeFile
        Open CurrentProject.Path & "\VINDAT8.BF1" For Random As #ff Len = Len(vin)
        Records = LOF(ff) / Len(vin)
        For r = 1 To Records
            Get #ff, r, vin
            .AddNew
                .Fields("PreVin") = vin.PreVin
                For i = 0 To 4
                    .Fields("f1_" & i) = vin.f1(i)
                Next i
                .Fields("f2") = vin.f2
                .Fields("f3") = vin.f3
                .Fields("f4") = vin.f4
                .Fields("f5") = vin.f5
                .Fields("f6") = vin.f6
                .Fields("f7") = vin.f7
                .Fields("f8") = vin.f8
                .Fields("f9") = vin.f9
                For i = 0 To 7
                    .Fields("f10_" & i) = vin.f10(i)
                Next i
            .Update
        Next r
        Close #ff
        .Close
    End With
End Sub


...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224232
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А в конечном результате получилось смещение строк и сбой... Что я неправильно сделал?
PreVIN0102030405060708091011121314151617181920212223242526丵䄱が䵍䐰ぃ케ӷ䎺㉋″†6313432636363636363636363516363636313413463134063022463䄱が䵍䐰㍃猀Ы䎼䅑⁁†䌠13432636306363636363635163636363134134631340630636363が䵍䐰㍃猀қ䞼䡋″†䌠†3263490636363636363516363636313413463134063045636363䵍䐰㍃猀ӛ䞼䡋″†䌠†63636363636363636351636363631341346313406306363636363䐰㍃琀н䎼䡋″†䌠† 笀49063636363636351636363631341346313406302246363636363㍃甀ѡ䎼䅑⁁†䌠† 笀10636363636363516363636313413463134063063636363636363甀Ӄ䎼䡋″†䌠† 笀63636363636351636363631341346313406304563636363636363Д䎼䅑⁁†䌠† 笀163636363635163636363134134631340630456363636363636363䞼䡋″†䌠† 笀1636363635163636363134134631340630224636363636363636363䡋″†䌠† 稀Å⼀㗹ㅎ䱁63636351636363631341346313406304563636363636363636363″†䌠† 笀 㔄ㅎ䱁䴰636351636363631341346313406302246363636363636363636363†䌠† 稀û⬀㗱ㅎ䱁䴰き635163636363134134631340630636363636363636363636363134䌠† 稀û⬀㗱ㅎ䱁䴰き䍄516363636313413463134063063636363636363636363636313463† 稀û⬀㗱ㅎ䱁䴰き䍄36363636313413463134063065636363636363636363636313463134稀û⬀㗱ㅎ䱁䴰き䍄3径6363631341346313406306563636363636363636363631346313432稀û⬀㗱ㅎ䱁䴰き䍄3㊅ᘅ6363134134631340630636363636363636363636363134631343263⨀㖻ㅎ䱁䴰き䍄3뾌ᔅ䭇631341346313406306363636363636363636363631346313432639713413463134063065636363636363636363636313463134326311763㗱ㅎ䱁䴰き䍄3⺎ᔅ䭇㍈†13463134063063636363636363636363636313463134326349063ㅎ䱁䴰き䍄3咏ᔅ䭇〵††631340630636363636363636363636363134631343263117636363䱁䴰き䍄3ᘅ元䅁††⁃134063065636363636363636363636313463134326311763636363䴰き䍄3ᘅ兇䅁††⁃†063065636363636363636363636313463134326397063636363き䍄3᪑ᘅ䭇㍈††⁃†630656363636363636363636363134631343263117636363636363䍄3䪑ᘅ乇䉁††⁃†0656363636363636363636363134631343263117636363636363633캫ᜅ䭃㍈††⁃†456363636363636363636363134631343263116063636363636351쒭᠅兇䅁††⁃†63636363636363636363631346313432636306363636363635163᠅元䅁††⁃†63636363636363636363134631343263630636363636363516363䭇㍈††⁃†63636363636363636313463134326349063636363636351636363㍈††⁃†63636363636363631346313432634906363636363635163636363††⁃†636363636363631346313432634906363636363635163636363134†⁃†6363636363631346313432634906363636363635163636363134134⁃†6363636363134631343263490636363636363516363636313413463†636363631346313432636306363636363635163636363134134631346363631346313432634906363636363635163636363134134631340
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224235
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Predeclared , похоже что база эта...
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224245
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903,
у вас 38 символов в записи, а надо 37
иероглифы --не поняла
----
я читала посимвольно
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224249
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903,

ваша прога сожрала половину символов(сочла, что текст в юникоде)
?ubound(buf,1),LenAllText
191623 95811
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224267
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ПЕНСИОНЕРКА , а не подскажете, как указать, что файл нужно читать в windows-1251?
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224358
Фотография ПЕНСИОНЕРКА
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sergy2903,

через Get k, , buf ни разу не работала, хотя кажется в ней есть какие то нюансы
Код: vbnet
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.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
Sub serg0425()
Dim s1, J1 As Long, J1K, J2, SS, ntxt, npath, kx, DT1, DT2
kx = FreeFile
npath = Excel.ActiveWorkbook.Path & "\"
ntxt = "W01.TXT"
Open npath & ntxt For Binary As #1
Open npath & ntxt & "1" For Output As #2
DT1 = Timer
J1K = LOF(1)
Debug.Print J1K, kx, npath; ntxt
Debug.Print npath; ntxt; "1"

J1 = 0
SS = ""
J2 = 0
Do While J1 < J1K
'j1 = j1 + 1
J2 = J2 + 1
s1 = Input(1, #1)
'If Asc(s1) >= 32 And Asc(s1) <= 127 Then
If J2 <= 12 Then
SS = SS & s1
If J2 = 12 Then SS = SS & "`"

ElseIf J2 <= 17 Then
SS = SS & Asc(s1) & ","
If J2 = 17 Then SS = SS & "`"

ElseIf J2 <= 29 Then
SS = SS & s1
If J2 = 29 Then SS = SS & "`"

ElseIf J2 <= 37 Then
SS = SS & Asc(s1) & ","
If J2 = 37 Then
Debug.Print J1;
Print #2, SS
J2 = 0
SS = ""
End If
End If
J1 = Loc(1)
Loop
Reset
Debug.Print
Debug.Print (Timer - DT1) \ 1
End Sub
...
Рейтинг: 0 / 0
Загрузка бинарной базы в таблицу Access
    #39224374
sergy2903
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Predeclared , спасибо, Ваше решение мною немного переделано, т.к. не заработал цикл по "i" - выдавал ошибку по названию поля "f1_", а при переименовании в "f1" на первом цикле снова выдавал ошибку.
Код: vbnet
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.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
Public Type TypVIN
    PreVin As String * 12
    f01 As String * 1
    f02 As String * 1
    f03 As String * 1
    f04 As String * 1
    f05 As String * 1
    f06 As String * 1
    f07 As String * 3
    f08 As String * 1
    f09 As String * 3
    f10 As String * 1
    f11 As String * 1
    f12 As String * 1
    f13 As String * 1
    f14 As String * 1
    f15 As String * 1
    f16 As String * 1
    f17 As String * 1
    f18 As String * 1
    f19 As String * 1
    f20 As String * 1
    f21 As String * 1
End Type
    
    
Public Sub ReadData()
    Dim vin As TypVIN
    Dim Records As Long
    Dim r As Long
    Dim ff
    'Dim i As Integer
    
    With CurrentDb.OpenRecordset("Items", , dbAppendOnly)
        ff = FreeFile
        Open CurrentProject.Path & "\VINDAT8.BF1" For Random As #ff Len = Len(vin)
        Records = LOF(ff) / Len(vin)
        For r = 1 To Records
            Get #ff, r, vin
            .AddNew
                .Fields("PreVin") = vin.PreVin
                'For i = 0 To 4
                    '.Fields("f1_" & i) = vin.f1(i)
                'Next i
                .Fields("f01") = Asc(vin.f01)
                .Fields("f02") = Asc(vin.f02)
                .Fields("f03") = Asc(vin.f03)
                .Fields("f04") = Asc(vin.f04)
                .Fields("f05") = Asc(vin.f05)
                .Fields("f06") = vin.f06
                .Fields("f07") = vin.f07
                .Fields("f08") = vin.f08
                .Fields("f09") = vin.f09
                .Fields("f10") = vin.f10
                .Fields("f11") = vin.f11
                .Fields("f12") = vin.f12
                .Fields("f13") = vin.f13
                .Fields("f14") = Asc(vin.f14)
                .Fields("f15") = Asc(vin.f15)
                .Fields("f16") = Asc(vin.f16)
                .Fields("f17") = Asc(vin.f17)
                .Fields("f18") = Asc(vin.f18)
                .Fields("f19") = Asc(vin.f19)
                .Fields("f20") = Asc(vin.f20)
                .Fields("f21") = Asc(vin.f21)
              'For i = 0 To 7
                    '.Fields("f10_" & i) = vin.f10(i)
                'Next i
            .Update
        Next r
        Close #ff
        .Close
    End With
End Sub


Результат:
PreVINf01f02f03f04f05f06f07f08f09f10f11f12f13f14f15f16f17f18f19f20f215N1AL0MM0DC002072474186CK23 C 0012414400451805N1AL0MM0DC301031364187GKH3 C 00123157004845N1AL0MM0DC30115434188CQAA C 00122143000375N1AL0MM0DC301151384188CNAB C 001249000472495N1AL0MM0DC301151554188GKH3 C 0012349000375N1AL0MM0DC301151604188GKH3 C 0012349000375N1AL0MM0DC301152194188GKH3 C 0012315700484

ПЕНСИОНЕРКА и Вам огромное спасибо за внимание. Вопрос закрыт, т.к. решение найдено.
...
Рейтинг: 0 / 0
22 сообщений из 22, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Загрузка бинарной базы в таблицу Access
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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