Centar za edukaciju-BiH



#51 02.12.2010 10:11
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,642


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
Evo sva iste naredbe kao i kod tebe. Samo malo drugacije slozene.
Vidi dali je to to sto si htio.
PreuzmiIzvorni kôd (Visual Basic):
  1. Private Sub Workbook_Open()
  2.      Dim db As database
  3.      Dim Rs As Recordset
  4.      Dim Vork As Worksheet
  5.      Dim SQL As String
  6.      Dim Putanja As String
  7.      Dim ImePrije As String
  8.      Dim I As Integer
  9.      Dim Brojac As Integer
  10.      Dim Izmjena As String
  11.      Dim R
  12.      
  13.      Putanja = Me.Path & "\Du.mdb"
  14.      Set db = OpenDatabase(Putanja)
  15.      Izmjena = db.Transactions
  16.      SQL = "SELECT ImePrezime,VrstaPoslova,GrupaPosla,NazivPosla, " _
  17.           & "SumBrojUnosa, Unos_u_proc " _
  18.           & "FROM podaci " _
  19.           & "ORDER BY podaci.ImePrezime"
  20.      Set Rs = db.OpenRecordset(SQL)
  21.      Izmjena = Rs.RecordCount
  22.      Set Vork = Me.Worksheets("a")
  23.      If Vork.Cells(1, 1) = Izmjena Then
  24.         R = MsgBox("Nema izmjena" & vbCrLf & "Hes li ponovo u
  25. itaiti", vbYesNo + _
  26.         vbExclamation + vbApplicationModal + vbDefaultButton2, "Napomena")
  27.         Select Case R
  28.         Case vbYes:
  29.          GoTo Start
  30.         Case vbNo:
  31.          GoTo Kraj:
  32.         End Select
  33.      Else
  34. Start:
  35.      Vork.Cells(1, 1) = Izmjena
  36.      End If
  37.      
  38.      Application.DisplayAlerts = 0
  39.      For Each Vork In ThisWorkbook.Worksheets
  40.      If Vork.Name <> "a" Then
  41.      Vork.Delete
  42.      End If
  43.      Next Vork
  44.      Brojac = 1
  45.      Do While Not Rs.EOF()
  46.      Brojac = Brojac + 1
  47.        If ImePrije <> Rs!ImePrezime Then
  48.          Set Vork = Sheets.Add
  49.          Vork.Name = Rs!ImePrezime
  50.          Vork.Cells(1, 1) = "Vrsta posla"
  51.          Vork.Cells(1, 2) = "Grpa Posla"
  52.          Vork.Cells(1, 3) = "Naziv Posla"
  53.          Vork.Cells(1, 4) = "Broj Unosa"
  54.          Vork.Cells(1, 5) = "Procenat Unosa"
  55.          Brojac = 2
  56.        End If
  57.        For I = 1 To 5
  58.        Vork.Cells(Brojac, I) = Rs.Fields(I)
  59.        Next I
  60.        
  61.      ImePrije = Rs!ImePrezime
  62.      Rs.MoveNext
  63.      Loop
  64.   Application.DisplayAlerts = 1
  65. Kraj:
  66.  Set db = Nothing
  67.  Set Rs = Nothing
  68.   End Sub

Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#52 02.12.2010 11:37
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,642


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
Uf zaboravih napomenuti.
Prvom sheetu daj ime a.
Prvi sheet se nemoze obrisati pa sam ga iz tog razloga ostavio ali praznog odnosno zapisujem vrijednost rekorda.
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#53 02.12.2010 11:41
Zuko Van mreze
Clan
Registrovan od:13.09.2010
Postovi:382


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
Jeste to je to, imam jedno pitanje za ovaj sheet a Å¡ta je i gdje upisano (nemogu da nađem u kod-u) vrjednost 248.
Hvala na pomoći.
sad mi ostaje da ga malo sredim
Pozdav,

Nedim
↑  ↓

#54 02.12.2010 11:46
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,642


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
Izmjena = Rs.RecordCount
Set Vork = Me.Worksheets("a")
If Vork.Cells(1, 1) = Izmjena Then

Procita broj rekorda u bazi pa ako je isti javi ti da nema izmjena, mada mozes opet pokrenuti da ponovo ucita.
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#55 02.12.2010 11:49
Zuko Van mreze
Clan
Registrovan od:13.09.2010
Postovi:382


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
e sad je pomoć kompletna hvala joÅ¡ jednom, a ovo je pravo dobro
Pozdav,

Nedim
↑  ↓

#56 02.12.2010 16:07
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,642


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
Eto sad malo pogledaj i rastumaci sebi postupak. Nisam koristio niti jednu naredbu sto ti nisi.
Znaci samo drugacije poslozeno.
Ukoliko negdje nesto bude nejasno dat cu objasnjenje ali prvo ti probaj rijesiti.
Tako se najbolje uci.
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

#57 02.12.2010 16:47
Zuko Van mreze
Clan
Registrovan od:13.09.2010
Postovi:382


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
evo napiso sam objašnjenja prcedure
PreuzmiIzvorni kôd (vbnet):
  1. Private Sub Workbook_Open()
  2.    Dim db As database 'Odreivanje varijabli'
  3.    Dim Rs As Recordset 'Odreivanje varijabli'
  4.    Dim Vork As Worksheet 'Odreivanje varijabli'
  5.    Dim SQL As String  'Odreivanje varijabli'
  6.    Dim Putanja As String 'Odreivanje varijabli'
  7.    Dim ImePrije As String 'Odreivanje varijabli'
  8.    Dim I As Integer 'Odreivanje varijabli'
  9.    Dim Brojac As Integer 'Odreivanje varijabli'
  10.    Dim Izmjena As String 'Odreivanje varijabli'
  11.    Dim R 'Odreivanje varijabli'
  12.    Putanja = Me.Path & "\Du.mdb" 'Odreivanje putanje'
  13.    Set db = OpenDatabase(Putanja) 'Setovanje baze'
  14.    Izmjena = db.Transactions 'Odreivanje varijable'
  15.    SQL = "SELECT ImePrezime,VrstaPoslova,GrupaPosla,NazivPosla, " _ 'Upit'
  16.        & "SumBrojUnosa, Unos_u_proc " _
  17.        & "FROM podaci " _
  18.        & "ORDER BY podaci.ImePrezime"
  19.    Set Rs = db.OpenRecordset(SQL) 'Odreivanje Recorseta'
  20.    Izmjena = Rs.RecordCount 'Broj slogova'
  21.    Set Vork = Me.Worksheets("a") 'Setovanje Worksheet-a'
  22.    If Vork.Cells(1, 1) = Izmjena Then 'Uslov za odrediÅ¡te odatka'
  23.       R = MsgBox("Nema izmjena" & vbCrLf & "Hes li ponovo upisati", vbYesNo + _ 'Porozor poruke'
  24.       vbExclamation + vbApplicationModal + vbDefaultButton2, "Napomena")
  25.       Select Case R 'Case petlja'
  26.          Case vbYes: 'Ako je odgovor Yes'
  27.          GoTo Start  'Idi na start
  28.       Case vbNo: 'Ako je odgovor No'
  29.          GoTo Kraj: 'Idi na kraj
  30.       End Select 'Kraj Case petlje'
  31.    Else 'Ina e'
  32.       Start: 'Idi na strat'
  33.       Vork.Cells(1, 1) = Izmjena 'Odreivanje odrediÅ¡ta podataka'
  34.    End If 'Kraj if uslova'
  35.    Application.DisplayAlerts = 0 'neznam Å¡ta baÅ¡ radi(Bukvalno prevedeno prikazi upozorenje 0)'
  36.    For Each Vork In ThisWorkbook.Worksheets 'For Each petlja za svaki radni sheet u excel file-u'
  37.       If Vork.Name <> "a" Then 'if pettlja ako je ime radnog sheet-a razli ito od sheet-a "a"'
  38.          Vork.Delete 'Ovrisi radni sheet'
  39.       End If 'kraj petlje'
  40.    Next Vork 'Sljedei raddni sheet'
  41.    Brojac = 1 'Odreivanje varijable brojac'
  42.    Do While Not Rs.EOF()  'Do petlja dok nije kraj Recordset-a'
  43.       Brojac = Brojac + 1 'Povecavamo brojac za jedan'
  44.       If ImePrije <> Rs!ImePrezime Then 'If petlja ako je varijabla Imeprije razlicita od Vrjednosti iz Recordset-a'
  45.          Set Vork = Sheets.Add 'Dodajemo novi radni sheet'
  46.          Vork.Name = Rs!ImePrezime 'Odreujemo mu ime'
  47.          Vork.Cells(1, 1) = "Vrsta posla" 'Upisujemo podarak Naslov kolona'
  48.          Vork.Cells(1, 2) = "Grpa Posla"  'Upisujemo podarak Naslov kolona'
  49.          Vork.Cells(1, 3) = "Naziv Posla" 'Upisujemo podarak Naslov kolona'
  50.          Vork.Cells(1, 4) = "Broj Unosa"  'Upisujemo podarak Naslov kolona'
  51.          Vork.Cells(1, 5) = "Procenat Unosa" 'Upisujemo podarak Naslov kolona'
  52.          Brojac = 2 'Odreujemo varijablu Brojac'
  53.      End If ?kraj uslova'
  54.      For I = 1 To 5 'For petlja za i od 1 do 5'
  55.          Vork.Cells(Brojac, I) = Rs.Fields(I) 'Odreujemo radni sheet'
  56.      Next I 'kraj petlje'
  57.      ImePrije = Rs!ImePrezime 'Promjena vrjednosti varijable Imeprije'
  58.      Rs.MoveNext 'Ubacivanje nove vrjednosti u Recordset'
  59.    Loop 'Kraj DO Loop petlje'
  60.    Application. = 1 'neznam Å¡ta baÅ¡ radi(Bukvalno prevedeno prikazi upozorenje 1)'
  61.    Kraj: 'Opis kraj-a'
  62.    Set db = Nothing 'Ubaci nista u setovanje baze'
  63.    Set Rs = Nothing 'Ubaci nista u setovanje Recodset-a'
  64. End Sub

Pozdav,

Nedim
Ovaj post je ureden 1 puta. Posljednja izmjena 02.12.2010 16:48 od strane nzuko. ↑  ↓

#58 02.12.2010 17:38
zxz Van mreze
Administrator
Registrovan od:03.02.2009
Postovi:10,642


Predmet:Re: Prenos podatak VB-a kodom iz Access-a u Excel
Izmjena = db.Transactions 'ovo netreba
Zaboravio sam a ostalo mi jer sam mislioda provjeravam velivinu mdb baze pa na osnovu toga kazem dali je bilo izmjena ili ne.
Posslije sam to napravio brojeci redove.

Application.DisplayAlerts = 0 'neznam šta baš radi(Bukvalno prevedeno
Isto sto u accessu set warnings.
0-Iskljucuje upozorenja
1-vraca upozorenja
stavi jedan pa pokreni i vidjet ces
Podrska samo putem foruma, jer samo tako i ostali imaju koristi od toga.
↑  ↓

Stranice (6):1,2,3,4,5,6


Sva vremena su GMT +01:00. Trenutno vrijeme: 2: 22 am.