亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

目錄
將msgbox功能放在重要位置
確定停止點(diǎn)並逐步執(zhí)行
使用DEBUG.PRINT運(yùn)算符進(jìn)行調(diào)試
從過程中調(diào)用功能
首頁 專題 excel 了解如何在Excel中調(diào)試自定義功能

了解如何在Excel中調(diào)試自定義功能

Mar 27, 2025 am 11:38 AM

如您已經(jīng)知道如何創(chuàng)建UDFS(我希望您也嘗試在Excel中應(yīng)用它們),讓我們更深入地挖掘一下,如果您的用戶定義的功能無法正常工作,請查看可以做什麼。

為了在創(chuàng)建自定義功能時解決一些問題,您很可能需要運(yùn)行調(diào)試。然後,您可以確定該功能正常工作。

我們將探討以下調(diào)試技術(shù):

創(chuàng)建自定義功能時,總是有可能犯錯。自定義功能通常非常複雜。而且他們並不總是立即開始正確地工作。公式可能會返回不正確的結(jié)果或#Value!錯誤。與標(biāo)準(zhǔn)Excel功能不同,您將看不到任何其他消息。

有沒有辦法逐步瀏覽自定義函數(shù)以檢查其每個語句的工作方式?當(dāng)然!調(diào)試用於此。

我將為您提供幾種調(diào)試您的自定義功能的方法,以便您可以選擇適合您的功能。

例如,我們從以前的文章之一中使用自定義函數(shù)getmaxbet ,該文章計算指定值範(fàn)圍內(nèi)的最大數(shù)字:

函數(shù)getMaxBetew之間(rngcells作為範(fàn)圍,minnum,maxnum) dim numrange作為dim dim vmax dim dim dim irnums() dim i作為整數(shù)redim arrnums(rngcells.counts.counts.countsscounts)rngcells in rngcells中的每個數(shù)字vmax = numrange = numrange numrange numrange select case case vmax case vmax case vmax case num 0.01 irnum 0.01 i i)情況

函數(shù)參數(shù)是編寫數(shù)字的單元格,以及值的上限和下限。

將msgbox功能放在重要位置

為了監(jiān)視計算的執(zhí)行,您可以在正確位置的屏幕上顯示最重要的變量的值。這可以使用彈出對話框完成。

MSGBOX是一個對話框,您可以使用它向用戶顯示某種消息。

MSGBOX的語法類似於其他VBA函數(shù):

msgbox(提示[,按鈕] [,title] [,helpfile,context])

提示是必需的參數(shù)。它包含您在對話框中看到的消息。它也可以用於顯示各個變量的值。

所有其他參數(shù)都是可選的。

[按鈕] - 確定在MSGBox中顯示哪些按鈕和圖標(biāo)。例如,如果我們使用選項vbokonly ,則只會顯示OK按鈕。即使您錯過了此參數(shù),默認(rèn)情況下使用此按鈕。

[標(biāo)題] - 您可以在這裡指定消息框的標(biāo)題。

讓我們從單詞切換到練習(xí)並開始調(diào)試。要顯示該消息,請在用戶定義的函數(shù)之間的代碼中添加以下行,然後再運(yùn)算符:

msgbox vmax, “ count-” &我

這是我們將得到的結(jié)果:

函數(shù)getMaxBetew之間(rngcells作為範(fàn)圍,minnum,maxnum) dim numrange作為dim dim vmax dim dim dim irnums() dim i作為整數(shù)redim arrnums(rngcells.counts.counts.countsscounts)rngcells in rngcells中的每個數(shù)字vmax = numrange = numrange numrange numrange select case case vmax case vmax case vmax case num 0.01 irnum 0.01 i i) msgbox vmax, “ count-” &情況

使用對話框中的VMAX變量,我們將看到哪些數(shù)字符合選擇標(biāo)準(zhǔn),以便我們可以選擇其中最大的標(biāo)準(zhǔn)。在標(biāo)題欄中的“ Count -&i”一詞中,我們指出我們已經(jīng)選擇了多少個數(shù)字來確定最大值。每個新值將增加計數(shù)器。

一旦擁有UDF集,我們就將以下公式應(yīng)用於日期範(fàn)圍:

= GetMaxBetween (A1:A6,10,50)

按下Enter按鈕後,您將在下面的屏幕截圖中看到一條消息:

了解如何在Excel中調(diào)試自定義功能

這是符合標(biāo)準(zhǔn)的範(fàn)圍A1:A6中的第一個數(shù)字:大於10但小於50。

單擊“確定”後,將出現(xiàn)第二個消息,其中數(shù)字14。其餘數(shù)字與選擇標(biāo)準(zhǔn)不匹配。因此,該函數(shù)退出並返回兩個值中最大的17。

MSGBox函數(shù)可用於自定義功能中最重要的位置,以控制單個變量的值如何變化。當(dāng)您擁有較大功能和大量計算時,消息框可能非常有用。在這種情況下,您可以輕鬆確定錯誤發(fā)生的代碼的哪一部分。

確定停止點(diǎn)並逐步執(zhí)行

您可以在代碼執(zhí)行停止的函數(shù)代碼中添加斷點(diǎn)。因此,您可以逐步遵循計算過程。在此過程中,您可以看到變量的值如何變化。

要添加斷點(diǎn),請將光標(biāo)放在包含您選擇暫停的語句的行上。然後右鍵單擊並選擇調(diào)試 - >切換斷點(diǎn)或僅按F9 。您也可以單擊功能代碼左側(cè)的垂直灰色區(qū)域的所需位置。

正如您在下面的屏幕截圖中看到的那樣,將會出現(xiàn)一個紅色圓圈。以紅色突出顯示計算將停止的代碼線。

了解如何在Excel中調(diào)試自定義功能

現(xiàn)在,當(dāng)功能運(yùn)行時,VBA編輯器窗口將打開。光標(biāo)將定位在您停止的點(diǎn)。

如果將鼠標(biāo)光標(biāo)懸停在功能代碼中的任何變量上,則可以看到其當(dāng)前值:

了解如何在Excel中調(diào)試自定義功能

F5繼續(xù)計算。

筆記。斷點(diǎn)後,您可以逐步跟蹤計算的進(jìn)度。如果按F8按鈕,將僅執(zhí)行VBA代碼的下一行。帶有箭頭的黃線也將移至最後執(zhí)行的代碼位置。

由於該函數(shù)的執(zhí)行再次暫停,因此您可以使用鼠標(biāo)光標(biāo)查看函數(shù)所有變量的當(dāng)前值。

F8的下一批出版社將使我們向前一步。因此,您可以按F8直到計算結(jié)束。或按F5繼續(xù)計算直至下一個斷點(diǎn)。

如果發(fā)生錯誤,則光標(biāo)將停止在發(fā)生錯誤發(fā)生的代碼的點(diǎn)。您還將看到一條彈出錯誤消息。這使確定問題的原因變得容易。

您指定的斷點(diǎn)將被應(yīng)用於關(guān)閉文件。重新打開它時,您需要再次設(shè)置它們。不是最方便的方法,您不覺得嗎?

但是,可以解決此問題。在必要的點(diǎn)將stoert語句插入功能代碼中,您可以以與使用斷點(diǎn)時相同的方式停止程序執(zhí)行。

了解如何在Excel中調(diào)試自定義功能

當(dāng)VBA遇到停止語句時,它將停止執(zhí)行程序並等待您的操作。檢查變量的值,然後按F5繼續(xù)。

或按F8如上所述逐步完成函數(shù)。

停止語句是程序的一部分,因此沒有像斷點(diǎn)一樣刪除。完成調(diào)試後,請自己刪除?;蛲ㄟ^單個報價(')在之前將其變成評論。

使用DEBUG.PRINT運(yùn)算符進(jìn)行調(diào)試

您可以將debug.print放在功能代碼中的print。這對於檢查週期性變化的變量值很有用。

您可以在下面的屏幕截圖上看到Debug.print的性能的示例。

了解如何在Excel中調(diào)試自定義功能

語句debug.print I,vmax打印值及其序數(shù)。

在接下來的窗口中,您可以從所選範(fàn)圍內(nèi)看到兩個數(shù)字(17和14),這對應(yīng)於設(shè)定限制,其中將選擇最大值。數(shù)字1和2表示該函數(shù)已完成了選擇數(shù)字的2個週期。我們看到了最重要的變量的值,就像MSGBox之前所做的那樣。但這並沒有停止該功能。

從過程中調(diào)用功能

您可以調(diào)用用戶定義的函數(shù),而不是來自工作表中的單元格,而是從一個過程中調(diào)用。在這種情況下,所有錯誤將顯示在“ Visual Basic Editor”窗口中。

這是您可以從一個過程中調(diào)用用戶定義的函數(shù)getMaxber的方式:

sub test() dim x x = getmaxbetween(range( “ a1:a6” ),10,50)msgbox(x) end sub sub

將光標(biāo)放置在代碼中的任何位置,然後按F5 。如果功能沒有錯誤,您將看到一個帶有計算結(jié)果的彈出窗口。

如果發(fā)生錯誤,您將在VBA編輯器中看到一條相應(yīng)的消息。計算將停止,並且發(fā)生錯誤的代碼線將以黃色突出顯示。您可以輕鬆地確定錯誤發(fā)生的位置和原因。

就這樣?,F(xiàn)在,您已經(jīng)創(chuàng)建了自己的加載項,將其添加到Excel中,並且可以在其中使用UDF。如果要使用更多UDFS,只需在VBA編輯器中的“加載項”模塊中寫入代碼,然後保存。

就是這樣。我們涵蓋了調(diào)試自定義功能的不同方法,並學(xué)會瞭如何在您的工作簿中使用它們。我們真的希望您發(fā)現(xiàn)這些準(zhǔn)則有所幫助。如果您有任何疑問,請在本文的評論中寫下。

以上是了解如何在Excel中調(diào)試自定義功能的詳細(xì)內(nèi)容。更多資訊請關(guān)注PHP中文網(wǎng)其他相關(guān)文章!

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費(fèi)脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費(fèi)的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費(fèi)的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強(qiáng)大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Laravel 教程
1597
29
PHP教程
1488
72