Access Tablo Adlarını Bulma

1 2 3
19/01/2020, 17:42

feraz

Merhaba.

Accesteki tablo adları nasıl bulunuyor.

Not:Ado schmea ile olmayacak.

Alttaki gibi kod var lakim Msy gibi gizli tablo adlarınıda gösteriyor bu sorun if ve Left gibi olayları ile çözülür lakin başka yolu varmıdır?




Kod:
Dim obj As AccessObject, dbs As Object
   
    Set dbs = Application.CurrentData
    For Each obj In dbs.AllTables
        MsgBox obj.Name
    Next obj

ve Forms ("xx") form için böyle kod varken tablo içinde varmı aynu yöntem?
19/01/2020, 18:17

berduş

SELECT MSysObjects.Name AS table_name FROM MSysObjects WHERE (((Left([Name],1))<>"~") AND ((Left([Name],4))<>"MSys") AND ((MSysObjects.Type) In (1,4,6)) AND ((MSysObjects.Flags)=0)) order by MSysObjects.Name 
tablo isimleri alan böyle bir kod var
19/01/2020, 18:20

feraz

Left ile Mys koşulu kodda olmayacaktı abey.

Mesajda yazmıştım
19/01/2020, 18:45

berduş

tabledef benzeri bir komut vardı ama bilgisayar yok deneyemiyorum, o kodu araştırabilirsiniz.
19/01/2020, 19:23

ozanakkaya

Dim db as Database
Dim td as TableDef
Set db = CurrentDb()
For Each td In db.TableDefs
  MsgBox td.Name
Next td
19/01/2020, 19:30

feraz

(19/01/2020, 19:23)ozanakkaya yazdı:
Dim db as Database
Dim td as TableDef
Set db = CurrentDb()
For Each td In db.TableDefs
  MsgBox td.Name
Next td

Bu kodu denemiştim ve alttaki kod satırında hata vermişti yine verdi hatayı.

Dim db As Database


Alttaki içinde çözüm varmı?
Alıntı:ve Forms ("xx") form için böyle kod varken tablo içinde varmı aynu yöntem?
1 2 3