• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看 ?

      用VBA批量生成打印考生成績(jī)通知單

      2009-03-02 02:43:52向德海
      關(guān)鍵詞:通知單成績(jī)單書簽

      向德海

      在日常工作中,中小學(xué)教師經(jīng)常需要將以Excel格式錄入的考生成績(jī)數(shù)據(jù)轉(zhuǎn)換成Word文本的成績(jī)通知單,并將考生成績(jī)單批量打印后發(fā)至每一位考生手中。以往,我們是借助于Word的郵件合并功能來解決這一問題,經(jīng)過筆者的探索,運(yùn)用ExcelVBA,打開Word模板文件也可實(shí)現(xiàn)上述目的。

      一、準(zhǔn)備數(shù)據(jù)

      在該程序中要使用兩個(gè)文件,一是用Excel制作的學(xué)生成績(jī)表,另一個(gè)是用Word制作的“成績(jī)通知單”。具體步驟如下。

      第一步,在工作簿中新建一個(gè)工作表,命名為“Temp”,將成績(jī)表中第1行表頭復(fù)制到Temp表第1行中保存,命名該工作簿為“成績(jī)數(shù)據(jù)”。

      第二步,打開Word2003,建立文檔,并進(jìn)行相應(yīng)的版式和格式設(shè)置。

      第三步,將光標(biāo)定位在“同學(xué)的家長(zhǎng)”前面,執(zhí)行“插入→書簽”命令,打開“書簽”對(duì)話框,在“書簽名”中輸入“students”,單擊“添加”按鈕,在光標(biāo)處添加一個(gè)書簽,VBA程序可查找書簽,并在書簽處插入學(xué)生姓名。用同樣的方法,在“學(xué)號(hào)”對(duì)應(yīng)表格中插入書簽“xuehao”,在“姓名”、“語(yǔ)文”、“數(shù)學(xué)”、“英語(yǔ)”、“體育”、“總分”、“名次”對(duì)應(yīng)單元格中分別插入書簽“xingming”、“yuwen”、“shuxue”、“yingyu”、“tiyu”、“zongfen”、“mingci”。在“教師評(píng)語(yǔ)”的下一行插入書簽“pingyu”。

      第四步,將制作好的文檔和“成績(jī)數(shù)據(jù)”工作簿保存在同一文件目錄下,命名為“成績(jī)通知單.dot”模板文件,關(guān)閉文檔。

      二、編寫VBA代碼

      數(shù)據(jù)文件準(zhǔn)備好后,就可以在Excel中編寫VBA代碼了,調(diào)用Word服務(wù)程序來生成并打印每個(gè)學(xué)生的成績(jī)通知書。

      打開剛才建立的“成績(jī)數(shù)據(jù)”工作簿,在“成績(jī)表”工作表中,執(zhí)行“工具→宏→Visul Basic編輯器”命令,在Visul Basic編輯器中選擇“插入→添加模塊”,插入模塊1,在代碼窗口輸入以下代碼:

      Dim iCount As Integer

      Sub 生成打印成績(jī)單()

      Application.ScreenUpdating = False ' 關(guān)閉執(zhí)行程序時(shí)發(fā)生的屏幕更新,加快運(yùn)行速度。

      On Error GoTo Pro1:

      Sheets("成績(jī)表").Select

      iCount = [A65536].End(xlUp).Row '計(jì)算數(shù)據(jù)行數(shù)

      For i = 2 To iCount

      Range(Cells(i, 1), Cells(i, 9)).Select'選擇單元格區(qū)域

      Selection.Copy

      Sheets("Temp").Select '選擇Temp工作表

      Range("A2").Select

      ActiveSheet.Paste'粘貼到2行

      Application.CutCopyMode = False

      CreateWord

      Sheets("成績(jī)表").Select

      Next i

      Pro1:

      End Sub

      Sub CreateWord()

      On Error GoTo Pro2:

      Dim WordAPP As Object, myWord As Object '聲明Word應(yīng)用程序?qū)ο蠹拔臋n對(duì)象

      Set WordAPP = CreateObject("Word.Application")

      Set myWord = WordAPP.documents.Open(Filename:=Application.ActiveWorkbook.Path & "成績(jī)通知單.DOT") '打開模版文件

      WordAPP.Visible = True'設(shè)置應(yīng)用程序Word可見

      With WordAPP.Selection'開始向WORD文件寫入內(nèi)容

      myWord.Bookmarks("students").Range = Worksheets("Temp").Range("B2")

      myWord.Bookmarks("xuehao").Range = Worksheets("Temp").Range("A2")

      myWord.Bookmarks("xingming").Range = Worksheets("Temp").Range("B2")

      myWord.Bookmarks("yuwen").Range = Worksheets("Temp").Range("C2")

      myWord.Bookmarks("shuxue").Range = Worksheets("Temp").Range("D2")

      myWord.Bookmarks("yingyu").Range = Worksheets("Temp").Range("E2")

      myWord.Bookmarks("tiyu").Range = Worksheets("Temp").Range("F2")

      myWord.Bookmarks("zongfen").Range = Worksheets("Temp").Range("G2")

      myWord.Bookmarks("mingci").Range = Worksheets("Temp").Range("H2")

      myWord.Bookmarks("pingyu").Range = Worksheets("Temp").Range("I2")

      End With

      WordAPP.PrintOut Copies:=1, Collate:=True 5打印文檔

      myWord.Saved = True5不保存文檔

      myWord.Close'關(guān)閉并退出當(dāng)前Word文檔

      WordAPP.Quit

      Set myWord = Nothing

      Set WordAPP = Nothing

      Pro2:

      End Sub

      輸入完成后,保存關(guān)閉VBA編輯窗口,返回到“成績(jī)表”工作表。

      三、生成通知單

      運(yùn)行以上代碼就可以自動(dòng)生成并打印每位考生的成績(jī)通知單了。為便于程序執(zhí)行,我們還可在“成績(jī)表”工作表中添加一個(gè)按鈕。執(zhí)行“視圖→工具欄→控件工具箱”命令,單擊“命令按鈕”,在工作表中畫出一個(gè)命令按鈕。右擊命令按鈕,在出現(xiàn)的快捷菜單中,選擇“屬性”選項(xiàng),打開“屬性”設(shè)置對(duì)話框。切換到“按分類序”標(biāo)簽下,展開“外觀”選項(xiàng),將“Caption”選項(xiàng)右側(cè)的字符修改為“生成打印成績(jī)單”,為按鈕設(shè)置顏色及字體屬性。再展開“雜項(xiàng)”選項(xiàng),將“PrintObject”選項(xiàng)設(shè)置為“False”,設(shè)置完成后,關(guān)閉“屬性”對(duì)話框。

      雙擊剛才添加的命令按鈕,再次進(jìn)入VBA編輯狀態(tài),將“生成打印成績(jī)單”(上述代碼中的宏名稱)字符輸入到已經(jīng)出現(xiàn)的兩行代碼之間:

      Private Sub CommandButton1_Click()

      生成打印成績(jī)單

      End Sub

      輸入完成后,關(guān)閉VBA編輯狀態(tài),返回工作表中。調(diào)整按鈕的大小,將按鈕定位在表格中的適當(dāng)位置,再按下“控件工具箱”上的“退出設(shè)計(jì)模式”按鈕。

      單擊“生成打印成績(jī)單”按鈕,執(zhí)行前面編寫的代碼,就可以自動(dòng)生成并打印每一位考生的成績(jī)通知單。

      在上述程序中,通過循環(huán)對(duì)每一位學(xué)生生成一份成績(jī)通知書。如果學(xué)生人數(shù)很多,該程序運(yùn)行可能較慢。我們還可以添加代碼保存所有成績(jī)單到指定的路徑,有興趣的讀者可以自己去體會(huì)。

      (作者單位:湖北荊門市人事考試中心)

      猜你喜歡
      通知單成績(jī)單書簽
      兩份田租通知單:慈善是社會(huì)發(fā)展的重要保障
      兩份田租通知單
      國(guó)家標(biāo)準(zhǔn)勘誤更正通知單
      透明書簽
      十一月書簽
      文苑·感悟(2019年11期)2019-12-05 02:50:31
      十一月書簽
      文苑(2019年21期)2019-11-04 09:16:40
      貳月書簽
      文苑·感悟(2019年2期)2019-02-18 02:10:40
      2018上半年糾“四風(fēng)”成績(jī)單
      廉政瞭望(2018年13期)2018-08-06 06:25:34
      曬曬全面深改成績(jī)單
      成績(jī)單的妙用
      泊头市| 兴文县| 武胜县| 麻栗坡县| 蛟河市| 兴文县| 罗定市| 遂川县| 广昌县| 永昌县| 辽宁省| 大竹县| 新郑市| 靖边县| 台南市| 营山县| 白河县| 山阴县| 周宁县| 罗定市| 汉中市| 麻阳| 滦平县| 郧西县| 孝昌县| 沅陵县| 广元市| 九寨沟县| 金昌市| 泗水县| 淮南市| 抚松县| 鄂尔多斯市| 鄂伦春自治旗| 湖南省| 伊春市| 丰台区| 丁青县| 辉县市| 苏尼特右旗| 饶阳县|