有老師想要抓取HBL高中籃球資格賽的比賽結果,送到 Excel 中處理。

抓取網頁中的運動比賽資料(OFFSET,ROW,COLUMN)

參考網址:https://www.foxsports.com.tw/basketball/hbl/賽程表/

你會如何處理?

抓取網頁中的運動比賽資料(OFFSET,ROW,COLUMN)

數據的呈現方式如下:

抓取網頁中的運動比賽資料(OFFSET,ROW,COLUMN)

觀察資料呈現的方式,發現其具有相同格式,我用大家都會的方式,複製/貼上來處理。

1. 選取想要的資料範圍。

2. 按 Ctrl+C 鍵來複製資料。

抓取網頁中的運動比賽資料(OFFSET,ROW,COLUMN)

3. 開啟 Excel 並新增一個文件。

4. 選取儲存格A1。

5. 按右鍵並選取「符合目的格式的設定」。

抓取網頁中的運動比賽資料(OFFSET,ROW,COLUMN)

抓取網頁中的運動比賽資料(OFFSET,ROW,COLUMN)

6. 接著,撰寫公式來轉換。(參考下圖)

抓取網頁中的運動比賽資料(OFFSET,ROW,COLUMN)

【公式設計與解析】

1. 處理地點

儲存格C2:=OFFSET($A$1,(ROW(1:1)-1)*12,0)

儲存格C3保持空白。複製儲存格C2:C3,貼至儲存格C2:C31。

當公式向下複製時,公式:(ROW(1:1)-1)*12,會依序產生 0, 24, 48, 72, …。

ROW(1:1)向下複製時,會產生ROW(1:1)=1→ROW(2:2)=2→ROW(3:3)=3→...。

 

2. 處理學校

儲存格D2:=OFFSET($A$1,(ROW(1:1)-1)/2*24+8,0)

儲存格D3:=OFFSET($A$1,(ROW(1:1)-1)/2*24+16,0)

複製儲存格D2:D3,貼至儲存格D2:D31。

當公式向下複製時,公式:(ROW(1:1)-1)/2*24+8和公式:(ROW(1:1)-1)/2*24+16,會依序產生 8,16,32,40,56,64, …。(間隔24)

 

3. 處理成績

根據儲存格D2和儲存格D3的公式,略加修改:

儲存格D2:=OFFSET($A$1,(ROW(1:1)-1)/2*24+7+COLUMN(A:A),0)

儲存格D3:=OFFSET($A$1,(ROW(1:1)-1)/2*24+15+COLUMN(A:A),0)

複製儲存格D2:D3,貼至儲存格D2:J3。

複製儲存格D2:J3,貼至儲存格D2:J31。

當公式向右複製時,會產生COLUMN(A:A)=1→COLUMN(B:B)=2→COLUMN(C:C)=3→...。

文章標籤

全站熱搜

vincent 發表在 痞客邦 留言(1) 人氣()