Belirli Objeleri Alma

1 2
30/08/2010, 13:16

Subco

Arkadaslar Merhaba,

asagida ki kod forumdan alinmsitir. Bu kod veri tabanindaki butun tablo ve sorgulari getirmektedir (conboya). Ben butun tablo ve sorgulari degil, belirli tablo ve sorgularin gelmesi icin bu kodda nasil degisiklikler yapabilirim. (ornegin; a, b c, d tblolari gelsin. k.l.m.n sorgulari gelsin. Digerlerini istemiyorum. kodun icine bu tablo ve sorgu isimlerini yazabilirmiyiz.

*******************************
Dim obj As AccessObject, dbs As Object
Set dbs = Application.CurrentData
Dim s As String
'Önce tablolarý al
For Each obj In dbs.AllTables
If Left(obj.Name, 4) <> "mSys" Then s = s & obj.Name & ";"
Next
'Þimdi de sorgularý
For Each obj In dbs.AllQueries
s = s & obj.Name & ";"
Next
If s <> "" Then Kaynaklar.RowSource = s
**********************************

Selamlar
30/08/2010, 13:28

alpeki99

Bir tablo yapın üç alan olsun. Birinci alan form, sorgu, rapor vs. nin adını kaydetsin. İkinci alana form, sorgu, rapor vs. türü ne ise onu yazarsınız. Üçüncü alana ise gösterilip gösterilmeyeceği ile ilgili bir Evet/Hayır alanı koyarsınız. Göstermek istediklerinizi Evet olarak işaretlersiniz.

Bir form yapın orada da tablodaki gösterilmesini Evet olarak işaretlediğiniz şeyleri gösterirsiniz.
30/08/2010, 13:51

Subco

Sn.Alpteki99,
Ilginiz icin cok tesekkur ederim.
Ancak;
ben bu istediklerimi 1.mesajdaki kod un icinde yapmak istiyorum. Bu kod un icinde bir tablo veya bir sorguyu belirlemek istiyorum.

Dediginiz sekilde yaptigim zaman bu, kodun oldugu combo da nasil calistirilir ki SIZIN formunuz?

Selamlar

30/08/2010, 13:58

alpeki99

Combo'nun kaynağı olarak sorgunuz olacak değil mi? İşte o sorguda bahsetmiş olduğum tablodan bilgi çekeceksiniz. Kriter ne? Göster alanı Evet olarak işaretli olanlar.
30/08/2010, 16:53

Nurullah_Serdar

istediğin tablo ve sorgularını ayırt edeceğin bir özellik yap.listelenmesini istediğin tabloların başına lst ekle lsttblanatablo gibi.
kodda da
If Left(obj.Name, 4) <> "mSys" Then s = s & obj.Name & ";"
bölümünü
If Left(obj.Name, 3) = "lst" Then s = s & obj.Name & ";"
olarak değiştir.
sorgularınıda aynı şekilde yapabilirsin.

31/08/2010, 08:09

Subco

Ozur dilerim arkadaslar,

ancak bunu tam olarak anlayamadim, bir ornekle anlatabilirmisiniz.

(izahata muhtac olmam hasabiyle rahatsizlik verdigim icin kusura bakmayin lutfen)

Selamlar

1 2