Predmet:Re: VB6 open binary file
vidim ima tu ljudi koji oce pomoc pa cu iskoristiti to

imamo u excel-u list1 i list2
na list1 - maticni broj, ime, prezime, datum rodenja
na list2 - maticni broj, ime, prezime, adresa, telefon

u vba napisao sam kod koji sprema u popis.bin datoteku. uz pomoc maticnog broja nade odredenu osobu na list2 i doda podatke evo kod:
- Type osoba
maticniBr As Long
ime As String
prezime As String
datumR As Date
adresa As String
telefon As Double
End Type
Sub saveBinFile()
Dim O As osoba
Dim maticni As Long 'vrijednost kucice
Dim strSize As Long
'stvoriti novu datoteku i otvoriti ju za binarni pristup
Open "c:\popis.bin" For Binary Lock Read Write As 1
'idemo od prvog zapisa do zadnjeg
'ovdje bi mogli odrediti zadnji zapis sa redEnd=(Cells(1, Columns.Count).End(xlToLeft).Column
For f = 1 To 50
'aktiviramo prvi list na kojem imamo maticni, ime, prezime i datum rod
Worksheets("list1").Select
maticni = Cells(f + 1, 1)
O.maticniBr = maticni
O.ime = Cells(f + 1, 2)
O.prezime = Cells(f + 1, 3)
O.datumR = Cells(f + 1, 4)
'aktiviramo drugi list na kojem imamo adresu i telefon nademo uz pomoc naredbe vlookup i maticnog broja
Worksheets("list2").Select
O.adresa = Application.WorksheetFunction.VLookup(maticni, Range("A2:e51"), 4, False)
O.telefon = Application.WorksheetFunction.VLookup(maticni, Range("A2:e51"), 5, False)
'upisujemo nadene podatke u f red
Put 1, , O.maticniBr 'netrebamo duzinu jer se radi o broju
strSize = Len(O.ime) 'trebamo duzinu jer se radi o stringu
Put 1, , strSize
Put 1, , O.ime
strSize = Len(O.prezime) 'trebamo duzinu jer se radi o stringu
Put 1, , strSize
Put 1, , O.prezime
Put 1, , O.datumR 'netrebamo duzinu jer se radi o datumu
strSize = Len(O.adresa) 'trebamo duzinu jer se radi o stringu
Put 1, , strSize
Put 1, , O.adresa
Put 1, , O.telefon 'netrebamo duzinu jer se radi o broju
Next f 'sljedeci red
Close 1 'zatvorimo datoteku
End Sub
za telefon nije htijelo prihvatiti niti Long niti Integer vec samo Double
pitanje je:
dali je ovo u redu. radi to ali me zanima dali se to tako radi ili ima neki bolji algoritam, neki pravilniji nacin.
zivot je moja domovina.