1、使窗體或報(bào)表的文本框隨文字的多少自動(dòng)加大或縮小:
文本框?qū)傩浴翱梢詳U(kuò)大”
2、控制某字段只能填寫某些內(nèi)容:也許你想讓使用程序的人只能在某個(gè)字段里a,那么你就得控制他不難讓他填b。具體表達(dá)式為
=Instr("abc",[A])>0
3、并置幾個(gè)字段:也許你填表時(shí)有兩個(gè)字段分別是“湖北大學(xué)”、“數(shù)學(xué)專業(yè)”,但當(dāng)你在打印報(bào)表時(shí)卻想讓這兩個(gè)了段變?yōu)橐粋€(gè)字段放在一起,即“湖北大學(xué)數(shù)學(xué)專業(yè)”,那么最好的辦法就是并置。表達(dá)式為:
=([A]&[B])或者=([A]&""&[B])
4、查詢中的計(jì)算字段:也許在您的表中有兩個(gè)數(shù)字字段,然后您想在報(bào)表中出現(xiàn)一個(gè)關(guān)于這兩個(gè)字段關(guān)系的字段,那么簡(jiǎn)單的方法就是計(jì)算,這計(jì)算可以加,可以減,可以乘,可以除,視情況而定。表達(dá)式為:
名稱:[A]*[B](這里假設(shè)相乘,“名稱”可自定)
5、計(jì)算年齡表達(dá)式:有人喜歡在表中設(shè)計(jì)錄入一個(gè)人的年齡,這不是聰明的做法。因?yàn)槊總€(gè)人的年齡是在不斷增加的,到下一年再重新進(jìn)行大批量重新錄入,那就沒有電腦的智能作用。最好的做法是在表中設(shè)計(jì)一個(gè)身份證號(hào)碼字段。有了這個(gè)字段后,某人的“年齡”和“性別”都是可以確定的,而且一勞永逸,除非你不會(huì)把你計(jì)算機(jī)的系統(tǒng)時(shí)間調(diào)準(zhǔn)確。這里是假設(shè)表中已經(jīng)有“出生年月”字段以后通過(guò)它確定“年齡”的表達(dá)式:
=Datediff("yyyy",[A],now())
6、在窗體或報(bào)表進(jìn)行值轉(zhuǎn)換:有時(shí)候想將表中的在窗體或其他地方顯示為你想要的內(nèi)容,辦法就是進(jìn)行值轉(zhuǎn)換。比如表中有“出生年月”的記錄,你想在窗體不顯示具體的出生年月,而顯示“今天是這人的生日”或“這人距生日還有x天”這樣的信息,或者有一個(gè)“分?jǐn)?shù)”字段而你卻想在窗體上顯示出某學(xué)生是“優(yōu)生”、“差生”、“及格”等信息,你要用上以下表達(dá)式:
=iif([A]=x,"y",iif([A]=z,"p","m"))
7、在窗體中對(duì)某字段進(jìn)行數(shù)據(jù)鎖定:在用窗體編輯數(shù)據(jù)時(shí),有時(shí)你可能不想讓人對(duì)其中某一個(gè)或幾個(gè)字段進(jìn)行修改,那么,你得對(duì)不想讓人修改的字段進(jìn)行鎖定。其方法:
字段-屬性-數(shù)據(jù)-是否鎖定-是
8、求和表達(dá)式:對(duì)兩個(gè)以上字段值進(jìn)行求和,表達(dá)式為:
=Sum([A]+[B]+……)
9、標(biāo)簽并置并且格式化數(shù)字字段:如果你想將表中電話號(hào)碼“13972088783”在窗體或報(bào)表顯示時(shí)變?yōu)椤?397-2088783”,你就得用以下表達(dá)式:
=Trim([A]& ","&[B]&""Format([C],"@@@@-@@@@@@"))
10、并置運(yùn)算:
安符與非字符:="今天日期是:"&date()
字段與字段: =[A]+[B]
字段與字符: =[A] &"abc"(A、B、C為任意字符)
11、顯示帶有文本的系統(tǒng)日期:
="今天是:"+cstr(date())
12、把字段內(nèi)容直接嵌入文本表達(dá)式:如果你想讓打印的報(bào)表的表頭隨調(diào)入的動(dòng)態(tài)數(shù)據(jù)的改變而跟著改變,你必須用此方法:
=[單位名稱]&"教職工花名冊(cè)"
=format(now(),"yyyy")&[單位名稱]&"教職總數(shù)"
="這位同學(xué)名叫"&[姓名]&",""其中考總成績(jī)?yōu)?&[總成績(jī)]&"。"
13、在查詢中更改字段名稱:
新名稱:(放在原字段前)
14、返回確定日期段的數(shù)字值:
Datepart(interval,date,firstweekday,firstweek)
15、查詢窗體打開時(shí)不顯示空白的代碼:按某種條件進(jìn)行查詢,目的是要打開一個(gè)顯示窗體??墒怯袝r(shí)候或因?yàn)檩斿e(cuò)條件,或因?yàn)楦緵]這個(gè)記錄,那么你可能得到一個(gè)非常讓你失望的呆板的“白板窗體”。避免這種情況發(fā)生的做法就是,在該窗體的“打開”屬性中輸入以下代碼:
On Error GoTo err
DoCmd.GoToRecord , , acLast
i = Me.CurrentRecord
DoCmd.GoToRecord , , acFirst
exit_form_open:
Exit Sub
err:
MsgBox "您要查找的數(shù)據(jù)不存在,請(qǐng)核實(shí)后重新輸入。"
DoCmd.Close
16、設(shè)置默認(rèn)值的技巧:在表中輸入也好,在窗體中輸入也好,將某些字段設(shè)一個(gè)默認(rèn)值并不困難,但是,要保證不同的用戶能夠隨時(shí)重設(shè)默認(rèn)值,就顯得麻煩一些。具體的思路是:先預(yù)設(shè)一個(gè)窗體供用戶在其中更改默認(rèn)值,然后,讓你的錄入窗體的各個(gè)字段直接在用戶已經(jīng)預(yù)設(shè)好默認(rèn)值里讀取預(yù)設(shè)信息。
17、顯示動(dòng)態(tài)記錄個(gè)數(shù)的方法:查找記錄時(shí),有時(shí)你查找到的可能并不只有一個(gè)記錄,特別是進(jìn)行模糊查詢是更是如此。那么,到底有多少個(gè)記錄呢?你需要在窗體設(shè)計(jì)時(shí),在合適的位置上加一個(gè)文本框,然后在里面輸入以下表達(dá)式:
="您已經(jīng)找到了"&count([a])&"個(gè)符合條件的記錄。"(“a”是表中的字段名稱)
18、在學(xué)生信息的查詢結(jié)果窗口內(nèi),你可以看到一個(gè)關(guān)于記錄數(shù)量的提示,有時(shí)顯示“符合條件的記錄只有一個(gè)”,而有時(shí)顯示“符合條件的記錄共有x個(gè)……”。如何實(shí)現(xiàn)的呢?這里有一個(gè)復(fù)雜的表達(dá)式如下:
="符合條件的對(duì)象" & IIf(Sum([同名合計(jì)])=1,"只","共") & "有" & Sum([同名合計(jì)]) & "人 " & IIf((Sum([同名合計(jì)]))>1,"請(qǐng)按PAGEDOWN鍵查看下一個(gè)","")
19、查詢結(jié)果窗上,還有一個(gè)關(guān)于“學(xué)習(xí)進(jìn)步”的祝詞,如果碰巧你查詢到的孩子那天生日,下面會(huì)提示“嘿嘿,今天是這孩子生日啊,讓我們祝他生日快樂!”。這里也有一個(gè)條件表達(dá)式:
=IIf(Month([出生年月])=Month(Now()) And Day([出生年月])=Day(Now()),"嘿嘿,今天是這孩子生日啊!讓我們祝" & [姓名] & "生日快樂!!","好人一生平安!祝" & [姓名] & "同學(xué)學(xué)習(xí)進(jìn)步,茁壯成長(zhǎng)!")
更多信息請(qǐng)查看IT技術(shù)專欄