MSCBSC 移動(dòng)通信論壇
搜索
登錄注冊(cè)
網(wǎng)絡(luò)優(yōu)化工程師招聘專(zhuān)欄 4G/LTE通信工程師最新職位列表 通信實(shí)習(xí)生/應(yīng)屆生招聘職位

  • 閱讀:19812
  • 回復(fù):1
【例子】第三講 Excel對(duì)象綜合應(yīng)用例子
鄭東文
初級(jí)會(huì)員
鎵嬫満鍙風(fēng)爜宸查獙璇? style=


 發(fā)短消息    關(guān)注Ta 

積分 140
帖子 27
威望 17571 個(gè)
禮品券 0 個(gè)
專(zhuān)家指數(shù) 5
注冊(cè) 2019-1-2
專(zhuān)業(yè)方向 
回答問(wèn)題數(shù) 0
回答被采納數(shù) 0
回答采納率 0%
 
發(fā)表于 2019-12-14 17:02:57  只看樓主 

已知某年段學(xué)生期末成績(jī)表如圖,現(xiàn)需寫(xiě)一個(gè)可按學(xué)號(hào)查詢(xún)學(xué)生成績(jī)的宏,要求如下:

1)支持一次查詢(xún)多個(gè)學(xué)號(hào)記錄

2)反饋查詢(xún)結(jié)果,結(jié)果分查到和未查到兩種情況3)為每條查詢(xún)到的成績(jī)記錄單獨(dú)創(chuàng)建一個(gè)WorkBook來(lái)保存并按學(xué)號(hào)加日期命名文件,保存成績(jī)的工作表按學(xué)號(hào)命名。

image.png

image.png

'源代碼

第三講 例子.rar

'按學(xué)號(hào)批量查詢(xún)成績(jī)

Sub SearchScoreBySn()

Dim intR As Integer '行號(hào)

Dim intC As Integer '列號(hào)

Dim Col_SearchSn As New Collection '查詢(xún)學(xué)號(hào)集合

Dim intColIndex As Integer '集合下標(biāo)

Dim Dic_Score   As Object '成績(jī)字典

Dim strSerRes As String '查詢(xún)結(jié)果

Dim Wb_SerRec As Workbook '保存查詢(xún)記錄工作簿

Dim Ws_SerRec As Worksheet '保存查詢(xún)記錄工作表

Dim strFileName As String '保存文件名

'>>>讀取查詢(xún)學(xué)號(hào)>>>

intR = 2

Do While (Sheet2.Cells(intR, 1) <> "") '判斷是否讀到最后一行

    Col_SearchSn.Add Sheet2.Cells(intR, 1) '添加到查詢(xún)學(xué)號(hào)集合

    intR = intR + 1

Loop

'<<<讀取查詢(xún)學(xué)號(hào)


'>>>創(chuàng)建成績(jī)字典>>>

intR = 2

Set Dic_Score = CreateObject("scripting.dictionary")

Do While (Sheet1.Cells(intR, 1) <> "") '判斷是否讀到最后一行

    Dic_Score.Add CStr(Sheet1.Cells(intR, 1)), intR '以學(xué)號(hào)為關(guān)鍵字,學(xué)號(hào)所在行為值

    intR = intR + 1

Loop

'<<<創(chuàng)建成績(jī)字典<<<


'>>>查詢(xún)成績(jī)并輸出>>>

For intColIndex = 1 To Col_SearchSn.Count

    If Dic_Score.exists(CStr(Col_SearchSn(intColIndex))) Then '查詢(xún)指定學(xué)號(hào)的成績(jī)是否存在

       strSerRes = "查到"

       Set Wb_SerRec = Workbooks.Add ' wb_serrec指向新創(chuàng)建工作簿

       Set Ws_SerRec = Wb_SerRec.Sheets(1) 'ws_serrec指向wb_serrec第一個(gè)工作表

       Ws_SerRec.Name = CStr(Col_SearchSn(intColIndex)) '工作表名稱(chēng)命名為學(xué)號(hào)

       intC = 1

       intR = Dic_Score(CStr(Col_SearchSn(intColIndex)))

       Do While (Sheet1.Cells(1, intC) <> "")

          Ws_SerRec.Cells(1, intC) = Sheet1.Cells(1, intC) '把成績(jī)表的標(biāo)題字段賦值到ws_serrec第一行

          Ws_SerRec.Cells(2, intC) = Sheet1.Cells(intR, intC) '把成績(jī)表的數(shù)據(jù)賦值到ws_serrec第二行

          intC = intC + 1

       Loop

       strFileName = "D:" & CStr(Col_SearchSn(intColIndex)) & "_" & Date & ".xlsx"

       Wb_SerRec.SaveAs strFileName

       Wb_SerRec.Close

    Else

       strSerRes = "未查到"

    End If

    Sheet2.Cells(intColIndex + 1, 2) = strSerRes '反饋查詢(xún)結(jié)果

Next intColIndex

'<<<查詢(xún)成績(jī)并輸出<<<

End Sub



查看積分策略說(shuō)明
附件下載列表:
2019-12-14 17:02:40  下載次數(shù): 51
第三講 例子.rar (26.31 KB)
掃碼關(guān)注5G通信官方公眾號(hào),免費(fèi)領(lǐng)取以下5G精品資料
  • 1、回復(fù)“YD5GAI”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):5G網(wǎng)絡(luò)AI應(yīng)用典型場(chǎng)景技術(shù)解決方案白皮書(shū)
  • 2、回復(fù)“5G6G”免費(fèi)領(lǐng)取《5G_6G毫米波測(cè)試技術(shù)白皮書(shū)-2022_03-21
  • 3、回復(fù)“YD6G”免費(fèi)領(lǐng)取《中國(guó)移動(dòng):6G至簡(jiǎn)無(wú)線(xiàn)接入網(wǎng)白皮書(shū)
  • 4、回復(fù)“LTBPS”免費(fèi)領(lǐng)取《《中國(guó)聯(lián)通5G終端白皮書(shū)》
  • 5、回復(fù)“ZGDX”免費(fèi)領(lǐng)取《中國(guó)電信5G NTN技術(shù)白皮書(shū)
  • 6、回復(fù)“TXSB”免費(fèi)領(lǐng)取《通信設(shè)備安裝工程施工工藝圖解
  • 7、回復(fù)“YDSL”免費(fèi)領(lǐng)取《中國(guó)移動(dòng)算力并網(wǎng)白皮書(shū)
  • 8、回復(fù)“5GX3”免費(fèi)領(lǐng)取《 R16 23501-g60 5G的系統(tǒng)架構(gòu)1
  • 對(duì)本帖內(nèi)容的看法? 我要點(diǎn)評(píng)

     
    [充值威望,立即自動(dòng)到帳] [VIP貴賓權(quán)限+威望套餐] 另有大量?jī)?yōu)惠贈(zèng)送活動(dòng),請(qǐng)光臨充值中心
    充值擁有大量的威望和最高的下載權(quán)限,下載站內(nèi)資料無(wú)憂(yōu)
    hyhy
    銀牌會(huì)員
    鎵嬫満鍙風(fēng)爜宸查獙璇? style=


     發(fā)短消息    關(guān)注Ta 

    紀(jì)念勛章·七周年  
    積分 2900
    帖子 575
    威望 -11126 個(gè)
    禮品券 8 個(gè)
    專(zhuān)家指數(shù) 25
    注冊(cè) 2010-6-6
    專(zhuān)業(yè)方向  無(wú)線(xiàn)網(wǎng)優(yōu)
    回答問(wèn)題數(shù) 0
    回答被采納數(shù) 0
    回答采納率 0%
     
    發(fā)表于 2019-12-30 17:46:13 
    技術(shù)問(wèn)題,回答得專(zhuān)家指數(shù),快速升級(jí)


    QUOTE:
    原帖由 wx_10259334 于 2019-12-14 17:02:57 發(fā)表
    已知某年段學(xué)生期末成績(jī)表如圖,現(xiàn)需寫(xiě)一個(gè)可按學(xué)號(hào)查詢(xún)學(xué)生成績(jī)的宏,要求如下:1)支持一次查詢(xún)多個(gè)學(xué)號(hào)記錄2)反饋查詢(xún)結(jié)果,結(jié)果分查到和未查到兩種情況3)為每條查詢(xún)到的成績(jī)記錄單獨(dú)創(chuàng)建一個(gè)WorkBook來(lái)保 ...

    謝謝樓主分享

    對(duì)本帖內(nèi)容的看法? 我要點(diǎn)評(píng)

     
    [立即成為VIP會(huì)員,百萬(wàn)通信專(zhuān)業(yè)資料立即下載,支付寶、微信付款,簡(jiǎn)單、快速!]

    快速回復(fù)主題    
    標(biāo)題
    內(nèi)容
     上傳資料請(qǐng)點(diǎn)左側(cè)【添加附件】

    (勾選中文件為要?jiǎng)h除文件)


    當(dāng)前時(shí)區(qū) GMT+8, 現(xiàn)在時(shí)間是 2025-01-23 02:15:55
    渝ICP備11001752號(hào)  Copyright @ 2006-2016 mscbsc.com  本站統(tǒng)一服務(wù)郵箱:mscbsc@163.com

    Processed in 0.386715 second(s), 17 queries , Gzip enabled
    TOP
    清除 Cookies - 聯(lián)系我們 - 移動(dòng)通信網(wǎng) - 移動(dòng)通信論壇 - 通信招聘網(wǎng) - Archiver