您的位置:首頁(yè) > 軟件教程 > 教程 > 在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

來(lái)源:三聯(lián) | 時(shí)間:2015-11-10 20:14:04 | 閱讀:71 |  標(biāo)簽: excel   | 分享到:

excel是辦公尤其是處理數(shù)據(jù)的一個(gè)好幫手,他能給需要進(jìn)行各類數(shù)據(jù)處理提供很強(qiáng)大的支持,這是我在工作中遇到的一個(gè)問題,是這樣的,比如有兩個(gè)單元格有固定值,而另外還有一個(gè)單元格需要取隨機(jī)數(shù),但又要求不要和那兩個(gè)有固定值得單元格重復(fù)。如何取呢?隨機(jī)函數(shù)?rand()和randbetween()都可以,但是一時(shí)間還真想不出滿足要求的寫法。于是我想用VBA編寫也許更簡(jiǎn)單。于是就有了下文。

工具/原料

方法/步驟

這里為了方便驗(yàn)證,我們將隨機(jī)數(shù)值盡量取小一點(diǎn),如果你要大一些的隨機(jī)數(shù),可以修改程序。

設(shè)在D1單元格里取隨機(jī)數(shù)(1——5之間),A1、B1單元格為有固定數(shù)值的單元格,當(dāng)然數(shù)值范圍也在1——5直接,否則毫無(wú)意義。

在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

要編寫VBA,首先就要打開VBA,打開VBA的方法不止一種,這里我們就使用最簡(jiǎn)單最快捷的方式,使用快捷鍵吧。按“Alt+F11”打開VBA窗口。VBA窗口右側(cè)子窗口就是輸入代碼用的。

在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

輸入代碼,如下:

Public Sub btsj()Dim sjd As Range Set sjd = Range("D1")line1: sjd.ClearContents Randomize sjd = Int(Rnd * 5 + 1) If sjd = Range("A1") Or sjd = Range("B1") ThenGoTo line1End IfEnd Sub

在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

完成后就可以試運(yùn)行并保存,運(yùn)行是那個(gè)小三角,好像播放圖標(biāo)一樣的,保存的圖標(biāo)不用多說(shuō)。點(diǎn)擊小三角圖標(biāo)后可能會(huì)彈出一個(gè)窗口,再點(diǎn)擊運(yùn)行即可。

在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

為了快速驗(yàn)證,我們可以給宏加上快捷鍵,如圖所示,這里我們給它設(shè)置快捷鍵“Ctrl+s”,現(xiàn)在我們只要按Ctrl+s就可以快速運(yùn)行該宏/程序了。

在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法匯總

注意事項(xiàng)

編寫VBA程序的時(shí)候要細(xì)心,如果有錯(cuò)誤提示,需要理性分析,耐心檢查。

以上就是在excel中不包含一些單元格數(shù)值的隨機(jī)數(shù)方法介紹,大家學(xué)會(huì)了嗎?希望能對(duì)大家有所幫助!

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點(diǎn)或證實(shí)其描述。

相關(guān)視頻攻略

更多

掃二維碼進(jìn)入好特網(wǎng)手機(jī)版本!

掃二維碼進(jìn)入好特網(wǎng)微信公眾號(hào)!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]

湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2024 haote.com 好特網(wǎng)