最近在學期末的當兒,學校又開始處理下一階段的行事曆了!如果將 Google 日曆的資料轉換至 Excel 後,如何轉換為以週為單位的表格呈現。
以下圖為例,由 Google日歷取得行事曆內容,加以整理後保留一欄日期、一欄事項。要將這個清單轉換為下圖左以週為單位的表格。
先建立好以週為單位的週曆。其中,利用格式設定方式,讓儲存格只顯示「日」的數字。
公式設計與解析
儲存格H4:="△"&TEXTJOIN(CHAR(10)&"△",,FILTER($K$4:$K$59,($J$4:$J$59>=A4)*($J$4:$J$59<=G4)))
複製儲存格H4,貼至儲存格H4:H16。
1. FILTER($K$4:$K$59,($J$4:$J$59>=A4)*($J$4:$J$59<=G4))
在 FILTER 函數中使用雙條件,藉由 AND 邏輯判斷日期區間:($J$4:$J$59>=A4)*($J$4:$J$59<=G4)
將符合日期區間者,對應取得符合的事項陣列。
2. TEXTJOIN(CHAR(10)&"△",,FILTER($K$4:$K$59,($J$4:$J$59>=A4)*($J$4:$J$59<=G4)))
再利用 TEXTJOIN 來串接第(1)傳回的事預陣列。在此也順便在串接字元中加入:
(1) 串接 CHAR(10):這是分行字元,當儲存格設定「自動換行」時,可以將不同事項分行顯示。
(2) 串接「△」字元,顯示在每個事項的最前面。
3. "△"&TEXTJOIN(CHAR(10)&"△",,FILTER($K$4:$K$59,($J$4:$J$59>=A4)*($J$4:$J$59<=G4)))
最後,在公式最前面再串接一個「△」符號,可以讓每一個儲存格的第一個事項也是由「△」字元起始。
留言列表