-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
Új hozzászólás Aktív témák
-
martonx
veterán
hát egy rekord fájlban tároljuk az adatokat (mini adatbázis) és ezeket exportáljuk egy csv fájlba, hogy azt excellel is tudjuk kezelni. és azt kellene megoldani, hogy ha az így kiimportált .csv-t megnyitjuk excellel, és hozzáírunk még néhány rekordot (ami 3 mezőből áll) akkor azokat be tudjuk importálni a programfelületen keresztül a rekord típusú fájlunkba. szerintem is hülyeség, mivel a programmal simán hozzá tudjuk adni. nade ezen a hülye tárgyon múlik, hogy mehessek államvizsgázni, muszáj összekapnom magam. ha gondolod el tudom küldeni az eddigi programot..

Ugye VB.NET-ről beszélünk? Mert ha igen, akkor elküldheted a kódod. Megoldás szempontjából végülis mindegy, hogy .Net vagy nem.
Ha már megvan a mini adatbázisod, és a csv-d, akkor olvasd be csvből az adatokat, majd azokon végiglépdelve, amit nem találsz meg az adatbázisodban, azt beletöltöd.
Amúgy, ahhoz nem kell csv-hogy excellel kezeld az adatokat, sima COM objektumon keresztül tudsz kommunikálni az excellel. Ezt sokkal elegánsabbnak tartanám.
Vagy csinálsz egy excel makrót, ami szintén beleír az adatbázisodba

BME-n már ilyen szakdolgozatokért is adnak diplomát?

-
martonx
veterán
sziasztok!
simét VB kérdéssel fordulnék hozzátok. már van egy jó kis programunk, ami képes feltölteni egy rekord típusú fájlt, 3 féle adat tartozik egy rekordhoz. ezt a fájlt ki is tudjuk iratni egy exceláltal is kezet .csv formátumú soros fájlba. az lenne a kérdésem, hogy az hogyan oldható meg, hogy ha én ebbe a soros .csv fájlba beírok még adatokat, azt a program be tudja olvasni, és el tudja tárolni a már említett rekord típusú fájlba, vagyis elvégezni a műveletet visszafelé.
remélem érthető a kérdés

köszi előre is a segítséget!
Én már azon fennakadtam, hogy minek egy rekord fájl és egy csv fájl külön-külön? Miért nem a csv fájl a rekord fájl is egyben

-
ArchElf
addikt
szóval a fájlkezelést tanultuk és a feladat a következő lenne:
egy ksi adatbázist kellene létrehozni egy rekord típusú fájlban. a fáljlban egy személyről 3 adatot kellene tárolni. ezen adatok eltárolásához létrehoztunk egy elrendezést. 3 textboxban a kívánt adatok vannak, a 4.ben kellene megjelennie annak, hogy hányadik rekordról van szó. a textboxok egyben szolgálnak az adatok bevitelére és egjelenítésére is.
van 4 command button. egy előre és egy hátra funkciójú, ami a rekordok közötti navigációra szolgál. egy mentés nevű, ami a 3 textbox tartalmát beírja egy rekordba a fájlban, és egy töröl, ami az épp kiválasztott rekordot törli ki.
remélem érthető...
a kódból jelenleg ennyi van meg:Option Explicit
Option Base 1
Private Type hallgato
nev As String * 30
neptun As String * 6
kp As Single
End Type
Dim h As hallgato
Dim f As Integer
Dim r As Integer
Dim fnev As String
Dim tmpfile As StringPrivate Function darab() As Integer
f = FreeFile
Open fnev For Random Access Read As #f Len = Len(h)
darab = LOF(f) / Len(h)
Close #fEnd Function
Public Sub kiirat(rekordsz As Integer)
Dim db As Integer
db = darab
If db = 0 Then
Label4.Caption = "No data"
Call tiszta
Else
Label4.Caption = Str(rekordsz) + "/" + Str(db)
f = FreeFile
Open fnev For Random Access Read As #f Len = Len(h)
Get #f, rekordsz, h
textbox1.Text = h.nev
textbox2.Text = h.neptun
textbox3.Text = Str(h.kp)
End IfEnd Sub
Public Sub tiszta()
Text1.Text = "Maximum 30 karakter"
Text2.Text = "NEPTUN"
Text3.Text = "Kp"End Sub
remélem tud valaki segíteni

Ez működőképesnek tűnik.
Load-ban be kell állítani a fájlnevet (ha nem textboxból kell beolvasni), Megnyitni a fált írás/olvasásra, le kell kérdni a rekordok számát, be kell állítani az első rekordot (nem kell beszárni a fájl).
Bottonokban:
- navigálás: gondolom neked is egyszerű (index változót kell növelni csökkenteni a 0 és a darabszám-1 között - vagy 1 és darabszám között??? már nem emlékszem)
- editre: ugyanaz van, mint a GET (csak PUT-tal): beállítani a rekordszámot, a textboxokból legenerálni a típust, felülírni vele a rekordot az adott helyen.
- mentésre: bezárni a fájlt és újranyitni
- törlésre:
legegyszerűbb az utolsó elemet a fájl végéről bemásolni a törölt helyére és a rekordhosszal csökkenteni a fájl hosszát.
bonyolultabban minden rekordot a törölt rekod után eggyel előrébb írni, majd csökkenteni a fájl hosszát egy rekordhosszal.Nincs sajna VB6-om, csak magyarázni tudok...
AE
-
bandus
veterán
szóval a fájlkezelést tanultuk és a feladat a következő lenne:
egy ksi adatbázist kellene létrehozni egy rekord típusú fájlban. a fáljlban egy személyről 3 adatot kellene tárolni. ezen adatok eltárolásához létrehoztunk egy elrendezést. 3 textboxban a kívánt adatok vannak, a 4.ben kellene megjelennie annak, hogy hányadik rekordról van szó. a textboxok egyben szolgálnak az adatok bevitelére és egjelenítésére is.
van 4 command button. egy előre és egy hátra funkciójú, ami a rekordok közötti navigációra szolgál. egy mentés nevű, ami a 3 textbox tartalmát beírja egy rekordba a fájlban, és egy töröl, ami az épp kiválasztott rekordot törli ki.
remélem érthető...
a kódból jelenleg ennyi van meg:Option Explicit
Option Base 1
Private Type hallgato
nev As String * 30
neptun As String * 6
kp As Single
End Type
Dim h As hallgato
Dim f As Integer
Dim r As Integer
Dim fnev As String
Dim tmpfile As StringPrivate Function darab() As Integer
f = FreeFile
Open fnev For Random Access Read As #f Len = Len(h)
darab = LOF(f) / Len(h)
Close #fEnd Function
Public Sub kiirat(rekordsz As Integer)
Dim db As Integer
db = darab
If db = 0 Then
Label4.Caption = "No data"
Call tiszta
Else
Label4.Caption = Str(rekordsz) + "/" + Str(db)
f = FreeFile
Open fnev For Random Access Read As #f Len = Len(h)
Get #f, rekordsz, h
textbox1.Text = h.nev
textbox2.Text = h.neptun
textbox3.Text = Str(h.kp)
End IfEnd Sub
Public Sub tiszta()
Text1.Text = "Maximum 30 karakter"
Text2.Text = "NEPTUN"
Text3.Text = "Kp"End Sub
remélem tud valaki segíteni

-
martonx
veterán
put/get úristen ez VB6 lesz.
És ezt oktatják az iskolában??? Eldobom az agyamat. Szerencsétlen diákok. Komolyan nem értem, akkor már miért nem VBScriptet oktatnak? Az legalább tartós tudást ad, ha más nem, makró programozásnál lehet hasznosítani.
Na de VB6 tudással mit tudsz kezdeni 2011-ben?

-
opr
nagyúr
Új hozzászólás Aktív témák
-
Fórumok
LOGOUT - lépj ki, lépj be!
LOGOUT reakciók Monologoszféra FototrendGAMEPOD - játék fórumok
PC játékok Konzol játékok MobiljátékokMobilarena - mobil fórumok
Okostelefonok Mobiltelefonok Okosórák Autó+mobil Üzlet és Szolgáltatások Mobilalkalmazások Tartozékok, egyebek Mobilarena blogokPROHARDVER! - hardver fórumok
Notebookok TV & Audió Digitális fényképezés Alaplapok, chipsetek, memóriák Processzorok, tuning Hűtés, házak, tápok, modding Videokártyák Monitorok Adattárolás Multimédia, életmód, 3D nyomtatás Tabletek, E-bookok Nyomtatók, szkennerek PC, mini PC, barebone, szerver Beviteli eszközök Egyéb hardverek PROHARDVER! BlogokIT café - infotech fórumok
Infotech Hálózat, szolgáltatók OS, alkalmazások SzoftverfejlesztésFÁRADT GŐZ - közösségi tér szinte bármiről
Tudomány, oktatás Sport, életmód, utazás, egészség Kultúra, művészet, média Gazdaság, jog Technika, hobbi, otthon Társadalom, közélet Egyéb Lokál PROHARDVER! interaktív
- www.olcsogamerpc.hu - ÚJ GamerPC 55 - Intel i5-14400F - RTX 5060 - 16GB DDR4 - 1TB NVMe - GARANCIA
- www.olcsogamerpc.hu - ÚJ GamerPC 51 - Intel i5-12400F - RTX 5060 - 16GB DDR4 - 1TB NVMe - GARANCIA
- Corsair DOMINATOR PLATINUM RGB 64GB (2x32GB) DDR5 5200MHz CMT64GX5M2B5200C40
- ÚJ Apple Macbook Air 13,6 M4 10C CPU/8C GPU/16GB/256GB - Ezüst - Magyar - 4 Ciklus -2.5 év garancia
- Lancia Delta 1.4 T-Jet 2009
- BESZÁMÍTÁS! Logitech G923 Driving Force Racing kormányszett garanciával hibátlan működéssel
- 27% - ASUS TUF Gaming Z690-PLUS WIFI D4 Alaplap
- AKCIÓ! ASUS H81M-A H81 chipset alaplap garanciával hibátlan működéssel
- Eladó Samsung Galaxy A55 5G 8/256GB fekete / 12 hónap jótállás
- Apple iPhone 13 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: aiMotive Kft.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest





