馬震安
攝影大賽的比賽結(jié)果存放在一個(gè)Excel工作表中,有名次和姓名兩列,現(xiàn)在需要將獲獎(jiǎng)名單中的前50名獲獎(jiǎng)?wù)邔?xiě)入單位的通報(bào)中。通報(bào)是用Word編寫(xiě)的,如何才能將這些數(shù)據(jù)以多列格式編排到Word文檔中?若將一列數(shù)據(jù)直接復(fù)制到Word文檔中,然后再進(jìn)行編排比較費(fèi)事。如果能在Excel中將一列轉(zhuǎn)換成多列,再?gòu)?fù)制粘貼到Word文檔中,就會(huì)簡(jiǎn)單許多。
1. 公式法
在原有數(shù)據(jù)工作表的D 2單元格中輸入公式“=OFFSET($B$1,(ROW(A1)-1)*8+COLUMN(A1),)&""”,向右、向下拖動(dòng)填充,這樣就將單列名單數(shù)據(jù)轉(zhuǎn)換成8列數(shù)據(jù)(圖1)。
上述公式的意思是以B 1單元格為基點(diǎn),行偏移量為( R O W ( A 1 ) -1)*8+COLUMN(A1),這樣公式每向右復(fù)制一列,偏移量增加1,公式每向下復(fù)制一行,偏移量增加8。在公式最后加上&"",為的是屏蔽掉B列為空時(shí)出現(xiàn)的0值。而函數(shù)ROW()獲取的是當(dāng)前行號(hào),COLUMN()獲取的是當(dāng)前列號(hào)。
當(dāng)然,也可以將公式替換為“=INDEX($B:$B,(ROW(B1)-1)*8+COLUMN(B1))”。INDEX函數(shù)在B列根據(jù)R O W ( B1) -1)*8+COLUMN(B1)的值返回單元格的值。
上面的公式數(shù)據(jù)源是B列數(shù)據(jù),從B1開(kāi)始,ROW(B1)-1= 0,CO LU M N (B1)=2,第一個(gè)單元格的值就會(huì)取自B2;右拉,就變成( R O W ( C 1 ) -1)*8+COLUMN(C1) =3,第二單元格的值就會(huì)取自B3;再右拉,變成(ROW (D1)-1)*8+ COLUMN(D1)=4,第三單元格的值就會(huì)取自B4,依此類(lèi)推。再下拉一排,上面函數(shù)的值應(yīng)該是(ROW (B2)-1)*8+ COLUMN(B2) =10,所以第二行第一個(gè)單元格的值就會(huì)取自B10,依此類(lèi)推(圖2)。
2. 替代法
在D2單元格輸入“B2&""”,向右拖動(dòng)填充到K2;在D3單元格輸入“B10&""”,向右拖動(dòng)填充到K3;同時(shí)選中D2:K3,向下拖動(dòng)填充到第8行;刪除多余的單元格內(nèi)容,即50名以后的單元格。
接下來(lái),調(diào)出替換對(duì)話框,查找內(nèi)容輸入“B”,替換為輸入“=B”,點(diǎn)擊全部替換就可以了(圖3)。endprint