GetAttr 函數

套用到
Microsoft 365 Access Access 2024 Access 2021 Access 2019 Access 2016

注意

若 Microsoft Jet Expression Service 以沙盒模式執行,則本主題所述的函式、方法、物件或屬性將被禁用,避免評估潛在不安全的表達式。 想了解更多沙盒模式的資訊,請在說明中搜尋「sandbox mode」。

回傳一個整 ,代表檔案、目錄或資料夾的屬性。

語法

GetAttr (路徑名稱)

所需的路徑名稱參數是一個字串表達式,用來指定一個檔案名稱。 路徑名稱可能包含目錄或資料夾,以及磁碟機。

回報價值

GetAttr 回傳的值是以下屬性值的總和:

恆定 描述
vb正常 0 正常。
vbReadOnly 1 唯讀。
vb隱藏 2 隱藏著。
vb系統 4 系統檔案。 Macintosh 上無法提供。
vbDirectory 16 目錄或資料夾。
vb檔案庫 32 檔案自上次備份以來有變動。 Macintosh 上無法提供。
vb別名 64 指定的檔案名稱是別名。 僅在 Macintosh 上提供。

    

注意

這些常數由 Visual Basic for Applications 規範。 這些名稱可以在程式碼中任何地方使用,取代實際的數值。

註解

注意

下列範例示範如何在 Visual Basic for Applications (VBA) 模組中使用此函數。 如需使用 VBA 的詳細資訊,請在 [搜尋] 旁的下拉式清單中選取 [開發人員參考],並在 [搜尋] 方塊中輸入一個或多個字詞。

要判斷設定了哪些屬性,請使用 And 運算子,對 GetAttr 函式回傳的值與你想要的檔案屬性值進行位元比較。 如果結果不是零,該屬性會被設定為該命名檔案。 例如,若未設定封存屬性,則 And 運算式的回傳值為零:

Result = GetAttr(FName) And vbArchive

若設定了封存屬性,則會回傳非零值。

範例

此範例使用 GetAttr 函式來判斷檔案及目錄或資料夾的屬性。 在 Macintosh 上,只有常數 vbNormal、vbReadOnly、vbHidden 和 vbAlias 可用。

Dim MyAttr
' Assume file TESTFILE has hidden attribute set.
MyAttr = GetAttr("TESTFILE")  ' Returns 2.
' Returns nonzero if hidden attribute is 
' set on TESTFILE.
Debug.Print MyAttr And vbHidden    
' Assume file TESTFILE has hidden and 
' read-only attributes set.
MyAttr = GetAttr("TESTFILE")  ' Returns 3.
' Returns nonzero if hidden attribute is 
' set on TESTFILE.
Debug.Print MyAttr And (vbHidden + vbReadOnly)    
' Assume MYDIR is a directory or folder.
MyAttr = GetAttr("MYDIR")  ' Returns 16.