第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

如何強制VBA / Access要求定義變量?

如何強制VBA / Access要求定義變量?

臨摹微笑 2020-02-02 14:07:54
我正在對某些VBA代碼進行重大更改,并且某些變量正在被刪除和/或重命名。如果編譯器向我抱怨變量不存在而不是動態(tài)創(chuàng)建變量,那么查找所有需要更新的位置會容易得多。如何強制VBA / Access要求聲明變量?
查看完整描述

3 回答

?
飲歌長嘯

TA貢獻1951條經(jīng)驗 獲得超3個贊

您需要Option Explicit在每個VBA代碼模塊(包括表單和報告)的頂部使用。

您可以進入VBA編輯器>>工具>>選項>>編輯器選項卡,并確保選中了“需要變量聲明”,以為表單和報表后面的所有將來創(chuàng)建的模塊和VBA代碼設(shè)置此設(shè)置。

從Access 2003幫助:

要求變量聲明-確定模塊中是否需要顯式變量聲明。選擇此選項會將Option Explicit語句添加到任何新模塊的常規(guī)聲明中。

變量變暗時,我也會使用駝峰式大小寫。 ThisIsAnExampleOfCamelCase。如果Access不會將小寫變量更改為駝峰大小寫,一旦退出VBA代碼行,我就會知道輸入錯誤。


查看完整回答
反對 回復(fù) 2020-02-02
?
滄海一幻覺

TA貢獻1824條經(jīng)驗 獲得超5個贊

有關(guān)OPTION EXPLICIT和Access VBA的一些歷史記錄

根據(jù)Tony的回答,這里有一些解釋,說明為什么在某些Access代碼模塊中未存在OPTION EXPLICIT的問題。

在Access 95和Access 97(帶有VBA的前兩個Office版本)中,Access的代碼編輯器與其他Office程序不同。在Access 2000中,Microsoft通過Access中的其他Office應(yīng)用程序?qū)崿F(xiàn)了VBE。同時,MS選擇使Access VBA模塊的行為像其他應(yīng)用程序中的模塊一樣,默認(rèn)情況下具有OPTION EXPLICIT。

因此,在Access 2000中,默認(rèn)情況下,模塊創(chuàng)建時沒有OPTION EXPLICIT。

當(dāng)然,這對MS而言確實是一個愚蠢的設(shè)計決定,后來他們撤消了這一決定(我不記得是Access 2002或2003糾正了問題,并在所有新模塊中再次默認(rèn)為OPTION EXPLICIT)。它之所以愚蠢(因為MS應(yīng)該知道這一點)是因為Access是一種數(shù)據(jù)庫應(yīng)用程序開發(fā)工具,因此可以對強類型的數(shù)據(jù)進行操作。因此,默認(rèn)情況下應(yīng)嚴(yán)格鍵入代碼環(huán)境,以使其與正在使用的數(shù)據(jù)保持一致。

在Excel或Word中,數(shù)據(jù)不是強類型,因此對幾乎所有內(nèi)容使用變體數(shù)據(jù)類型更有意義,只是使每個人都更容易使用。通過不使用OPTION EXPLICIT來實現(xiàn)這一點的缺點是,您可能會得到拼寫錯誤,這些錯別字會自動引入新變量(例如變量“ intrdoduce”),如果我使用OPTION EXPLICIT撰寫本文,那么如果沒有OPTION EXPLICIT,就不會發(fā)生產(chǎn)生運行時錯誤!:)]。這是所有以這種方式工作的語言的問題(我努力工作于PHP,其中變量名可以按大小寫區(qū)分,即$ Var與$ var是不同的變量;但是我離題了),但是MS決定在Word和Excel中以這種方式實現(xiàn)它,因為這樣的理論是,編寫代碼的人如果不這樣做的話,將會更輕松。

因此,MS犯了一個錯誤,即使Access的VBE版本像其他應(yīng)用程序一樣,即使Access自己的目的內(nèi)部沒有邏輯支持這一舉動。然后,MS撤消該更改并返回到以前的狀態(tài)(即,默認(rèn)情況下,所有模塊中的OPTION EXPLICIT)。

因此,您經(jīng)常會看到在Access 2000中開始使用的應(yīng)用程序,這些應(yīng)用程序到處都是模塊,而沒有OPTION EXPLICIT。當(dāng)我必須使用這樣的應(yīng)用程序時,我的首要任務(wù)是在所有模塊中實現(xiàn)OPTION EXPLICIT,然后修復(fù)該死的東西,使其能夠編譯(鑒于該東西是在沒有它的情況下進行編程的,因此通常很難)。


查看完整回答
反對 回復(fù) 2020-02-02
?
犯罪嫌疑人X

TA貢獻2080條經(jīng)驗 獲得超4個贊

這個問題對于Excel很有幫助,您可能會看到它是否適用于Access:


丟失的變量


本質(zhì)上,MZ-Tools將搜索您的代碼并告訴您未使用的內(nèi)容。VBA的版本可以在這里找到。使用查看源代碼功能。


查看完整回答
反對 回復(fù) 2020-02-02
  • 3 回答
  • 0 關(guān)注
  • 713 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號