TopPicLogo TopPicText

Проверка на наличие таблицы в текущей базе данных

Public Function IsTablePresent(strTableName As String) As Boolean
'es - 13.06.2013
'Проверка на наличие таблицы в текущей базе данных
'   Если  таблица существует - вернет True (Истина = -1)
'   В остальных случаях: False
'--------------------------------------------------------------------
Dim i As Integer
On Error GoTo IsTablePresent_Err

' Пытаемся посчитать кол-во полей в заданной таблице
    i = CurrentDb.TableDefs(strTableName).Fields.count
    
' Если поля есть - значит и таблица существует (что вполне логично)
    If i > 0 Then IsTablePresent = True

IsTablePresent_Bye:
    Exit Function

IsTablePresent_Err:
    'Болок [Select Case] ниже в принцие не нужен - так ... на всякий случай
    Select Case Err.Number
        Case 3265  ' Ошибка обращения к обьекту (т.е. НЕТ таблицы)
        Case Else
            'MsgBox "Error " & Err.Number & vbCrLf & Err.Description & vbCrLf & _
            "in procedure IsTablePresent", vbCritical, "Error!"
    End Select
    Resume IsTablePresent_Bye
End Function

Назад ToTop
L.E. 19.10.2013
Рейтинг@Mail.ru