2013職稱計算機Excel2003專項輔導資料1

字號:

用公式批量提取數(shù)據(jù)信息
    假設(shè)在一個Excel工作簿中有N個企業(yè)基本情況登記表,不同工作表中分別保存了各個企業(yè)的基本情況數(shù)據(jù),工作表格式都一致,名稱分別為Sheet1、Sheet2直到SheetN。Sheet1表中企業(yè)基本情況表,從該表中可以看到,企業(yè)名稱、負責人姓名和聯(lián)系電話等數(shù)據(jù)分散在B2、B4及G4單元格中。如何提取各表中企業(yè)名稱、負責人姓名和聯(lián)系電話等內(nèi)容,并將提取的內(nèi)容制成表格?
    一、新建工作表
    在工作簿中插入一個新工作表,并將該工作表命名為“通訊錄”,合并A1—D1單元格,在合并后的單元格中輸入“全市建筑企業(yè)負責人聯(lián)系電話”。分別在A2、B2、C2、D2單元格中輸入“序號”、“企業(yè)名稱”、“負責人”、“聯(lián)系電話”等字段。
    二、輸入公式
    在序號列中填充序號,在B3單元格中輸入公式:“= INDIRECT("Sheet"&ROW()-2&"!$B$2")”。公式中INDIRECT函數(shù)返回由文字串指定的引用。ROW()返回所在單元格的行號,"Sheet"&ROW()-2&"!$B$2"為要引用的單元格,該公式含義為返回Sheet1表中B2單元格的值。同樣道理在C3及D3單元格中分別輸入“=INDIRECT("Sheet"&ROW()-2&"!$B$4")”、“=INDIRECT("Sheet"&ROW()-2&"!$G$4")”。上述公式中單元格引用要使用絕對引用,否則會導致錯誤的結(jié)果。公式輸入完成后,選中A3:D3單元格區(qū)域,將鼠標指向D3單元格右下角的填充柄,將公式向下拖動復(fù)制到相應(yīng)數(shù)據(jù)區(qū)域。這樣,一份精致的表格就呈現(xiàn)在你面前了。
    三、批量命名工作表
    如果各工作表名稱無規(guī)律,如“一建公司表”、“路橋公司表”等,使用公式前還需將所有表名稱統(tǒng)一為默認的表名,當然表數(shù)量不多,用手工命名也可以,如果工作表數(shù)量很多,批量命名則要使用VBA代碼了。具體實現(xiàn)方法如下:執(zhí)行“工具→宏→Visul Basic編輯器”命令或按下Alt+F11組合鍵,在Visul Basic編輯器中選擇“插入→添加模塊”,在代碼窗口輸入以下代碼:
    Sub 工作表命名()
    Dim Sh As Worksheet
    For Each Sh In Worksheets
    Sh.Name = Sh.CodeName
    Next
    End Sub
    輸入完成后,關(guān)閉VBA窗口,返回到工作表編輯窗口,在Excel文檔中執(zhí)行宏即可。將工作表名稱統(tǒng)一后,再按照步驟一和二介紹的方法,提取表格中的數(shù)據(jù)。