最近筆者接到一個(gè)任務(wù),要將學(xué)生的證書(shū)信息及相片打印到3 1技能證書(shū)模板上,并且還要傳到網(wǎng)上供用人單位查詢。原始數(shù)據(jù)分兩部分,一部分是包含學(xué)生姓名、身份證號(hào)、認(rèn)證項(xiàng)目、證書(shū)編號(hào)等信息的Excel表;另一部分是按認(rèn)證項(xiàng)目分類、以學(xué)生姓名為名的相片,圖片大小均為90×120像素,圖片格式均為JPG
考慮到時(shí)間上的緊迫性,還有用戶操作的易用性,以后上網(wǎng)查詢所需數(shù)據(jù)庫(kù)的兼容性,因此決定選用Access來(lái)開(kāi)發(fā)。Access具有強(qiáng)大的窗體創(chuàng)建、報(bào)表打印、VBA編程功能,足以勝任大部分小型數(shù)據(jù)庫(kù)應(yīng)用系統(tǒng)的開(kāi)發(fā)。
創(chuàng)建數(shù)據(jù)庫(kù)和表
1. 打開(kāi)Microsoft Office Access,創(chuàng)建一個(gè)空數(shù)據(jù)庫(kù),與相片的分類目錄放在同一個(gè)文件夾下。
2. 使用“文件→獲取外部數(shù)據(jù)→導(dǎo)入”功能將Excel表直接導(dǎo)入Access中,保存為“證書(shū)信息”表。
創(chuàng)建證書(shū)信息報(bào)表
1. 創(chuàng)建“證書(shū)信息”報(bào)表,先插入一個(gè)“圖像”控件,設(shè)置其圖片屬性為證書(shū)模板圖片,設(shè)置其大小為證書(shū)模板的大小,設(shè)置其可見(jiàn)性為否,這樣有利于證書(shū)信息的排版,且不會(huì)打印出來(lái);再依次插入要打印的字段列表,設(shè)置好字體和字號(hào);最后再插入一個(gè)“圖像”控件,放置于打印相片的地方,設(shè)置其大小為相片的大小,設(shè)置其名稱為“stuimg”。
2. 依次點(diǎn)擊菜單欄“視圖→代碼”命令,進(jìn)入VBA代碼編寫窗口,編寫如下代碼:
Private Sub 主體_Format(Cancel As Integer, FormatCount As Integer)
Dim imgpath As String
' 依據(jù)應(yīng)用程序路徑、認(rèn)證項(xiàng)目名稱、姓名得到相片路徑
imgpath = Application.CurrentProject.Path +"/" +認(rèn)證項(xiàng)目.text +"/"+ 姓名.Text+".jpg"
' 判斷照片是否存在,如果不存在則顯示一張空白的圖片。
If Dir(imgpath) = "" Then imgpath = Application.CurrentProject.Path + "/noimg.bmp"
Stuimg.Picture = imgpath
End Sub
新聞熱點(diǎn)
疑難解答
圖片精選