[ makevic @ 01.10.2004. 11:23 ] @
Problem se sastoji u sledecem: Potrebno je da na najbrzi moguci nacin iz cetrdesetak accessovih mdb-a uradim query-je iz odredjene tabele koja u svakom mdb-u ima isti naziv i taj rezultat exportujem u excel. Muci me da li moram da pisem za svaki mdb poseban connection string posto mdb-ovi naravno imaju razlicita imena? Olaksavajuca okolnost je sto je query za svaku tebelu isti. Unapred hvala.
[ DarkMan @ 01.10.2004. 12:35 ] @
Probaj nesto sa ovim kodom:
Code:

Sub Extract()
    Dim db As Database
    Dim Folder As String, ImeBaze As String
    
    Folder = "C:\TEST\ACCESS\"
    
    ImeBaze = Dir(Folder & "*.mdb")
    While ImeBaze <> ""
        Set db = OpenDatabase(Folder & ImeBaze)
        
        Dim I As Long, S As String
        S = "Baza: " & ImeBaze & vbLf
        S = S & "Ukupno Tabela: " & Str(db.TableDefs.Count) & vbLf
        For I = 0 To db.TableDefs.Count - 1
            S = S & db.TableDefs(I).Name & vbLf
        Next
        MsgBox S
        
        db.Close
        ImeBaze = Dir
    Wend
    
End Sub



Ovaj kod ce kroz while petlju redom otvarati sve baze u datom direktorijumu.
Ovaj kod stavi u mdb koji se ne nalazi u datom direktorijumu jer ce pokusati da otvori sam sebe sto ce izazvati gresku (ili stavi nekako da je preskoci).

Kada budes porbao da izvrsis ovaj kod videces da db.TableDefs sadrzi i user i system tabele. Ako tacno znas ime tabele nema problema, u suprotnom moraces nekako da prepoznas koja je koja.