Function Es_Tabla_Dbf(NombreTabla As String) As Integer
'Hago la funcion integer y no Bolean para distinguir 4 casos
'Además no recorro innecesariamente todas las coleciones y propiedades
'como en el anterior ejemplo adjunto
'Valores que devuelve:
'1 = ES DBF
'2 = NO ES DBF
'3 = La tabla no existe en esta MDB
'4 = Otro error que se produzca
On Error GoTo Err_EtiError
Dim Fichero As String
Fichero = UCase(CurrentDb.TableDefs(NombreTabla).SourceTableName)
If InStr(1, Fichero, "DBF", vbTextCompare) <> 0 Then
Es_Tabla_Dbf = 1
Else
Es_Tabla_Dbf = 2
End If
Exit_EtiError:
Exit Function
Err_EtiError:
If Err.Number = 3265 Then
MsgBox "La tabla " & NombreTabla & " no pertenece a esta MDB", vbExclamation, "AVISO"
Es_Tabla_Dbf = 3
Else
MsgBox Err.Description, vbCritical, "AVISO DE ERROR"
Es_Tabla_Dbf = 4
End If
Resume Exit_EtiError
End Function
               (
geocities.com/es/ensolva/Descargas)                   (
geocities.com/es/ensolva)                   (
geocities.com/es)