VB6 0函式集合

2021-05-27 23:42:29 字數 4945 閱讀 6223

**:

(一)型別轉換類函式

1. ctype(x)

[格式]:

p=cbool(x) ' 將x轉換為「布林」(boolean)型別

p=cbyte(x) ' 將x轉換為「位元組」(byte)型別

p=ccur(x) ' 將x轉換為「金額」(currency)型別

p=cdate(x) ' 將x轉換為「日期」(date)型別

p=cdbl(x) ' 將x轉換為「雙精度」(double)型別

p=cint(x) ' 將x轉換為「整型」(integer)型別

p=clng(x) ' 將x轉換為「長整型」(long)型別

p=csng(x) ' 將x轉換為「單精度」(single)型別

p=cstr(x) ' 將x轉換為「字串」(string)型別

p=cvar(x) ' 將x轉換為「變體型」(variant)型別

p=cverr(x) ' 將x轉換為error值

[ 範例 ]:

(1). cstr(13)+cstr(23)

' 數值轉換成字串後,用"+"號連線, 結果:1323

(2). cint("12")+12

' 字串轉換成整型後與12相加, 結果:24

(3). p=cint(true)

' 輸出結果為-1

' 布林值與數值的轉換時要注意,布林值只有true和false,其中true在記憶體中為-1,false存為0

(4). cbool(-0.001)

' 輸出結果為true

' 將數值轉換為布林型時,等於0的數值將得到false,不等於0的數值得到true.

2. int(x),fix(x):取x的整數值

[格式]:

p=int(x) ' 取<=x的最大整數值

p=fix(x) ' 取x的整數部分,直接去掉小數

[範例]:

(1) int(-54.6)

' 結果為-55,取<=-54.6的最大整數

(2) fix(54.6)

' 結果為54,取整數並直接去掉小數

(二)常用數學函式

[格式]:

1. abs(n) 取絕對值

例:abs(-3.5) 結果:3.5

2. cos(n) 余弦函式

例:cos(0) 結果:1

3. exp(n) e為底的指數函式

例:exp(3) 結果:20.068

4. log(n) 以e為底的自然對數

例:log(10) 結果:2.3

5. rnd[(n)] 產生隨機數

例:rnd 結果:0--1之間的數

6. sin(n) 正弦函式

例:sin(0) 結果:0

7. sgn(n) 符號函式

' 說明:取正負號。y=sgn(x) 既 x>0 則y=1;x=0 則y=0;x<0 則y= -1

8. sqr(n) 平方根

例:sqr(9) 結果:3

9. tan(n) 正切函式

例:tan(0) 結果:0

10.atn(n) 反切函式

例:atn(0) 結果:0

[注意]:在三角函式中,以弧度表示。

(一)字串類函式:

1. asc(x),chr(x):轉換字元字元碼

[格式]:

p=asc(x) 返回字串x的第乙個字元的字元碼

p=chr(x) 返回字元碼等於x的字元

[範例]:

(1)p=chr(65)

『 輸出字元a,因為a的ascii碼等於65

(2)p=asc(「a」)

『 輸出65

2. len(x): 計算字串x的長度

[格式]:

p=len(x)

[說明]:

空字串長度為0,空格符也算乙個字元,乙個中文字雖然占用2 bytes,但也算乙個字元。

[範例]:

(1) 令x=」」 (空字串)

len(x) 輸出結果為0

(2) 令x=」abcd」

len(x) 輸出結果為4

(3) 令x=」vb教程」

len(x) 輸出結果為4

3. mid(x)函式:讀取字串x中間的字元

[格式]:

p=mid(x,n)

由x的第n個字元讀起,讀取後面的所有字元。

p=mid(x,n,m)

由x的第n個字元讀起,讀取後面的m個字元。

[範例]:

(1) x=」abcdefg」

p=mid(x,5)

結果為:p=」efg」

(2) x=」abcdefg」

p=mid(x,2,4)

結果為p=」bcde」

4. replace: 將字串中的某些特定字串替換為其他字串

[格式]:

p=replace(x,s,r)

[說明]:將字串x中的字串s替換為字串r,然後返回。

[範例]:

x=」vb is very good」

p=replace(x,good,nice)

輸出結果為:p=」vb is very nice」

5. strreverse:反轉字串

[格式]:

p=strreverse(x)

[說明]:

返回x引數反轉後的字串

[範例]:

(1)x=」abc」

p=strreverse(x)

輸出結果:p=」cba」

6. ucase(x),lcase(x):轉換英文本母的大小寫

[格式]:

p=lcase(x)

『 將x字串中的大寫字母轉換成小寫

p=ucase(x)

『 將x字串中的小寫字母轉換成大寫

[說明]:除了英文本母外,其他字元或中文字都不會受到影響。

[範例]:

(1) 令 x=」vb and vc」

則lcase(x)的結果為」vb and vc」,ucase(x)的結果為」vb and vc」

7. instr函式:尋找字串

[格式]:

p=instr(x,y)

從x第乙個字元起找出y出現的位置

p=instr(n,x,y)

從x第n個字元起找出y出現的位置

[說明]:

(1) 若在x中找到y,則返回值是y第乙個字元出現在x中的位置。

(2) instr(x,y)相當於instr(1,x,y)。

(3) 若字串長度,或x為空字串,或在x中找不到y,則都返回0。

(4) 若y為空字串,則返回0。

日期時間類函式:

1. year(x),month(x),day(x):取出年,月,日

[格式]:

p=year(x)

取出x「年」部分的數值

p=month(x)

取出x「月」部分的數值

p=day(x)

取出x「日」部分的數值

[說明]:year返回的是公元年,若x裡只有時間,沒有日期,則日期視為#1899/12/30#

2. hour,minute,second函式:取出時,分,或秒

[格式]:

p=hour(x)

取出x「時」部分的數值

p=minute(x)

取出x「分」部分的數值

p=second(x)

取出x「秒」部分的數值

[說明]:hour的返回值是0---23之間

[範例]:

x=10:34:23

p=hour(x)

q=minute(x)

r=second(x)

則輸出結果:p=10,q=34,r=23

3. dateserial函式:合併年,月,日成為日期

[格式]:dateserial(y,m,d)

其中y是年份,m為月份,d為日期

[說明]:

(1) m值若大於12,則月份從12月起向後推算m-12個月;若小於1,則月份從1月起向後推算1-m個月。

(2) 若日期d大於當月的日數,則日期從當月的日數起,向後推算d-當月日數;若小於1,則日期從1日起向前推算1-d日。

[範例]:

p=dateserial(2000,02,02)

則結果為p=2000/02/02

4.timeserial函式:合併時,分,秒成為時間

[格式]:p=timeserial(h,m,s)

其中h為小時數,m為分鐘數,s為秒數

[說明]:推算原理同上面的dateserial

[範例]:

p=timeserial(6,32,45)

結果為:p=6:32:45

5.date,time,now函式:讀取系統的日期時間

[格式]:

p=date()

p=time()

p=now()

[說明]:這三個函式都無引數

[範例]:

若當前時間為2023年8月29日晚上19點26分45秒,則

p=now()

結果為:p=2003-08-29 19:26:45

6.monthname:返回月份名稱

[格式]:p=monthname(x)

[說明]:x引數可傳入1---12,則返回值為「一月」、「二月」……,但是在英文windows環境下,返回的是」january」,」february」……

[範例]:

p=monthname(1)

則p=「一月」

7.weekdayname:返回星期名稱

[格式]:p=weekdayname(x)

[說明]:x引數可傳入1—7,則返回值為「星期日」,「星期一」……,但是在英文windows環境下,返回的是」sunday」,」monday」……

[範例]:

p=weekdayname(1)

結果為:p=」星期日」

標題vb常用函式輯

VB6 0 程式設計入門

識別符號 使用者在程式設計時定義的名稱。關鍵字 vb中擁有固定含義 不能被重新定義的識別符號。常見關鍵字 as 定義乙個變數 date 日期函式 else 條件語句中的 否則 error 錯誤物件 let 屬性定義的關鍵字 me 當前物件 null 表示變數不包含有效資料 nothing 將物件變數...

VB6 0中MsgBox函式的Bug

這個bug我發現已久但沒有貼出來,今天貼出來與大家共享以下。msgbox函式真的很方便,但大家不妨試試將乙個form startupposition設為2 用api函式setwindowpos置於最上,然後在這個form中呼叫msgbox函式,怎麼樣,程式沒反應了吧。其實它的原理很簡單,msgbox...

個人筆記 VB6 0入門

未定義的變數賦值為0 預設 dim m as integer,j as integer,x as single,s as string k 等效於 dim m j x s k 乙個簡單的練習如下 option explicit private sub text1 lostfocus if not i...