使用 FeatureInstall 屬性可以指定或確定 Microsoft Access 如何處理對(duì)需要尚未安裝功能的方法和屬性的調(diào)用。MsoFeatureInstall 型,可讀/寫(xiě)。
MsoFeatureInstall 可以是下列 MsoFeatureInstall 常量之一: |
msoFeatureInstallNone (默認(rèn)值)運(yùn)行期間,當(dāng)調(diào)用未安裝的功能時(shí),出現(xiàn)“自動(dòng)化”錯(cuò)誤。 |
msoFeatureInstallOnDemand 提示用戶安裝新功能。 |
msoFeatureInstallOnDemandWithUI 自動(dòng)安裝功能,并且在安裝時(shí)顯示進(jìn)度表。不提示用戶安裝新功能。 |
expression.FeatureInstall
expression 必需。返回“應(yīng)用于”列表中的一個(gè)對(duì)象的表達(dá)式。
當(dāng) VBA 代碼引用一個(gè)未安裝的對(duì)象時(shí),Microsoft“安裝程序”技術(shù)將嘗試安裝所需功能。使用 FeatureInstall 屬性可控制在引用一個(gè)未安裝的對(duì)象時(shí)發(fā)生的情況。當(dāng)此功能設(shè)置為默認(rèn)值時(shí),任何使用未安裝對(duì)象的嘗試都會(huì)引起“安裝程序”技術(shù)試圖安裝所需功能。在某些情況下,這會(huì)花費(fèi)一些時(shí)間,并且用戶可能會(huì)認(rèn)為機(jī)器已經(jīng)對(duì)其他命令停止了響應(yīng)。
可以將 FeatureInstall 屬性設(shè)置為 msoFeatureInstallOnDemandWithUI,這樣用戶就可以看到安裝所需功能時(shí)發(fā)生的事情。如果想要捕獲返回的錯(cuò)誤并向用戶顯示自己的對(duì)話框,或想要執(zhí)行自定義操作時(shí),可以將 FeatureInstall 屬性設(shè)置為 msoFeatureInstallNone。
如果 UserControl 屬性設(shè)置為 False,那么即使 FeatureInstall 屬性設(shè)置為 msoFeatureInstallOnDemand 也不提示用戶安裝新功能。如果 UserControl 屬性設(shè)置為 True,那么當(dāng) FeatureInstall 屬性設(shè)置為 msoFeatureInstallOnDemand 時(shí),將顯示安裝進(jìn)度表。
此示例檢查 FeatureInstall 屬性的值。如果屬性設(shè)置為 msoFeatureInstallNone,代碼將顯示消息框,詢問(wèn)用戶是否要更改屬性設(shè)置。如果用戶響應(yīng)為“是”,那么將屬性設(shè)置為 msoFeatureInstallOnDemand。此示例使用定義為應(yīng)用程序?qū)ο蟮拿麨?MyOfficeApp 的對(duì)象變量。
Dim myofficeapp As Access.Application
Set myofficeapp = New Access.Application
With MyOfficeApp
If .FeatureInstall = msoFeatureInstallNone Then
Reply = MsgBox("Uninstalled features for " _
& "this application may " & vbCrLf _
& "cause a run-time error when called." _
& vbCrLf & vbCrLf _
& "Would you like to change this setting" & vbCrLf _
& "to automatically install missing features?", _
vbYesNo, "Feature Install Setting")
If Reply = vbYes Then
.FeatureInstall = msoFeatureInstallOnDemand
End If
End If
End With