Microsoft Office Access
uređuje Branislav Mihaljev, MVP

Bookmark and Share
Matična strana sajta
  Novo na sajtu
  Mapa sajta
  Beleške
  Kontakt
  Pretraga MSKB

 Blog Praktikuma
  RSS feed
  P@W @Tw

  Izvezi stranicu u PDF
 
Office Praktikum

Još o Accessu
 


Skoro svakodnevno slušamo
  Radio Paradise:
  eklektični muzički online radio bez reklama!
 

 
       

Sponzori sajta

SBB CS 1.6 game server: 82.117.200.1
 
Connectivity by SBB

 
Suština pasijansa
Suština pasijansa
 


 

Informacije

NOVOSTI

I još dva nova priloga o Excelu
Novi prilozi o Wordu
Novi i prilozi u temi "razno o Officeu"
Novi članci o novostima u Officeu 2010!

SADRŽAJI ZA PREUZIMANJE

Lokalizacija Total Commandera 7.51Obe jezičke školjke za popularni program na srpskom sad funkcionišu u bilo kojoj varijanti Windowsa!
RNDalica.ExcelDodatak za Excel 2007/2010 za generisanje slučajnih podataka!
YuConv.ExcelDodatak za Excel 2007/2010 za konverziju pisama!
YuConvNetDodatak za Word 2007/2010 za konverziju pisama i kodnih rasporeda!

SKREĆEMO PAŽNJU

Kako pretraživati MSKB
a pronaći ćete i još mnogo novih sadržaja...

KONTAKT

Da li znate za pravila koja važe pri kontaktu sa nama? Molimo vas da se obavestite o tome!
 
POZIVAMO VAS

i prenesite svoja iskustva. Najbolji prilozi će biti objavljeni.

  (C) 2000-2010 Praktikum na Webu
 

Uvoz podataka iz Excela

Nivo:  NIVO 2 - klinite za objašnjenje


Access se veoma lako integriše sa drugim programima. Posebno interesantni su programi sa kojima može da aktivno razmenjuje podatke. Excel spada u tu kategoriju, a značajan je iz jednog razloga: kada poželite da jednostavnu bazu podataka sa radnog lista prebacite u "ozbiljniji" program za rad sa bazama podataka, verovatno ćete to učiniti uvozom podataka u Access.

Prilikom uvoza podataka možete se opredeliti između uvoza celog radnog lista ili definisanih opsega podataka (neophodno je da postoje definisani opsezi podataka u okviru radnog lista). Najčešće ćete uvesti ceo radni list, a zatim filtrirati potrebne podatke prilikom dalje obrade, jer je veličina radnog lista dosta ispod limita Accessovih tabela. Opsezi podataka su druga priča, jer ćete često biti u situaciji da vam je potrebno više od jednog opsega, što zahteva ponovno pokretanje čarobnjaka za uvoz podataka. Uvoz više opsega podataka možete ubrzati pomoći višestruke naredbe TransferSpreadsheet u okviru jednostavnog makroa. Jedino oko čega se morate opredeliti je to da li ćete opseg uvesti kao podatke u zasebnoj tabeli ili ćete nadovezivati podatke jedan za drugim u sklopu iste tabele.

Ukoliko uvozite opsege podataka u zasebne tabele, pre komande TransferSpreadsheet morate zadati komandu za brisanje postojećih tabela (DeleteObject) kako se podaci ne bi nadovezali na već postojeće. U drugom slučaju, kada uvozite više opsega u jednu tabelu, argument TableName mora biti jednak za svaku instancu naredbe TransferSpreadsheet (ali ipak morate prethodno izbrisati sadržaj postojeće tabele). Pošto naredba za brisanje spada u destruktivne operacije, Access će pre svakog izvršavanja takve naredbe zahtevati vašu potvrdu. Ukoliko želite da izbegnete ove zahteve, zadajte komandu SetWarnings sa parametrom No pre naredbe za brisanje sadržaja.

Makroe ćete lako uposliti, ali su njihove mogućnosti veoma ograničene. Na primer, ako poželite da uvezete samo jedan deo sadržaja radnog lista po nekom kriterijumu, moraćete se pozabaviti VBA programiranjem. Analizirajte sledeći program i prilagodite ga svojim potrebama.

' Uvoz podataka po kriterijumu iz Excelovog radnog lista
'
Sub excel_uvoz()

Dim godina As Integer
Dim conn As ADODB.Connection
Set conn = CurrentProject.Connection
Dim Exl As Object
Set Exl = GetObject("C:\Uvoz.xls")
conn.Execute "Delete * From Uvoz"
With Exl
  With .Worksheets("Data")
    For godina = 1 To 30 'redovi radnog lista
      If .Cells(godina, 2) = "2005" Then
        ssql = "Insert Into Inventory_All Values("
        ssql = ssql & .Cells(godina, 1) & ", "
        ssql = ssql & "'" & .Cells(godina, 2) & "',"
        ssql = ssql & .Cells(godina, 3) & ")"
        conn.Execute ssql
      End If
    Next godina
  End With
End With
Exl.Close
Set Exl = Nothing

End Sub

Tabela u koju će biti preneti podaci u ovom primeru se zove Uvoz, dok se kriterijum po kome se podaci uvoze nalazi u drugoj koloni radnog lista. Godina po kojoj se filtriraju podaci je 2005, dok je putanja do Excel datoteke C:\Radni\Proba\Uvoz.xls. Procedura će proći kroz prvih 30 redova radnog lista. Ove parametre možete varirati kako biste ga prilagodili konkretnom radnom listu; isto važi i za SQL naredbu koja prenosi sadržaj ćelija samo prve tri kolone. Kada napravite konekciju sa Excel datotekom nalik ovom primeru, tada imate na raspolaganju veliki broj mogućnosti za uvoz podataka.

 

  (C) 2000-2011 Praktikum na Webu

PC 119


 
 

Vrh stranice  Prethodna stranica  Naslovna strana  Mapa sajta  Pretraga

AFORIZAM ZA DANAS OVIH DANA SLUŠAMO...

Copyright © Praktikum na Webu, 2000-2011; Valinor Design; sva prava pridržana.