powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Можно ли в списке отобразить имеющиеся таблицы?
18 сообщений из 18, страница 1 из 1
Можно ли в списке отобразить имеющиеся таблицы?
    #32794489
Я хотел бы узнать, можно ли в поле со списком отобразить все имеющие таблицы?

Спасибо.
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794505
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно

либо добавлять элементы из dao.tabledefs
либо селект из MSysObjects
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794521
Будь добр, если тебя не затруднит покажи пример кода.
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794534
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Почему бы и нет? Только вот вопрос, в чем работаем - Mdb or ADP?

Для Mdb вариант:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
    Dim db As DAO.Database: Set db = CurrentDb
    Dim td As DAO.TableDef, ss As String
    
    For Each td In db.TableDefs
        If td.Attributes And dbSystemObject Then
        Else
            ss = ss & td.Name & ";"
        End If
    Next
    
    Me.List1.RowSource = ss
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794538
RVI
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794546
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вместе с системными:

Код: plaintext
me.список1.rowsorce = "SELECT MSysObjects.Name FROM MSysObjects WHERE (((MSysObjects.Type)=1));"
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794608
Dim db As DAO.Database: Set db = CurrentDb
Dim td As DAO.TableDef, ss As String

For Each td In db.TableDefs
If td.Attributes And dbSystemObject Then
Else
ss = ss & td.Name & ";"
End If
Next

Me.List1.RowSource = ss

Появляется сообщение "Слишком большое значения для данного свойства".
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794613
me.список1.rowsorce = "SELECT MSysObjects.Name FROM MSysObjects WHERE (((MSysObjects.Type)=1));"

Не подскажете как скрыть системные таблицы, чтобы были только фактические?
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794643
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется более естественным коллекция CurrentData.AllTables
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794650
Программист, тебя не затруднит привести пример? Спасибо.
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794658
Фотография АлексейК
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
без системных
Код: plaintext
me.список1.rowsorce = "SELECT MSysObjects.Name FROM MSysObjects WHERE MSysObjects.Type =1 AND Flags = 0 " 
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794713
Мужики, спасибо большое. Вы мне очень помогли.
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794719
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программист-ЛюбительМне кажется более естественным коллекция CurrentData.AllTables

ADP only!
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794810
ищ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
"ADP only!"
щааааааааззззззз.
в mdb работаит
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794911
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ищ"ADP only!"
щааааааааззззззз.
в mdb работаит

CurrentData.AllTables -> F1
Keyword Not Found
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794916
ЛП
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Rivkin Dmitry ищ"ADP only!"
щааааааааззззззз.
в mdb работаит

CurrentData.AllTables -> F1
Keyword Not Found
Очень даже Found
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32794933
Rivkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
A97?
...
Рейтинг: 0 / 0
Можно ли в списке отобразить имеющиеся таблицы?
    #32795245
Фотография Программист-Любитель
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Минус AllTables - кроме имен таблиц оттуда ничего не вытащишь. Поэтому могу привести простой пример по связыванию табиц через Catalog из библиотеки ADOX.

Одинакого работает на XP и 2003. Должен и на 2000, но, скажу честно, не проверил. Надо только програмно при запуске приложения правильно ссылки на библиотеки переустановить.

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
Private Sub btnLinkData_Click()

    Dim cat As ADOX.Catalog, tbl As ADOX.Table, prop  As ADOX.Property
    Dim s As String, n As Integer, b As Boolean
    
    Set cat = New ADOX.Catalog
    Set cat.ActiveConnection = CurrentProject.Connection
    n =  0 : s = "": b = True
    For Each tbl In cat.Tables
        If Left(tbl.Name,  1 ) <> "~" And Left(tbl.Name,  4 ) <> "MSys" And _
            tbl.Properties("Jet OLEDB:Create Link") = True And _
            Len(tbl.Properties("Jet OLEDB:Link Datasource")) >  0  And _
            Len(tbl.Properties("Jet OLEDB:Remote Table Name")) >  0  _
        Then
On Error GoTo Err_Connect
            tbl.Properties("Jet OLEDB:Link Datasource") = Me.txtDataPath
            s = s & tbl.Name & "; "
            n = n +  1 
On Error GoTo  0 
Next_Table:
        End If
    Next tbl
    
    Me.btnClose.Enabled = b
    If b Then
        MsgBox _
            "Подключено " & CStr(n) & " таблиц из файла:" _
            & vbCrLf & vbCrLf & s, vbInformation + vbOKOnly
    Else
        MsgBox _
            "При подключении были ошибки. " & _
            Подключено " & CStr(n) & " таблиц " & _
            vbCrLf & vbCrLf & s, vbInformation + vbOKOnly
    End If
    Exit Sub
    
Err_Connect:
    b = False
    Dim s1 As String
    s1 = _
        "Ошибка подключения таблицы '" & tbl.Name & "'" & _
        vbNewLine & vbNewLine & _
        "Jet OLEDB:Link Datasource='" & tbl.Properties("Jet OLEDB:Link Datasource") & "'" & _
        vbNewLine & _
        "Jet OLEDB:Remote Table Name='" & tbl.Properties("Jet OLEDB:Remote Table Name") & "'" & _
        vbNewLine & vbNewLine & _
        "Код ошибки: " & CStr(Err.Number) & " Описание: " & Err.Description 
    If _
        MsgBox(s1 & vbNewLine & vbNewLine & _
        "Продолжить подключение ?", _
        vbCritical + vbYesNo) = vbYes _
    Then
        Resume Next_Table
    Else
        Exit Sub
    End If
End Sub
...
Рейтинг: 0 / 0
18 сообщений из 18, страница 1 из 1
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Можно ли в списке отобразить имеющиеся таблицы?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]