vba函數(shù)的數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換
時(shí)間:2013-10-16 17:14 來源:office中國(guó) 作者:admin 閱讀:次
類型轉(zhuǎn)換函數(shù):每個(gè)函數(shù)都可以強(qiáng)制將一個(gè)表達(dá)式轉(zhuǎn)換成某種特定數(shù)據(jù)類型。
CBool(expression)
CByte(expression)
CCur(expression)
CDate(expression)
CDbl(expression)
CDec(expression)
CInt(expression)
CLng(expression)
CSng(expression)
CStr(expression)
CVar(expression)
CStr(expression)
必要的 expression 參數(shù)可以是任何字符串表達(dá)式或數(shù)值表達(dá)式。
說明
如果傳遞給函數(shù)的 expression 超過轉(zhuǎn)換目標(biāo)數(shù)據(jù)類型的范圍,將發(fā)生錯(cuò)誤。
通常,在編碼時(shí)可以使用數(shù)據(jù)類型轉(zhuǎn)換函數(shù),來體現(xiàn)某些操作的結(jié)果應(yīng)該表示為特定的數(shù)據(jù)類型,而不是缺省的數(shù)據(jù)類型。例如,當(dāng)單精度、雙精度或整數(shù)運(yùn)算發(fā)生的情況下,使用 CCur 來強(qiáng)制執(zhí)行貨幣運(yùn)算。
應(yīng)該使用數(shù)據(jù)類型轉(zhuǎn)換函數(shù)來代替 Val,以使國(guó)際版的數(shù)據(jù)轉(zhuǎn)換可以從一種數(shù)據(jù)類型轉(zhuǎn)換為另一種。例如,當(dāng)使用 Ccur 時(shí),不同的小數(shù)點(diǎn)分隔符、千分位分隔符和各種貨幣選項(xiàng),依據(jù)系統(tǒng)的區(qū)域設(shè)置都會(huì)被妥善識(shí)別。
當(dāng)小數(shù)部分恰好為 0.5 時(shí),Cint 和 CLng 函數(shù)會(huì)將它轉(zhuǎn)換為最接近的偶數(shù)值。例如,0.5 轉(zhuǎn)換為 0、1.5 轉(zhuǎn)換為 2。Cint 和 CLng 函數(shù)不同于 Fix 和 Int 函數(shù),F(xiàn)ix 和 Int 函數(shù)會(huì)將小數(shù)部分截?cái)喽皇撬纳嵛迦搿2⑶?Fix 和 Int 函數(shù)總是返回與傳入的數(shù)據(jù)類型相同的值。
使用 IsDate 函數(shù),可判斷 date 是否可以被轉(zhuǎn)換為日期或時(shí)間。Cdate 可用來識(shí)別日期文字和時(shí)間文字,以及落入可接受的日期范圍內(nèi)的數(shù)值。當(dāng)轉(zhuǎn)換一個(gè)數(shù)字成為日期時(shí),是將整數(shù)部分轉(zhuǎn)換為日期,小數(shù)部分轉(zhuǎn)換為從午夜起算的時(shí)間。
CDate 依據(jù)系統(tǒng)上的區(qū)域設(shè)置來決定日期的格式。如果提供的格式為不可識(shí)別的日期設(shè)置,則不能正確判斷年、月、日的順序。另外,長(zhǎng)日期格式,若包含有星期的字符串,也不能被識(shí)別。
CVDate 函數(shù)也提供對(duì)早期 Visual Basic 版本的兼容性。CVDate 函數(shù)的語法與 CDate 函數(shù)是完全相同的,不過,CVDate 是返回一個(gè) Variant,它的子類型是 Date,而不是實(shí)際的 Date 類型。因?yàn)楝F(xiàn)在已有真正的 Date 類型,所以 CVDate 也不再需要了。轉(zhuǎn)換一個(gè)表達(dá)式成為 Date,再賦值給一個(gè) Variant,也可以達(dá)到同樣的效果。也可以使用這種技巧將其他真正的數(shù)據(jù)類型轉(zhuǎn)換為對(duì)等的 Variant 子類型。
注意 CDec 函數(shù)不能返回獨(dú)立的數(shù)據(jù)類型,而總是返回一個(gè) Variant,它的值已經(jīng)被轉(zhuǎn)換為 Decimal 子類型。
附函數(shù)的返回類型和參數(shù)范圍查詢
附函數(shù)的返回類型和參數(shù)范圍查詢
函數(shù) | 返回類型 | expression 參數(shù)范圍 | |||
---|---|---|---|---|---|
CBool | Boolean | 任何有效的字符串或數(shù)值表達(dá)式。 | |||
CByte | Byte | 0 至 255。 | |||
CCur | Currency | -922,337,203,685,477.5808 至922,337,203,685,477.5807。 | |||
CDate | Date | 任何有效的日期表達(dá)式。 | |||
CDbl | Double | 負(fù)數(shù)從 -1.79769313486231E308 至 -4.94065645841247E-324;正數(shù)從 4.94065645841247E-324 至 1.79769313486232E308。 | |||
CDec | Decimal |
零變比數(shù)值,即無小數(shù)位數(shù)值,為 +/-79,228,162,514,264,337,593,543,950,335。對(duì)于 28 位小數(shù)的數(shù)值,范圍則為 +/-7.9228162514264337593543950335;最小的可能非零值是 0.0000000000000000000000000001。 |
|||
CInt | Integer | -32,768 至 32,767,小數(shù)部分四舍五入。 | |||
CLng | Long | -2,147,483,648 至 2,147,483,647,小數(shù)部分四舍五入。 | |||
CSng | Single | 負(fù)數(shù)為 -3.402823E38 至 -1.401298E-45;正數(shù)為 1.401298E-45 至 3.402823E38。 | |||
CStr | String | 依據(jù) expression 參數(shù)返回 Cstr。 | |||
CVar | Variant | 若為數(shù)值,則范圍與 Double 相同;若不為數(shù)值,則范圍與 String 相同。 |
(責(zé)任編輯:admin)
頂一下
(1)
100%
踩一下
(0)
0%
相關(guān)內(nèi)容
- ·關(guān)于 Partition 函數(shù)在分組查詢中的應(yīng)
- ·Access算術(shù)運(yùn)算符的含義和說明表
- ·mid函數(shù)的另類用法
- ·access制作程序運(yùn)行進(jìn)度框
- ·Function與Sub的異同(函數(shù)調(diào)用)
- ·Access判斷某個(gè)數(shù)值是否為某個(gè)數(shù)據(jù)類型
- ·select case后面語句塊的值的四種格式
- ·vba條件語句的兩種表示方法
- ·Access幾種數(shù)據(jù)類型初始化的值
- ·Access vba null與""空字符串的區(qū)別
- ·access vba 數(shù)據(jù)類型表
- ·Access變量的命名規(guī)則
- ·Access中EXIT Sub與End Sub的區(qū)別
- ·Access vba中參數(shù)前關(guān)鍵字ByRef和ByVal
- ·Access列表框快速全選的技巧【最快】
- ·vba函數(shù)的數(shù)據(jù)類型強(qiáng)制轉(zhuǎn)換
最新內(nèi)容
推薦內(nèi)容
熱點(diǎn)內(nèi)容