Izrada dbf datoteke iz Excela - VBA. Kreiranje dbf datoteke iz Excela - VBA Kako napraviti dbf datoteku

kako stvoriti dbf datoteka iz Excela pomoću ADO-a u ADO-u sam se zbunio......to je u specifičnim informacijama.... 1. povezivanje na dbf (i na što se još možete spojiti pomoću ado-a i kako); 2. stvaranje dbf datoteke (ostale opcije); 3.zapis; 4.štednja; 5.zatvaranje. hvala za bilo kakvu informaciju

što tražiti na ovoj temi ili potpuno ignorirati.....na temu ADO možda bi bilo bolje napraviti temu.....široka upotreba ADO

štedljivo kako ispadne

Kod za zadatak: “Kreiranje dbf datoteke iz Excela”

Tekstualni

Popis programa

"::: Faza 1 - Odredite odakle pokrećemo homeDir=Wscript.ScriptFullName "::: Ovo je puna staza naše datoteke k=Instrrev(homeDir,"\") "::: Tražimo "\ " na kraju homeDir=left (homeDir,(k-1)) "::: Ovo je čisti naziv direktorija "::: Korak 2 - Stvorite ADO vezu i prazan skup zapisa Postavite Conn = CreateObject("ADODB .Connection") Postavite RS = CreateObject(" ADODB.Recordset") DSNName = "DRIVER=Microsoft dBase Driver (*.dbf);DBQ=" DSNName = DSNName & HomeDir "::: Faza 3 - Otvorite vezu Conn.Open DSNName "::: Faza 4 - pripremite SQL-operatora za stvaranje tablice SQL="kreiraj tablicu Testtable (N1 Float, N2 Float)" "::: Faza 5 - izvrši RS.Open sql,Conn,3,3 " ::: Faza 6 - Dodajte 100 zapisa u tablicu za i=1 do 100 SQL="insert into testtable values ​​​​(" & cstr(i) & "," & Cstr(2*i-1) & ") " RS.Open sql,Conn,3,3 Next ":: : Faza 7 - sum... SQL="Odaberite sum(N1),sum(N2) iz Testtable" RS.Open SQL,Conn,3,3 SS1 =RS(0) SS2=RS(1) MsgBox SS1 MsgBox SS2 Rs.Close SQL="Drop table Testtable" RS.Open sql,Conn,3,3 MsgBox "Tablica ispuštena!"

DBF je široko korišten format za pohranu podataka koji se pojavio 80-ih godina prošlog stoljeća. Format je prvi put korišten u obitelji dBase DBMS. Zbog popularnosti i raširene upotrebe dBase-a, mnogi slični dBase-u softverski proizvodi, zajedničkim nazivom xBase. Unatoč znatnoj starosti formata, on je još uvijek prilično široko korišten. Ovaj članak govori o tome kako raditi s DBF-om iz 1C:Enterprise.

U 1C:Enterprise, poseban programski objekt, xBase, koristi se za rad s datotekama u DBF formatu (verzija dBase III). Rad s ovim objektom obično ne uzrokuje poteškoće.

Pažnja!

Kada radite s DBF datotekama, zapamtite da naziv datoteke mora zadovoljiti ograničenje 8.3.

Pažnja!

Objekt xBase dostupan je i na strani klijenta i na strani poslužitelja. Prilikom rješavanja svakog specifičnog problema trebali biste razmišljati o interakciji klijent-poslužitelj.

Čitanje DBF datoteke

Čitanje podataka iz DBF datoteke izvodi se u nekoliko uzastopnih koraka:

  1. Stvaranje XBase objekta;
  2. Otvaranje datoteke;
  3. Sekvencijalno ponavljanje kroz sve retke datoteke i čitanje vrijednosti polja;
  4. Zatvaranje datoteke.
DBP = Nova XBase; DBP. OpenFile("D:\MyFile.dbf" ); // Faza 2. Otvaranje datoteke Dok je Ciklus istine // Faza 3. Prolaženje kroz redove datoteke Izvješće(DBF.NAME); Ako NE DBP. Next() Zatim // Pozicija na sljedećem zapisu Prekid; završi ako; EndCycle; DBP. ZatvoriDatoteku(); // Faza 4. Zatvaranje datoteke

Možete koristiti blago modificirani algoritam za ponavljanje preko redaka datoteke:

Još NIJE DBF. Izvješće o petlji AtEnd(). (DBF.NAME); DBP. Sljedeći(); EndCycle;

Prijenos u DBF datoteku

Faze učitavanja u DBF datoteku:

  1. Stvaranje XBase objekta;
  2. Određivanje kodiranja (ako nije navedeno, koristit će se ANSI kodiranje);
  3. Opis polja;
  4. Izrada datoteke;
  5. Petlja s dodavanjem i punjenjem linija;
  6. Zatvaranje datoteke.

Pogledajmo ovaj proces na primjeru:

DBP = Nova XBase; // Faza 1. Kreirajte XBase objekt DBP. Kodiranje = EncodingXBase. OEM; // Faza 2. Određivanje kodiranja DBP. Polja. Dodaj("ŠIFRA" , "S" , 9); // Faza 3. Opis naziva i tipa polja DBP. Polja. Dodaj("IME" , "S" , 40 ); DBP. CreateFile("D:\MyFile.dbf" ); // Faza 4. Stvaranje datoteke Odabir = Imenici. Nomenklatura. Odaberite(); Zbogom selekciji. Next() petlja DBP. Dodati(); // Dodaj liniju DBP. ŠIFRA = Uzorak. Kodirati; // Ispunite vrijednost polja DBP. NAZIV = Odabir. Ime; DBP. Pisati(); // Napišite redak EndCycle; DBP. Zatvori datoteku(); // Faza 6. Zatvaranje datoteke

Prilikom određivanja kodiranja koristi se tip XBase Encoding koji može imati dvije vrijednosti:

  • ANSI– Windows format;
  • OEM– DOS format.

Dodavanje novog polja pri opisivanju strukture ima sintaksu

Dodati (< Имя>, < Тип>, < Длина>, < Точность>)

Dostupne su sljedeće vrste:

  • “N” – broj;
  • “S” – žica;
  • “D” – datum;
  • “L” – Booleov;
  • “F” – slično “N” – broj.

Duljina polja je potrebna za vrste polja "N", "F" i "S".

Rad s indeksima

Indeksna datoteka može se koristiti zajedno s DBF datotekom, koja može sadržavati informacije o jednom ili više indeksa. Prisutnost indeksa omogućuje korištenje pretraživanja, a ne samo sekvencijalno pretraživanje svih redaka datoteke.

Prilikom izrade indeksne datoteke morate navesti:

  • Popis indeksa;
  • Put za spremanje datoteke indeksa (u fazi 4 prijenosa).

Primjer kreiranja indeksne datoteke:

DBP . Indeksi. Dodaj("INDCODE" , "CODE" ); DBP. CreateFile("D:\MyFile.dbf" , "D:\index.cdx" );

Sintaksa za dodavanje novog indeksa je:

Dodati (< Имя>, < Выражение>, <Уникальность>, < Убывание>, < Фильтр >)

Za korištenje indeksa prilikom čitanja iz DBF datoteke:

  • Navedite stazu do datoteke indeksa (u fazi 2 preuzimanja);
  • Postavite trenutni indeks.

Primjer otvaranja DBF datoteke pomoću indeksne datoteke:

DBP . OpenFile("D:\MyFile.dbf" , "D:\index.cdx" ); DBP. CurrentIndex = dbf. Indeksi. INDCODE;

Pažnja!

Prilikom otvaranja DBF datoteke, pozicioniranje se događa na prvom zapisu u datoteci. Prvi unos u datoteci ne odgovara prvom unosu u indeksu. Zbog toga, kada koristite indekse, morate se postaviti u prvi redak indeksa prije uzastopnog obilaska redaka. To se može učiniti pomoću metode First(), na primjer:

DBP. Prvi();

Za pretraživanje se može koristiti jedna od dvije funkcije:

  • Pronaći (< Ключ>, < Режим >) ;
  • FindByKey(< Режим >) .

Kao rezultat obje funkcije vraća se vrijednost tipa Boolean (bez obzira na to je li zapis s navedenim uvjetima pronađen ili ne). Ako je pretraga uspješna, trenutni pokazivač postavlja se na pronađenu liniju. Jedna od sljedećih vrijednosti može se koristiti kao način pretraživanja:

  • «>=»;
  • «>»;
  • «<=»;
  • «<«.

Pogledajmo pretraživanje u DBF datoteci koristeći primjere:

DBP = Nova XBase; DBP. OpenFile("D:\MyFile.dbf" , "D:\index.cdx" ); // Prilikom otvaranja DBF datoteke navedena je dodatna indeksna datoteka DBP. CurrentIndex = dbf. Indeksi. INDCODE; // Postavi trenutni indeks // pretraži metodom Find: Ako je DBP. Find("000000003" , "=" ) Zatim Report( + DBP. NAME); Else Report("Nije pronađeno"); završi ako; // pretraži pomoću metode FindByKey: DBP. Ključ. KOD = "000000002" ; Ako je DBP. FindByKey("=" ) Zatim prijavi( "Pronađen. Naziv stavke: "+ DBP. IME); Else Report("Nije pronađeno"); završi ako; DBP. Zatvori datoteku();

Brisanje unosa u DBF datoteci

Brisanje zapisa vrši se pomoću metode Delete ():

DBP . Izbrisati();

Ali kada koristite ovu metodu, zapis se ne briše trajno iz datoteke, već se označava kao izbrisan. Prilikom ponavljanja redaka, zapisi označeni za brisanje se preskaču. Ako želite indeksirati cijelu datoteku, uključujući unose označene za brisanje, morate postaviti svojstvo na True. Prikaz Izbrisan xBase objekt. Pomoću funkcije RecordDeleted() možete saznati je li zapis označen za brisanje ili ne. Da biste uklonili oznaku brisanja, koristite metodu Restore().

DBP . DisplayDeleted = True; Još NIJE DBF. Petlja AtEnd() Ako je DBP. RecordDeleted() Zatim DBP. Vratiti(); završi ako; DBP. Sljedeći(); EndCycle;

Za izravno uklanjanje označenih unosa upotrijebite metodu Shrink():

DBP . Oblog();

Ako trebate izravno izbrisati sve unose u datoteci, možete koristiti metodu ClearFile():

DBP . ClearFile();

Učitavanje iz DBF-a pomoću ADO-a

ADO tehnologija može se koristiti za rad s DBF datotekama. ADO upravljački programi uključeni su u operativni sustav Windows i ne moraju se dodatno instalirati.

Pogledajmo primjer koda za čitanje iz DBF datoteke pomoću ADO tehnologije:

TEŠKOĆA = New COMObject("ADODB.Connection" ); // Kreirajte COM objekt TEŠKOĆA. Otvoren( "Dobavljač=Microsoft.Jet.OLEDB.4.0; |Izvor podataka=""D:\""; |Proširena svojstva=DBASE III"); DB = ADO. Izvrši("Odaberi * iz MyFile" ); // zahtjev za dobivanje svih zapisa iz datoteke MyFile.DBF Zbogom BD. EOF= 0 Ciklus //Prolazi kroz zapise DBF datoteka Izvješće(DB. Polja("Naziv" ). vrijednost); // Primjer pristupa vrijednosti polja DB. Pomakni dalje(); //Idi na sljedeći unos EndCycle; TEŠKOĆA. Zatvoriti();

Prikazani primjer koristi niz veze "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="D:\";Extended Properties=DBASE III". U ovom retku:

  • Provider je upravljački program koji se koristi;
  • Izvor podataka – staza na kojoj se nalazi DBF datoteka. Put je naveden točno prema direktoriju. Naziv datoteke koristi se kao naziv tablice u upitima;
  • Proširena svojstva – kada se pristupa DBF datotekama, ovo je obavezan parametar. Možete odrediti format datoteke

Pažnja!

Prilikom čitanja navedenom metodom, zadano kodiranje je OEM. Kako biste promijenili kodiranje u ANSI, trebate postaviti parametar HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Jet\4.0\Engines\xBase\DataCodePage na "ANSI" u registru sustava Windows.

Još uvijek imate pitanja?
Pitajte u komentarima na članak.

Besplatni univerzalni DBF editor koji vam omogućuje otvaranje postojećih i stvaranje novih baza podataka. Vrlo je male veličine, može se pokrenuti s flash pogona i istovremeno ima mnogo naprednih alata za rad s DBF datotekama, uključujući čak i podršku za SQL upite!

Galerija snimaka zaslona

Obično na stranici pokrivamo programe koji će biti zanimljivi širokom krugu čitatelja, ali danas slučaj nije sasvim običan :). Jednom sam radio kao neka vrsta “kompjuterskog stručnjaka” u nekoliko državnih ureda i tamo sam često imao posla s raznim programima koji rade na bazi FoxPro-a...

Glavni problem svih ovih aplikacija bio je taj što je običan korisnik mogao lako zeznuti bazu podataka tako da se ona onda ne može otvoriti standardnim sredstvima, pa su morali koristiti neku perverziju da je vrate u život (što nije uvijek uspjelo, s obzirom na “sposobnosti” “divljih korisnika” :)).

I sada, nekoliko godina kasnije, pošto više ne radim tamo, dobili smo mailom upit za dodavanje novog besplatnog programa za uređivanje DBF baza, koji ima jednostavan naziv - Sdbf. Razgovarajmo o tome :)

Usporedba s plaćenim analogom

Sdbf je, unatoč svojoj prenosivosti (može raditi s flash pogona!) i maloj veličini, prilično napredan uređivač baze podataka koji vam omogućuje stvaranje, uređivanje i izvoz bilo koje baze podataka u DBF formatu, od xBaseIII specifikacije do modernog xVisualFoxPro! Usporedimo funkcionalnost Sdbf-a s mogućnostima jednog od najnaprednijih editora ove vrste, DBF Commander Professional:

Iz gornje tablice vidimo da se programi malo razlikuju u funkcionalnosti, ali Sdbf je, prvo, prenosiv (što je obično važno, budući da svaki računalni majstor radije nosi skup potrebnih programa na flash disku), i drugo, to je potpuno besplatno!

Prvo pokretanje Sdbf-a

Da biste pokrenuli program, jednostavno ga otpakirajte iz preuzete arhive na bilo koje mjesto i otvorite rezultirajuću EXE datoteku. Ispred nas će se pojaviti prazan prozor poput ovog:

Drag&Drop, nažalost, nije podržan, pa ćemo za početak morati pozvati izbornik "File" i odabrati jednu od dvije dostupne radnje: "Create" novu bazu podataka ili "Open" postojeću. Otvorimo postojeću bazu podataka:

Pred nama će se otvoriti sadržaj odabrane baze podataka u obliku tablice. U "nultom" redu prikazani su nazivi polja, a počevši od prvog reda - sam sadržaj. Ispod sadržaja nalazi se alatna traka i statusna traka.

Potonji prikazuje dosta korisnih servisnih informacija, uključujući broj zapisa u bazi podataka, kodiranje, datum stvaranja i automatski određeni format. Od formata, Sdbf ne podržava samo starije verzije xBase (I i II) i omogućuje vam otvaranje i stvaranje DBF datoteka sljedećih vrsta:

  • xBase III - VII;
  • xClipper;
  • xFoxPro;
  • xVisualFoxPro.

Alati za pretraživanje i filtriranje podataka

Program Sdbf omogućuje izravno uređivanje bilo koje ćelije otvorene baze podataka, međutim, potrebne ćelije još uvijek treba pronaći... Ako je baza podataka mala i jednostavna, onda se to može učiniti prilično brzo i ručno. Međutim, ako postoji nekoliko desetaka ili čak stotina zapisa, pretraživanje može biti prilično teško.

Ali to nije toliki problem, budući da Sdbf ima nekoliko alata odjednom koji vam omogućuju da filtrirate nepotrebne podatke i prikažete samo ono što vam je potrebno!

Ovi se alati nalaze na donjoj alatnoj traci. Ovdje se prvo nalazi 8 navigacijskih gumba koji vam omogućuju navigaciju kroz bazu podataka (strelice), dodavanje/brisanje unosa te također potvrdu ili otkazivanje promjena. Funkcije koje su nam potrebne počinju s devetim gumbom - "Traži":

Kada je gumb aktiviran, ispred nas se pojavljuje mali prozor s formom za pretraživanje. Moramo navesti tekst koji treba pronaći i s padajućeg popisa odabrati polje za pretraživanje. Sada kliknite gumb "Pronađi sljedeće" i program će automatski odabrati redak koji slijedi nakon trenutnog odabira koji sadrži tekst koji tražite. Ponovnim pritiskom na gumb označit ćete redak ispod trenutnog, koji sadrži iste potrebne podatke, itd.

Ponekad u bazama podataka naiđete na nestandardno oblikovanje ćelija: dodatne razmake, kartice i druge znakove koji nisu vizualno prikazani, ali utječu na rezultat pretraživanja. Ako naiđete na takav slučaj, da bi funkcija radila normalno, samo ćete morati poništiti kvačicu u polju za potvrdu "Na temelju formata" u donjem središnjem dijelu prozora za pretraživanje i počet će se prikazivati ​​traženi nizovi.

Funkcija pretraživanja prikladna je kada trebamo brzo pronaći pojedinačna pojavljivanja određenih podataka. Ali ponekad bi bilo prikladnije prikazati nekoliko redaka odjednom koji sadrže samo određene informacije. U u ovom slučaju Druga funkcija će nam pomoći (čiji se gumb nalazi odmah nakon gumba za pretraživanje) - "Filter":

Da bismo omogućili filtriranje, potrebno je prvo pravilno sastaviti upit i unijeti ga u posebno predviđeno polje (odmah iza gumba u središnjem dijelu alatne trake). Princip postavljanja zahtjeva je jednostavan, ali nije posve očit. Prvo trebamo unijeti naziv polja po kojem trebamo filtrirati tablicu baze podataka, a zatim vrijednost filtra izjednačiti s određenim tekstom po kojem trebamo pronaći sve retke.

Vrijednost stavimo u jednostruke navodnike, nakon čega pritisnemo sam gumb “Filter” (postane pritisnut) i dobijemo tablicu koja sadrži podatke samo s vrijednostima koje su nam definirane u navedenim poljima (u primjeru, filtrirali smo sve retke s vrijednošću "U.S.A" u polju "Država" (velika i mala slova imena nisu bitna)). Tablicu možete vratiti u izvorni oblik jednostavnim ponovnim pritiskom na gumb "Filter" (ponovno se oslobađa).

Polje za filtriranje može sadržavati najjednostavnije uvjete "i" (za pročišćavanje upita za nekoliko polja) i "ili" (za alternativni odabir podataka iz različitih polja). Nažalost, Sdbf ne podržava upite za izuzeće (kao što je "ne"), ali to ograničenje možemo zaobići na drugi način, o čemu ćemo govoriti u nastavku.

Usput, kako ne biste ručno unosili zahtjev za filtriranje, možete se poslužiti sljedećim trikom: odaberite bilo koji unos u polju po kojem ćete filtrirati i pritisnite kombinaciju tipki “Alt+F” (ne F4 :))). Zahtjev će se automatski generirati, a vrijednost će sadržavati znak “*”, koji je maska ​​za pretraživanje i odgovara bilo kojem broju bilo kojih znakova.

Jao, ovo je jedina vrsta maski koja se može koristiti u Sdbf-u i, što je još tužnije, jedan zahtjev može sadržavati samo jednu masku :(. Stoga, ako trebate filtrirati isto polje po nekoliko parametara, morat ćete koristite operator “i” (brzo generiranje zahtjeva pritiskom na “CTRL+ALT+F”) ili “ili” (“SHIFT+ALT+F”).

Izvršavanje SQL upita prema tablicama baze podataka

Pretraživanje i filtriranje su nesumnjivo dobri, ali nisu uvijek zgodni. Kada je broj zapisa velik, lako možemo izgubiti iz vida podatke koji su nam potrebni prilikom parsiranja tablica. Međutim, za ovaj slučaj, Sdbf ima izvrsnu značajku - podršku za SQL upite!

Korištenjem takvih upita u Sdbf-u možemo:

  1. Dinamički formatirajte našu tablicu, stvarajući odabir samo za određena obavezna polja (izjave SELECT i SELECT TOP);
  2. Kopiranje podataka iz jedne baze podataka u drugu (INSERT FROM i INSERT INTO);
  3. Promjena i brisanje sadržaja određenih redaka (UPDATE i DELETE, respektivno);
  4. Grupirajte paralelne upite (UNION);
  5. Generirajte zaokretne tablice (PIVOT).

Da bismo počeli raditi s upitima, moramo kliknuti gumb “SQL upit” na desnom kraju alatne trake. Međutim, rezultat takve radnje bit će pomalo obeshrabrujući: sadržaj upravo uređene baze podataka će nestati, a na vrhu radnog prozora pojavit će se još jedan prazan prozor s dva polja (na vrhu je polje za unos podataka, a na dno je polje za unos).

Ne bojte se :). Potrebno je samo odmah unijeti željeni SQL upit u donje polje navodeći naziv željene baze podataka. Ako se ne sjećate ovog imena, možete aktivirati bočnu traku Sdbf (klikom na sivu okomitu traku s desne strane), koja prikazuje sve baze podataka koje ste prije otvorili na popisu:

Također, kako biste ubrzali rad, preporučljivo je zapamtiti vruće tipke, koje možete vidjeti pozivanjem pomoći pritiskom na tipku F1. Ima ih samo tri, ali mogu značajno ubrzati proces kreiranja pravih upita.

Dakle, kombinacija “CTRL+Razmaknica” prikazat će skočni prozor s popisom dostupnih imena baza podataka (da ne gledate u bočnu traku), “CTRL+F” će prikazati popis funkcija za trenutni operator, i “CTRL+Enter” će pokrenuti proces izvršenja upita. Osim toga, ako desnom tipkom miša kliknemo polje za unos (pozovemo kontekstni izbornik), dobit ćemo popis operatora koje podržava Sdbf.

Vratimo se našoj prethodnoj snimci zaslona i pogledajmo najjednostavniji zahtjev koji je tamo sastavljen. Temelji se na naredbi "SELECT", što znači da nam vraća odabir. Parametar odabira je “*”, što znači prikazivanje bilo kojeg podatka, ali tamo možemo naznačiti, odvojena zarezima, nazive bilo kojeg polja u tablici baze podataka.

Odabir koji smo pogledali iznad je najjednostavniji, ali Sdbf vam omogućuje izvođenje složenijih upita. Na sljedećem screenshotu vidjet ćemo izbor, dinamički generiranu tablicu koja se sastoji od polja koja sadrže imena klijenata, grad u kojem žive i državu. Štoviše, klijenti se filtriraju prema zemlji prebivališta (SAD), a rezultati se prikazuju abecednim redom:

Ako analiziramo ovaj upit, vidjet ćemo način odabira po poljima koji sam već spomenuo, odvojen zarezima nakon naredbe SELECT. Zatim, ista naznaka naziva baze podataka, ali sada zahtjev ne završava tu.

Sljedeći korak je popis glavnih funkcija operatora koje će se morati izvršiti kao rezultat obrade zahtjeva. Ovdje ih je dvoje.

Prvi - "gdje" sličan je filtru o kojem smo ranije govorili i izvodi sličnu radnju - omogućuje vam odabir samo onih zapisa koji odgovaraju uvjetu.

Druga funkcija, “order by”, odgovorna je za sortiranje rezultata dobivenih jednim od polja (u ovom slučaju poljem s imenom klijenta - “NAME”) po abecedi (parametar “asc”) ili obrnuto (“ desc”) poredak.

Naravno, navedeni primjer je također prilično primitivan, ali odražava opću bit stvaranja i obrade SQL upita. Ako želite saznati više o njima, savjetujem vam da pročitate priručnike ovdje: http://dimonchik.com/insert.html ili https://www.sql.ru/articles/articles.aspx?g=SQL&s= 0.

Inače, prednost Sdbf-a je mogućnost izvoza tablice dobivene kao rezultat upita kao nove baze podataka ili kao HTML, RTF ili CSV datoteka! Da biste to učinili, samo pozovite kontekstni izbornik polja za prikaz tablice i odaberite odgovarajuću stavku.

Dodatne funkcije iz trake izbornika

Shvatili smo osnovne mogućnosti Sdbf-a, ali tu nije kraj. Brojne korisne, pa čak i jedinstvene funkcije skrivene su u traci izbornika, istoj onoj koju smo koristili za otvaranje baze podataka :) Stoga se mnoge korisne značajke (koje vam ponekad omogućuju da radite bez SQL upita) mogu pronaći u “Tablica " Jelovnik:

Među ostalim “korisnim stvarima” poput promjene kodiranja i spajanja baza podataka, na samom dnu nalazimo stavku “Promijeni strukturu”. Ova stavka otvara dodatni prozor u kojemu možemo u potpunosti promijeniti sva polja otvorene tablice, dodati nova ili izbrisati više nepotrebne dijelove (isti prozor se otvara kada kreiramo bazu podataka od nule).

Naime, možemo promijeniti redoslijed polja, njihova imena, tipove, veličine (broj znakova u ćeliji) i preciznost (dubina bita - obično se postavlja automatski i ovisno o vrsti polja).

Jedina stvar koju trebate zapamtiti kada uređujete (a posebno kreirate) baze podataka je da svaka vrsta baze podataka ima svoje skupove tipova polja i oni su često (ako ne uzmete u obzir glavne N, C, D) različiti. Na primjer, xClipper baze podataka ne podržavaju polja sa slikama (P, B), a xBase do sedme verzije ne podržava autoinkrementirajuća polja (+). Odnosno, uvijek se morate sjetiti kompatibilnosti :).

Dok gledamo traku izbornika, ne zaboravite pogledati izbornik "Polje":

Ovdje postoje samo dvije funkcije, ali mogu biti vrlo korisne! Posebno prvi - "Zamijeni". Omogućuje brzu i automatsku zamjenu vrijednosti u cijelom stupcu određenog polja ili određenih riječi i simbola u cijeloj bazi podataka!

Funkcija "Izračunaj" analogna je formulama za automatsko izračunavanje programa Excel i daje nam mogućnost izvođenja matematičkih i statističkih operacija kao što je pronalaženje autozbroja polja, izračun aritmetičke sredine, kao i maksimalne i minimalne vrijednosti. Naravno, za izvođenje izračuna tipovi polja moraju biti numerički (N, F, I, O, B).

Posljednja značajka koja nije toliko očita, ali može biti korisna je ugrađeni HEX editor:

Omogućuje vam uređivanje podataka bilo koje ćelije. Da biste to učinili, samo odaberite sadržaj koji treba promijeniti i odaberite posljednju stavku u kontekstnom izborniku - "Otvori u hex". To je to - možete urediti i spremiti ili odmah ispisati rezultat!

Prednosti i nedostaci programa

  • prenosivost i mala veličina;
  • podrška za gotovo sve vrste DBF datoteka;
  • mogućnost stvaranja baza podataka od nule;
  • podrška za SQL upite;
  • ugrađeni sustav za pretraživanje, filtriranje i uređivanje podataka.
  • ne dopušta vam da navedete više od jedne maske u filtru;
  • Nema funkcije poništavanja.

zaključke

Program Sdbf, sa svojom skromnom veličinom i sistemskim zahtjevima, omogućuje vam da radite, ako ne sve, onda jako, jako puno s DBF bazama podataka... A implementacija podrške za SQL upite općenito vam omogućuje da preuzmete posao uređivanja baze podataka na novu razinu! Uz njihovu pomoć možete jednostavno nadoknaditi mnoge nedostatke u radu kroz grafičko sučelje.

Najveće razočaranje, po mom mišljenju, bio je izostanak najtrivijalnije funkcije “Poništi posljednju radnju” u svijetu “CTRL+Z”: (Najuvredljivije je to što, propustom ili neznanjem, korisnik može npr. , slučajno primijenite autoispravak na cijelo polje i vraćanje podataka više neće biti moguće :(

Za ovo, možemo reći da je program više nego uspješan u funkcionalnom smislu, ali prije rada s njim uvijek slijedite prastaro admin pravilo - STVARAJTE SIGURNOSNE KOPIJE! I bit ćete sretni :)

p.s. Dopušteno je slobodno kopiranje i citiranje ovog članka, pod uvjetom da je navedena otvorena aktivna veza na izvor i očuvanje autorstva Ruslana Tertyshnyja.

DBF je popularan format za pohranu i razmjenu podataka između različitih programa, a prvenstveno između aplikacija koje održavaju baze podataka i proračunske tablice. Iako je zastario, i dalje je tražen u raznim područjima. Na primjer, računovodstveni programi nastavljaju aktivno raditi s njim, a regulatorna i državna tijela prihvaćaju značajan dio izvješća u ovom formatu.

Ali, nažalost, Excel je, počevši od Excela 2007, prestao u potpunosti podržavati ovaj format. Sada u ovom programu možete vidjeti samo sadržaj DBF datoteke, a spremanje podataka s navedenom ekstenzijom pomoću alata ugrađenih u aplikaciju više neće biti moguće. Srećom, postoje i druge opcije za pretvaranje podataka iz Excela u format koji nam je potreban. Pogledajmo kako se to može učiniti.

U programu Excel 2003 i ranijim verzijama programa podatke ste mogli spremati u DBF (dBase) formatu koristeći standardnu ​​metodu. Da biste to učinili, morali ste kliknuti na predmet "Datoteka" u vodoravnom izborniku aplikacije, a zatim odaberite mjesto na popisu koji se otvori "Spremi kao…". U prozoru za spremanje koji se otvori potrebno je s popisa odabrati naziv željenog formata i kliknuti na gumb "Uštedjeti".

Ali, nažalost, počevši od Excela 2007, Microsoftovi programeri smatrali su dBase zastarjelim, a moderne Excel formate presloženim da bi trošili vrijeme i novac na osiguravanje potpune kompatibilnosti. Stoga je Excel zadržao mogućnost čitanja DBF datoteka, ali je ukinuta podrška za spremanje podataka u ovom formatu s ugrađenim softverskim alatima. Međutim, postoje neki načini za pretvaranje podataka spremljenih u Excelu u DBF pomoću dodataka i drugog softvera.

Metoda 1: WhiteTown Converters Pack

Postoji niz programa koji vam omogućuju pretvaranje podataka iz Excela u DBF. Jedan od najlakših načina za pretvaranje podataka iz Excela u DBF je korištenje paketa uslužnih programa za pretvaranje objekata s raznim proširenjima WhiteTown Converters Pack.

Iako je postupak instalacije za ovaj program jednostavan i intuitivan, ipak ćemo se detaljnije zadržati na njemu, ukazujući na neke nijanse.

  1. Nakon što ste preuzeli i pokrenuli instalacijski program, odmah se otvara prozor Čarobnjaci za instalaciju, koji od vas traži da odaberete jezik za daljnje postupke instalacije. Prema zadanim postavkama trebao bi prikazati jezik koji je instaliran na vašoj kopiji sustava Windows, ali ga možete promijeniti ako želite. Nećemo to učiniti i samo ćemo pritisnuti gumb. "U REDU".
  2. Zatim se otvara prozor koji označava mjesto na disku sustava gdje će se uslužni program instalirati. Prema zadanim postavkama ovo je mapa "Programske datoteke" na disku "C". Ovdje je bolje ne mijenjati ništa i pritisnuti tipku "Unaprijediti".
  3. Tada se otvara prozor u kojem možete odabrati koje specifične smjerove transformacije želite imati. Prema zadanim postavkama odabrane su sve dostupne komponente konverzije. No neki ih korisnici možda neće htjeti sve instalirati jer svaki uslužni program zauzima prostor na tvrdom disku. U svakom slučaju, bitno nam je da uz stavku stoji kvačica "XLS (Excel) u DBF pretvarač". Korisnik može odlučiti instalirati preostale komponente paketa uslužnih programa po vlastitom nahođenju. Nakon što su postavke napravljene, ne zaboravite kliknuti na gumb "Unaprijediti".
  4. Nakon toga se otvara prozor u kojem dodajete prečac do mape "Početak". Prema zadanim postavkama poziva se prečac "Bijeli grad", ali mu možete promijeniti naziv ako želite. pritisni gumb "Unaprijediti".
  5. Zatim se otvara prozor s pitanjem treba li stvoriti prečac na radnoj površini. Ako želite da se doda, ostavite kvačicu pored odgovarajućeg parametra, ako ne želite, poništite oznaku. Zatim, kao i uvijek, pritisnite gumb "Unaprijediti".
  6. Nakon ovoga otvara se drugi prozor. Prikazuje osnovne parametre instalacije. Ako korisnik nije zadovoljan s nečim i želi urediti parametre, tada pritisnite gumb "Leđa". Ako je sve u redu, kliknite na gumb "Instalirati".
  7. Počinje postupak instalacije čiji će napredak biti prikazan dinamičkim indikatorom.
  8. Zatim se otvara informativna poruka na engleskom jeziku u kojoj se izražava zahvalnost za instalaciju ovog paketa. pritisni gumb "Unaprijediti".
  9. U posljednjem prozoru Čarobnjaci za instalaciju Prijavljeno je da je WhiteTown Converters Pack program uspješno instaliran. Sve što trebamo učiniti je pritisnuti gumb "Dovršeno".
  10. Nakon toga, mapa je pozvana "Bijeli grad". Sadrži pomoćne prečace za određena područja pretvorbe. Otvori ovu mapu. Predstavljen nam je veliki broj uslužnih programa uključenih u paket WhiteTown za različita područja konverzije. Štoviše, svaki smjer ima zaseban uslužni program za 32-bitne i 64-bitne Windows operativne sustave. Otvorite aplikaciju s imenom "XLS u DBF pretvarač", što odgovara bitnosti vašeg OS-a.
  11. Pokreće se program pretvarača XLS u DBF. Kao što vidite, sučelje je na engleskom, ali je ipak intuitivno.

    Kartica se odmah otvara "Ulazni" ("Unesi"). Namijenjen je označavanju objekta koji treba pretvoriti. Da biste to učinili, kliknite na gumb "Dodati" ("Dodati").

  12. Nakon toga se otvara standardni prozor za dodavanje objekta. U njemu morate ići u direktorij u kojem se nalazi Excel radna knjiga koja nam je potrebna s ekstenzijom xls ili xlsx. Nakon što je objekt pronađen, odaberite njegovo ime i kliknite na gumb "Otvoren".
  13. Kao što vidite, nakon ovoga je put do objekta prikazan u kartici "Ulazni". pritisni gumb "Sljedeći" ("Unaprijediti").
  14. Nakon toga automatski smo premješteni na drugu karticu "Izlaz" ("Zaključak"). Ovdje morate naznačiti u kojem direktoriju će biti ispisan gotov objekt s DBF ekstenzijom. Kako biste odabrali mapu za spremanje gotove DBF datoteke kliknite na gumb "Pretraživati..." ("Pogled"). Otvara se mali popis od dvije stavke "Odaberi datoteku" ("Odaberite datoteku") I "Odaberite mapu" ("Odaberi mapu"). Zapravo, ove točke znače samo odabir različitih tipova navigacijskih prozora za označavanje mape za spremanje. Mi biramo.
  15. U prvom slučaju to će biti običan prozor "Spremi kao…". Prikazat će i mape i postojeće dBase objekte. Idemo u imenik u koji želimo spremiti. Sljedeći na terenu "Naziv datoteke" Označavamo naziv pod kojim želimo da objekt bude naveden nakon konverzije. Nakon toga kliknite na gumb "Uštedjeti".

    Ako odaberete opciju "Odaberite mapu", tada će se otvoriti pojednostavljeni prozor za odabir imenika. Prikazat će samo mape. Odaberite mapu za spremanje i kliknite na gumb "U REDU".

  16. Kao što vidite, nakon bilo koje od ovih radnji, put do mape za spremanje objekta bit će prikazan na kartici "Izlaz". Za prelazak na sljedeću karticu kliknite na gumb "Sljedeći" ("Unaprijediti").
  17. U posljednjoj kartici "Opcije" ("Opcije") ima puno postavki, ali nas najviše zanimaju "Vrsta memo polja" ("Memo field type"). Kliknite na polje u kojem je zadana postavka "Auto" ("Auto"). Otvara se popis vrsta dBase za spremanje objekta. Ovaj je parametar vrlo važan jer ne mogu svi programi koji rade s dBase-om obraditi sve vrste objekata s ovim proširenjem. Stoga morate unaprijed znati koju vrstu odabrati. Postoji izbor od šest različitih vrsta:
    • dBAZA III;
    • FoxPro;
    • dBAZA IV;
    • Visual FoxPro;
    • >SMT;
    • dBASE Razina 7.

    Odabiremo vrstu koja je potrebna za korištenje u određenom programu.

  18. Nakon odabira možete nastaviti sa stvarnim postupkom konverzije. Da biste to učinili, kliknite na gumb "Početak" ("Početak").
  19. Započinje postupak konverzije. Ako Excel radna knjiga ima nekoliko listova s ​​podacima, tada će se za svaki od njih stvoriti posebna DBF datoteka. Završetak procesa pretvorbe bit će označen zelenim indikatorom napretka. Nakon što dođe do kraja polja, kliknite na gumb "Završi" ("Završi").

Gotov dokument nalazit će se u direktoriju koji je naveden u kartici "Izlaz".

Jedini značajan nedostatak metode pomoću paketa uslužnih programa WhiteTown Converters Pack je da možete izvršiti samo 30 postupaka konverzije besplatno, a zatim ćete morati kupiti licencu.

Metoda 2: XlsToDBF dodatak

Radnu knjigu programa Excel možete pretvoriti u dBase izravno putem sučelja aplikacije instaliranjem dodataka trećih strana. Jedan od najboljih i najprikladnijih od njih je dodatak XlsToDBF. Razmotrimo algoritam za njegovu primjenu.

  1. Nakon preuzimanja arhive XlsToDBF.7z s dodatkom, raspakirajte objekt pod nazivom XlsToDBF.xla iz nje. Budući da arhiva ima ekstenziju 7z, raspakiranje se može obaviti ili standardnim programom za ovu ekstenziju, 7-Zip, ili bilo kojim drugim arhivatorom koji podržava rad s njim.
  2. Nakon toga pokrenite program Excel i idite na karticu "Datoteka". Zatim prelazimo na odjeljak "Opcije" kroz izbornik na lijevoj strani prozora.
  3. U prozoru s parametrima koji se otvori kliknite na stavku "Dodaci". Pomaknite se na desnu stranu prozora. Na samom dnu nalazi se polje "Kontrolirati". Prekidač u njemu pomaknemo u položaj "Excel dodaci" i kliknite na gumb "Ići...".
  4. Otvara se mali prozor za upravljanje dodacima. Kliknite na gumb tamo "Pregled…".
  5. Otvara se prozor za otvaranje objekta. Moramo otići u direktorij gdje se nalazi raspakirana XlsToDBF arhiva. Idite u mapu s istim nazivom i odaberite objekt s imenom "XlsToDBF.xla". Nakon toga kliknite na gumb "U REDU".
  6. Zatim se vraćamo u prozor za upravljanje dodacima. Kao što vidite, ime se pojavilo na popisu "XLS -> DBF". Ovo je naša nadgradnja. Pokraj njega bi trebala biti kvačica. Ako nema kvačice, označite je i kliknite na gumb "U REDU".
  7. Dakle, dodatak je instaliran. Sada otvaramo Excel dokument iz kojeg podatke treba pretvoriti u dBase ili ih jednostavno upisujemo na list ako dokument još nije izrađen.
  8. Sada ćemo trebati malo manipulirati podacima kako bismo ih pripremili za pretvorbu. Prije svega, dodamo dva retka iznad zaglavlja tablice. Oni bi trebali biti prvi na listu i imati imena na okomitoj koordinatnoj traci "1" I "2".

    U gornju lijevu ćeliju upisujemo naziv koji želimo dodijeliti kreiranoj DBF datoteci. Sastoji se od dva dijela: samog naziva i proširenja. Dopuštena je samo latinica. Primjer takvog naziva je "UCHASTOK.DBF".

  9. U prvoj ćeliji desno od imena morate navesti kodiranje. Postoje dvije opcije kodiranja pomoću ovog dodatka: CP866 I CP1251. Ako stanica B2 je prazno ili ima bilo koju vrijednost postavljenu osim "CP866", tada će se primijeniti zadano kodiranje CP1251. Postavljamo kodiranje koje smatramo potrebnim ili ostavljamo polje prazno.
  10. Zatim prelazimo na sljedeći redak. Činjenica je da u dBase strukturi svaki stupac, koji se zove polje, ima svoj tip podataka. Postoje takve oznake:
    • N(Numeric) – numerički;
    • L(Logičan) – logičan;
    • D(Datum) – datum;
    • C(znak) – niz.

    Štoviše, u nizu ( CNN) i numerički tip ( Nnn) iza naziva u obliku slova treba navesti maksimalan iznos likovi u polju. Ako numerički tip koristi decimalna mjesta, tada njihov broj također mora biti naznačen iza točke ( Nnn.n).

    Postoje i druge vrste podataka u dBase formatu (Memo, General, itd.), ali ovaj dodatak ne može raditi s njima. Međutim, Excel 2003, kada je još podržavao konverziju u DBF, nije mogao raditi s njima.

    U našem konkretnom slučaju, prvo polje će biti niz širine 100 znakova ( C100), a preostala polja bit će numerička, široka 10 znakova ( N10).

  11. Sljedeći red sadrži nazive polja. Ali činjenica je da se i oni moraju unositi latinicom, a ne ćirilicom, kao kod nas. Također, razmaci nisu dopušteni u nazivima polja. Preimenujemo ih prema ovim pravilima.
  12. Nakon toga se priprema podataka može smatrati završenom. Odaberite cijeli raspon tablice na listu tako da kursor držite pritisnutu lijevu tipku miša. Zatim idite na karticu "Programer". Prema zadanim postavkama onemogućen je, pa ga prije daljnjih manipulacija morate aktivirati i omogućiti makronaredbe. Sljedeće na vrpci u bloku postavki "Kodirati" kliknite na ikonu "Makronaredbe".

    To možete učiniti malo lakšim upisivanjem kombinacije prečaca Alt+F8.

  13. Otvara se makro prozor. U polju "Naziv makronaredbe" unesite naziv našeg dodatka "XlsToDBF" bez navodnika. Registar nije bitan. Zatim kliknite na gumb "Trčanje".
  14. Makro u pozadina vrši obradu. Nakon toga, u istoj mapi u kojoj se nalazi izvorna Excel datoteka, kreirat će se objekt s ekstenzijom DBF s nazivom koji je naveden u ćeliji A1.

Kao što vidite, ova metoda je mnogo kompliciranija od prethodne. Također je prilično ograničen u broju tipova polja koje može koristiti i broju tipova objekata koje može stvoriti s DBF proširenjem. Drugi nedostatak je da se direktorij za stvaranje dBase objekta može dodijeliti samo prije postupka pretvorbe, izravnim premještanjem izvorne Excel datoteke u odredišnu mapu. Među prednostima ovu metodu Može se primijetiti da je, za razliku od prethodne opcije, apsolutno besplatna i gotovo sve manipulacije izvode se izravno putem Excel sučelja.

Metoda 3: Program Microsoft Access

Iako nove verzije Excela nemaju ugrađen način spremanja podataka u DBF formatu, još uvijek postoji mogućnost korištenja Microsoftove aplikacije Pristup je najbliži nazivu standardnog. Činjenica je da je ovaj program izdao isti proizvođač kao i Excel, a također je uključen u paket Microsoft Office. Štoviše, ovo je najviše sigurna opcija, budući da neće biti potrebe za kontaktom softver trećih proizvođača. Microsoft Access je posebno dizajniran za rad s bazama podataka.

  1. Nakon što su svi potrebni podaci o listu uneseni u Excel, da biste ga pretvorili u DBF format potrebno ga je prethodno spremiti u neki od Excel formata. Da biste to učinili, kliknite na ikonu diskete s lijeve strane gornji kut programski prozori.
  2. Otvara se prozor za spremanje. Idemo u direktorij u koji želimo da se datoteka spremi. Upravo iz ove mape ćete je morati otvoriti u Microsoft Accessu. Format knjige možete ostaviti kao zadani xlsx ili ga možete promijeniti u xls. U ovom slučaju to nije kritično, jer ionako spremamo datoteku samo da je pretvorimo u DBF. Nakon što su sva podešavanja završena, kliknite na gumb "Uštedjeti" i zatvorite prozor programa Excel.
  3. Idemo lansirati Microsoftov program Pristup. Idi na karticu "Datoteka", ako se otvorio u drugoj kartici. Kliknite na stavku izbornika "Otvoren", koji se nalazi na lijevoj strani prozora.
  4. Otvara se prozor za otvaranje datoteke. Idemo u direktorij gdje smo spremili datoteku u nekom od Excel formata. Da bi se prikazao u prozoru, pomaknite prekidač formata datoteke u položaj « Excel radna knjiga(*.xlsx)" ili « Microsoft Excel(*.xls)", ovisno u kojem je od njih knjiga spremljena. Nakon što se prikaže naziv datoteke koja nam je potrebna, odaberite je i kliknite na gumb "Otvoren".
  5. Otvara se prozor "Veza proračunske tablice". Omogućuje premještanje podataka iz Excel datoteke u Microsoft Access što je točnije moguće. Moramo odabrati Excel list iz kojeg ćemo uvoziti podatke. Činjenica je da čak i ako Excel datoteka sadrži informacije na nekoliko listova, možete je samo zasebno uvesti u Access i, sukladno tome, pretvoriti u zasebne datoteke D.B.F.

    Također je moguće uvesti podatke iz pojedinačnih raspona u listove. Ali u našem slučaju to nije potrebno. Postavite prekidač u položaj "Plahte", a zatim odaberite list s kojeg ćemo preuzeti podatke. Ispravnost prikaza informacija možete vidjeti na dnu prozora. Ako je sve zadovoljavajuće, pritisnite tipku. "Unaprijediti".

  6. U sljedećem prozoru, ako vaša tablica sadrži zaglavlja, morate potvrditi okvir pored "Prvi redak sadrži zaglavlja stupaca". Zatim kliknite na gumb "Unaprijediti".
  7. U novom prozoru veze proračunske tablice po izboru možete promijeniti naziv povezane stavke. Zatim kliknite na gumb "Spreman".
  8. Nakon toga otvorit će se dijaloški okvir koji pokazuje da je povezivanje tablice s Excel datotekom završeno. Kliknite na gumb "U REDU".
  9. Na lijevoj strani sučelja programa pojavit će se naziv tablice koji smo joj dodijelili u prošlom prozoru. Dvaput kliknite na njega lijevom tipkom miša.
  10. Nakon toga, tablica će biti prikazana u prozoru. Prelazak na karticu "Vanjski podaci".
  11. Na vrpci u kutiji s alatom "Izvoz" kliknite na natpis "Dodatno". Na popisu koji se otvori odaberite stavku "dBase datoteka".
  12. Otvara se prozor izvoza u DBF format. U polju "Naziv datoteke" možete odrediti mjesto pohrane datoteke i njezino ime ako vam zadani iz nekog razloga ne odgovaraju.

    U polju "Format datoteke" odaberite jednu od tri vrste DBF formata:

    • dBAZA III(zadano);
    • dBAZA IV;
    • dBAZA 5.

    Treba uzeti u obzir da što je format moderniji (što je veći serijski broj), to je više mogućnosti za obradu podataka u njemu. Odnosno, postoji veća vjerojatnost da će svi podaci tablice biti spremljeni u datoteku. Ali u isto vrijeme, manje je vjerojatno da će program u koji ćete u budućnosti uvesti DBF datoteku biti kompatibilan s ovom vrstom.

    Nakon što su postavljene sve postavke, kliknite na gumb "U REDU".

  13. Ako se nakon toga pojavi poruka o pogrešci, pokušajte izvesti podatke koristeći drugu vrstu DBF formata. Ako je sve prošlo u redu, pojavit će se prozor koji vas obavještava da je izvoz bio uspješan. Kliknite na gumb "Zatvoriti".

Stvorena datoteka u dBase formatu nalazit će se u direktoriju koji je naveden u prozoru za izvoz. Zatim možete izvršiti bilo kakve manipulacije s njim, uključujući uvoz u druge programe.

Kao što vidite, unatoč činjenici da moderne verzije Excela nemaju mogućnost spremanja datoteka u DBF formatu pomoću ugrađenih alata, ovaj se postupak ipak može izvesti pomoću drugih programa i dodataka. Treba napomenuti da je najfunkcionalnija metoda pretvorbe korištenje WhiteTown Converters Packa. No, nažalost, broj besplatnih konverzija u njemu je ograničen. Dodatak XlsToDBF omogućuje potpuno besplatnu konverziju, no postupak je puno kompliciraniji. Osim toga, funkcionalnost ove opcije je vrlo ograničena.

"Zlatna sredina" je metoda pomoću programa Access. Kao i Excel, to je razvoj Microsoft, i stoga aplikacija treće strane ne možeš ga više zvati. Osim toga, ova opcija vam omogućuje pretvaranje Excel datoteka u nekoliko vrsta dBase formata. Iako je u ovom pokazatelju Access još uvijek inferioran od programa WhiteTown.