本文提供沙箱模式允許及區塊在 Access中使用之函數和屬性的相關參考資訊。 請注意, Access 可讓數個較新的函數在沙盒模式中執行,包括 MonthName 和 StrReverse,而且它現在會封鎖數個函數,包括 輔助、 ExportNavigationPane 和 LoadCustomUI。 繼續進行時,請記住,您必須信任 (啟用資料庫中的內容) ,或將資料庫放在信任的位置,讓本文中的資訊可供使用。
本文內容
設定沙箱模式以執行不安全的表達式
當您新增表達式至資料庫時,Access 會在稱為沙箱模式的作業環境中執行該表達式。 Access 預設會啟用沙箱模式,而沙盒模式會一 律 停用不安全的表達式,即使您信任資料庫也是如此。
如果您信任資料庫,而且想要執行沙箱模式停用的表達式,您可以變更停用沙盒模式的登錄機碼來執行該運算式。 請記住,您必須先信任資料庫,才能依照本節中的步驟進行。
此圖顯示您在決定是否執行不安全的表示式時所遵循的程式。
注意 不正確地編輯登錄可能會嚴重損害您的作業系統,而導致需要重新安裝。 Microsoft 無法保證因不正確地編輯登錄所造成的問題是否能獲得解決。 編輯登錄之前,請備份所有重要的資料。 如需使用及保護您電腦的登錄的最新資訊,請參閱 Microsoft Windows 說明。
如果您不熟悉登錄,或不熟悉自行變更登錄機碼,請連絡目前或考慮將資料庫從舊版 Access 轉換為 Access 檔格式的人員。 此外,您必須有電腦系統管理員權限,才能變更登錄值。
變更登錄機碼
重要: 遵循下列步驟,即可允許電腦上的所有使用者在所有 Access 執行個體中都能執行不安全的運算式。
執行下列其中一個動作:
-
在 Microsoft Windows 7 或 Microsoft Windows 10
-
在任務欄上,按兩下 [ 開始],然後按兩下 [ 執行]。
-
在 [開啟] 方塊中輸入 regedit,然後按下 ENTER。
[登錄編輯程式] 隨即啟動。
-
展開 HKEY_LOCAL_MACHINE 資料夾,然後瀏覽至下列登錄機碼:
\Software\Microsoft\Office\16.0\Access Connectivity Engine\Engine
附註: 請注意,14.0 表示 Access 2010、15.0 表示 Access 2013,而 16.0 代表 Access 2016 和更新版本。
-
在註冊表編輯器的右窗格中,按兩下 [ 名稱] 底下的 [SandboxMode]。
[編輯 DWORD 值] 對話方塊便會出現。
-
將 [數值資料] 欄位的值從 3 變更為 2,然後按一下 [確定]。
-
關閉 [登錄編輯程式]。
-
-
在 Windows Vista中
-
按兩下 [ 開始 ] 按鈕,指向 [所有程式],按兩下 [ 配件],然後按兩下[ 執行]。
-
在 [開啟] 方塊中輸入 regedit,然後按下 ENTER。
[登錄編輯程式] 隨即啟動。
-
展開 HKEY_LOCAL_MACHINE 資料夾,然後瀏覽至下列登錄機碼:
\Software\Microsoft\Office\16.0\Access Connectivity Engine\Engine
附註: 請注意,4.0 表示 Access 2010、15.0 表示 Access 2013,而 16.0 代表 Access 2016 和更新版本。
-
在註冊表編輯器的右窗格中,按兩下 [ 名稱] 底下的 [SandboxMode]。
[編輯 DWORD 值] 對話方塊便會出現。
-
將 [數值資料] 欄位的值從 3 變更為 2,然後按一下 [確定]。
-
關閉 [登錄編輯程式]。
-
重要 請記住,如果不先信任資料庫,則不論是否變更此登錄設定,Access 都會停用任何不安全的運算式。
您可以將登錄值設定為下列值,其中 0 (零) 最寬鬆,3 為最不寬鬆。
設定 |
描述 |
0 |
沙箱模式隨時停用。 |
1 |
沙盒模式適用於 Access,但非 Access 程式則不使用。 |
2 |
沙盒模式適用於非 Access 程式,但不適用於 Access。 |
3 |
隨時都會使用沙盒模式。 這是當您安裝 Access時所設定的預設值。 |
您可以在沙箱模式中使用的函數
下表列出啟用沙箱模式時,您可以在 Access 資料庫引擎查詢中使用的函數。 在沙箱模式中無法使用任何未出現在清單中的函數。
Abs |
Array |
Asc |
Ascb |
Ascw |
Atn |
CBool |
CByte |
CCur |
CDate |
CDbl |
選擇 |
Chr |
Chr$ |
Chrb |
Chrb$ |
Chrw |
Chrw$ |
Cint |
Clng |
Cos |
Csng |
Cstr |
Cvar |
CVDate |
CVErr |
日期 |
Date$ |
DateAdd |
DateDiff |
DatePart |
DateSerial |
DateValue |
天 |
Ddb |
錯誤 |
錯誤$ |
Exp |
Fix |
設定格式 |
格式$ |
FormatCurrency |
FormatDateTime |
FormatNumber |
FormatPercent |
FV |
Hex |
十六進位 |
小時 |
IIf |
IMEStatus |
InStr |
InStrb |
Int |
IPmt |
Irr |
IsDate |
IsEmpty |
IsError |
IsNull |
IsNumeric |
IsObject |
LCase |
LCase$ |
向左鍵 |
Left$ |
Leftb |
Leftb$ |
Len |
Lenb |
Log |
LTrim |
LTrim$ |
Mid |
Mid$ |
Midb |
Midb$ |
分鐘 |
MIRR |
月份 |
MonthName |
Now |
NPer |
Npm |
10 月 |
10 月$ |
磁碟分割 |
Pmt |
PPmt |
PV |
QBColor 函數 |
Rate |
取代 |
RGB |
向右鍵 |
Right$ |
RightB |
Rightb$ |
Rnd |
輪 |
RTrim |
RTrim$ |
秒 |
Sgn |
Sgr |
Sin |
SLN |
太空 |
空格鍵$ |
Str |
Str$ |
StrComp |
StrConv |
String |
String$ |
StrReverse |
開關 |
西德妮 |
Tan |
時間 |
Time$ |
Timer |
TimeSerial |
TimeValue |
修剪 |
Trim$ |
TypeName |
UCase |
UCase$ |
Val |
VarType |
Weekday |
年 |
在沙箱模式中造成錯誤的函數
下列 Visual Basic for Applications (VBA) 函數會在從 Access 資料庫引擎查詢中的運算式進行調用,或是從 Access 屬性撥打時,造成錯誤。
AppActivate |
嗶 |
行事曆 |
CallByName |
ChDir |
ChDrive |
命令 |
Command$ |
CreateObject |
CurDir |
CurDir$ |
DeleteSetting |
DoEvents |
環境 |
Environ$ |
Eof |
犯 錯 |
FileAttr |
FileCopy |
FileDateTime |
FileLen |
FreeFile |
GetAllSettings |
GetAttr |
GetObject |
GetSetting |
輸入 |
Input$ |
InputB |
InputB$ |
殺 |
負荷 |
Loc |
LOF |
隨機 |
重設 |
SaveSetting |
搜尋 |
SendKeys |
SetAttr |
殼層 |
Spc |
Tab |
Unload |
UserForm |
Width |
沙箱模式封鎖的函數
當函數是從查詢中的表達式或 Access 屬性來叫用時,沙箱模式會封鎖下列 Access 函數。
AddAutoCorrect |
AddToFavorites |
ADOConnectString |
AnswerWizard |
應用程式 |
Assistant |
協助 |
自動校正 |
AutomationSecurity |
BeginUndoable |
CloseCurrentDatabase |
CodeContextObject |
CodeDb |
COMAddIns |
CommandBars |
CompactRepair |
ConvertAccessProject |
CreateAccessProject |
CreateAdditionalData |
CreateControl |
CreateControlEx |
CreateDataAccessPage |
CreateForm |
CreateGroupLevel |
CreateNewWorkgroupFile |
CreateReport |
DataAccessPages |
DBEngine |
DDEExecute |
DDEInitiate |
DDEPoke |
DDERequest |
DDESend |
DDETerminate DDETerminateAll |
DefaultWebOptions |
DefaultWorkspaceClone |
DelAutoCorrect |
DeleteControl |
DeleteReportControl |
DoCmd |
Echo |
ExportCustomFixedFormat* |
ExportNavigationPane |
ExportXML |
FeatureInstall |
FileDialog |
FileSearch |
FollowHyperlink |
GetHiddenAttribute |
ImportNavigationPane |
ImportXML |
InsertText |
LanguageSettings |
LoadCustomUI* |
LoadFromText |
LoadPicture |
模組 |
NewAccessProject |
NewCurrentDatabase |
NewFileTaskPane |
OpenAccessProject |
OpenCurrentDatabase |
父母 |
ProductCode |
Quit |
參考資料 |
RefreshDatabaseWindow |
RefreshTitleBar |
ReloadAddIns |
ReplaceModule |
執行 |
RunCommand |
SaveAsText |
SetDefaultWorkGroupFile |
SetHiddenAttribute |
SetOption |
SetUndoRecording |
SysCmd |
TransformXML |
VBE |
被沙箱模式封鎖的屬性
除了上一節所列的函數之外,沙箱模式也會封鎖許多物件屬性。 下表列出每個物件的物件和封鎖的屬性。
物件 |
封鎖的屬性或內容 |
BoundObjectFrame |
物件 |
下拉式方塊 |
Recordset |
控制項 |
物件 |
CurrentProject |
AccessConnection, BaseConnectionString, CloseConnection, Connection, OpenConnection |
CustomControl |
物件 |
表單 |
動態集 |
超連結 |
選取 [加到我的最愛] 區段的螢幕擷取畫面 |
Listbox |
Recordset |
ObjectFrame |
物件 |
報告 |
Recordset |
SmartTagAction |
執行 |
螢幕 |
ActiveDataAccessPage |