|
|
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
Добрый день. Есть функция Public Function CheckTable(strtblName As String) As Boolean Dim tbl As dao.TableDef On Error Resume Next Set tbl = CurrentDb().TableDefs(strtblName) If Err.Number = 0 Then CheckTable = True Else CheckTable = False End If CheckTable_EXIT: Exit Function CheckTable_ERR: Select Case Err.Number Case Else MsgBox Err.Description & "(" & Err.Number & ") в процедуре CheckTable" Resume CheckTable_EXIT End Select End Function Прописываю на форме процедуру: Private Sub Кнопка43_Click() strtblName = "ПКВфакт" If CheckTable(strtblName) = True Then DoCmd.DeleteObject acTable, strtblName Else DoCmd.OpenQuery "ТаблицаПКВфакт" End If PrevIsh1 End Sub Не работает!!! Не могу понять где ошибка! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2003, 14:21 |
|
||
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
Что именно не работает? Я, например, вижу метку CheckTable_ERR, на которую нет перехода, но не знаю, какого поведения от этой программы Вы ожидаете. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2003, 14:45 |
|
||
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
Попробуй вместо строки ->>>> On Error Resume Next написать ->>>>> On Error GoTo CheckTable_ERR ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2003, 15:02 |
|
||
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
Но тогда всю часть начиная с If Err.Number = 0 Then надо переделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.03.2003, 15:05 |
|
||
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
Спасибо всем кто откликнулся! Вообще от програмы я жду, что она проверит существует ли тыблица с именем ПКВфакт в моей базе, и если она есть, то удалить, а если нет, то сразу запустить запрос. Так подробно объясняю, потому что в VBA копошусь всего пару месяцев, и многое делаю на ощуп. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2003, 06:58 |
|
||
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
Ура!!!!!!!!!!!! Еще раз всем спасибо!!!!!!!!!!! Переписала!!!!! Работает!!!!!!!!!! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2003, 08:30 |
|
||
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
Вообще-то я делаю так, не знаю на сколько это правильно но работает: Nz(Dlookup("[Name]"; "MSysObjects"; "[Name] = 'Нужная таблица или форма'");"ТАКОЙ Нету") ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2003, 08:35 |
|
||
|
Проверка существования таблици в базе
|
|||
|---|---|---|---|
|
#18+
А что мучаться-то. просто удаляй таблицу, и отлавливай ошибку, возникающую, если таблицы нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.03.2003, 09:07 |
|
||
|
|

start [/forum/topic.php?fid=45&fpage=1816&tid=1682056]: |
0ms |
get settings: |
8ms |
get forum list: |
10ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
30ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
57ms |
get tp. blocked users: |
1ms |
| others: | 238ms |
| total: | 363ms |

| 0 / 0 |
