下面我們舉列說明:
本學(xué)期,學(xué)校錄取了近千名學(xué)生,被錄取的每名學(xué)生都有電子照片。但開學(xué)后,部分學(xué)生并未到校報(bào)到,且報(bào)到的學(xué)生有的被安排到外地學(xué)習(xí)。現(xiàn)在,上級要求在學(xué)籍管理系統(tǒng)中,上 傳每名學(xué)生的電子照片,如果重新采集學(xué)生的照片,難度很大。因此,學(xué)校決定上傳已有的學(xué)生照片,但是必須去除未報(bào)到的和到外地學(xué)習(xí)的學(xué)生照片。
原先采集的學(xué)生照片全部保存在一個(gè)文件夾(文件夾是E:\電子照片)中,共有近千份,照片以身份證號碼命名,如圖1所示?,F(xiàn)在要從中篩選出數(shù)百個(gè)文件,篩選 的依據(jù)是“新生登記表.xls”中的身份證號碼?,F(xiàn)在,要把電子表格中有名單人員的照片文件篩選出來,把沒用的文件刪除。要做到這一點(diǎn),有些人想到了搜索 的方法,但是這種方法太費(fèi)時(shí)間。有沒有更好的辦法呢?辦法是有的。
一、實(shí)現(xiàn)思路
第一步:列出文件名稱。使用DOS命令,把所有的照片文件的文件名列出來,形成一個(gè)文本文件,再將文本文件的內(nèi)容復(fù)制到Excel表格中;
第二步:進(jìn)行比對。與學(xué)生登記表中的身份證號碼進(jìn)行比對,再通過排序,將符合和不符合的文件分開,選取不符合的文件名;
第三步:使用DOS命令,刪除所有不符合的文件。
二、具體實(shí)現(xiàn)
第一步:獲取所有文件的文件名
1. 打開“電子照片”文件夾,在地址欄中輸入“c:\windows\system32\cmd.exe”(如果是Windows 7系統(tǒng),只需輸入“cmd”即可)。
2. 輸入命令:“DIR /O /B >LIST.TXT”,按回車鍵。這個(gè)命令的含義是:將該文件夾中所有文件的名稱輸送到LIST.TXT文本文件中。
3. 回到Windows 界面,打開“E:\電子照片”文件夾,你會發(fā)現(xiàn)文件夾中多了一個(gè)文件LIST.TXT,打開該文件,結(jié)果如圖2所示。
4. 在LIST.TXT中,使用查找和替換的方法,刪除所有的“.jpg”,方法如圖3所示。
第二步:數(shù)據(jù)對比
1. 打開“新生登記表.xls”。
2. 復(fù)制“LIST.TXT”中的所有內(nèi)容,將其粘貼到Excel表中。注意:在粘貼之前,要先選定粘貼數(shù)據(jù)的列,將其數(shù)字格式設(shè)置為“文本”類型,否則粘貼后會出錯(cuò)。
3. 在B1單元格中,插入函數(shù)“=VLOOKUP(A1,[新生登記表.xls]sheet1!$A:$A,1,0)”,按回車鍵確認(rèn),本單元格中這個(gè)函數(shù)的 作用含義是:在“新生登記表.xls”sheet1工作表的A列(這一區(qū)域),查找與A1單元格相同的內(nèi)容,如果找到后,將該區(qū)域第1列的內(nèi)容顯示在當(dāng)前 單元格中,括號中最后一個(gè)數(shù)字“0”表示查找方式是精確查找,否則顯示出錯(cuò)信息“#N/A”。注意:所查找的內(nèi)容必須在選定區(qū)域的第一列,否則一定會找不 到。(VLOOKUP函數(shù)在“查找與引用”類別中,可以通過對話框操作)。
4. 雙擊B1單元格的填充柄,復(fù)制公式。
5. 單擊B列的有數(shù)據(jù)的單元格,單擊“升序排序”按鈕,結(jié)果如圖4所示,其中“#N/A”表示沒有找到。
6. 選取沒有找到的A列數(shù)據(jù),即圖4中“A469”之后的單元格,將其復(fù)制到空白表的A列。
7. 在C1單元格中輸入“=A1&".jpg"”,即給A1單元格內(nèi)文字的后面加上“.jpg”,雙擊C1單元格的填充柄,復(fù)制C1的公式到C列的其他單元格。
8. 在B1單元格內(nèi)輸入del,復(fù)制B1的內(nèi)容到B列的其他單元格。結(jié)果如圖5所示。
第三步:刪除所有不符合的文件
1. 復(fù)制B、C兩列的內(nèi)容,粘貼到記事本中,將文件保存為del.bat(bat為批處理文件,del為刪除文件的意思,在“另存為”對話框中,“文件類型”要選“所有文件”),保存位置為“電子照片”文件夾。
2. 打開“電子照片”文件夾,雙擊del.bat,系統(tǒng)就會自動(dòng)刪除所有不符合要求的文件,留下的就是所需的文件了。注意:用這種方法刪除的文件不會進(jìn)入回收站,因此,不能恢復(fù)。