方法二:
最簡單而有效的一個方法就是以“usys”開頭命名。因為Access認為這個字符串開頭的是系統文件,而系統文件一般是不顯現的。如果要看到,那麼在“工具”-“選項”-“視圖”中選中“系統對象”就可以了。記住,不要修改其他不屬於你的文件,因為那很危險。
方法三:
用ADO編程隱藏表
sub hide_table()
Dim cnn As New ADODB.Connection
Dim cat As New ADOX.Catalog
Set cat.ActiveConnection = CurrentProject.Connection
Dim tbl As ADOX.Table
Dim pro As Property
For Each tbl In cat.Tables
Debug.Print tbl.name
For Each pro In tbl.PropertIEs
Debug.Print pro.name & "=" & pro.Value
Next
If tbl.name = "需要隱藏的表名" Then tbl.PropertIEs.Item("Jet OLEDB:Table Hidden In Access") = True
Next
End Sub
同理,你還可以隱藏其他的數據庫對象,一樣使用 ADO
SetHiddenAttribute 方法用於設置 Access 對象的隱藏屬性。
expression.SetHiddenAttribute(ObjectType, ObjectName, fHidden)
expression 必需。返回 Application 對象的表達式。
ObjectType AcObjectType,必需。必須為 ObjectType 參數輸入一個常量;acDefault 不是有效的輸入項。
AcObjectType 可以是下列 AcObjectType 常量之一:
acDataAccessPage
acDefault
acDiagram
acForm
acFunction
acMacro
acModule
acQuery
acReport
acServerVIEw
acStoredProcedure
acTable
ObjectName String 型,必需。字符串表達式,標識 Access 對象的名稱。
fHidden Boolean 型,必需。值為 True 會設置隱藏屬性,值為 False 則會清除隱藏屬性。
說明
GetHiddenAttribute 和 SetHiddenAttribute 方法一起使用時,可提供一種通過 Visual Basic 代碼改變對象隱藏屬性的方法。使用這兩個方法,可以設置或讀取對象的“屬性”對話框中可用的隱藏選項。
若要使用 SetHiddenAttribute 方法來設置該選項,可將參數設為 True 或 False,如下例所示。
Application.SetHiddenAttribute acTable,"Customers", True
方法五:
Function asdfasdfa()
'直接設定 DAO 的 TABLEDEF 對象的 Attributes 屬性等於1也可以
For Each tabdef In CurrentDb.TableDefs
Debug.Print tabdef.Name
Debug.Print tabdef.Attributes
If tabdef.Attributes = 0 Then
tabdef.Attributes = 1
End If
Next
End Function
方法六:
隱藏:
Access 2000中在表的名字前加
~TMPCLP
要顯示上述表:
新建一個查詢,然後輸入 SQL
select * from msysobjects where name like '~TMPCLP*'
看見表名後用
select * from [~TMPCLP表名]
來查看所有的數據。
另外,用修復工具修復數據庫可以看到一些有特定權限才能看到的表,Access 有時候會隱藏一些表給他自己用,這些表不是正常 MDB 所擁有的系統表,所以在 Access 中是看不見的。