回覆列表
  • 1 # Excel學習世界

    案例:

    怎麼把下表 1 轉成下表 2?

    解決方案:

    1. 增加輔助列 C 和 D,公式分別如下:

    =COUNTIF(A$1:A1,A1)

    =INDEX(A:A,SMALL(IF($C:$C=1,ROW($A:$A),4^8),ROW(1:1)))&""

    這兩個輔助列的目的是生成一個去重去空的隊名列表D 列為陣列公式,需要按 Ctrl +Shift + Enter 生效具體公式釋義請參見 去除Excel下拉選單中的空值和重複值 和 Excel下拉選單去空/去重(填坑貼)

    2. 在 F 列輸入如下公式,目的是把 D 列的豎表變為橫表:

    =INDIRECT("D"&COLUMN(A1))

    關於這段 indirect 函式的釋義,請參見 Excel indirect 函式(1) - 將一列資料排列成m行*n列

    3. 在 F2 單元格輸入如下公式,按 Ctrl +Shift + Enter 生效,向下向右拖動公式,即可完成整張表格:

    =INDEX($B:$B,SMALL(IF(F$1=$A:$A,ROW($B:$B),4^8),ROW(1:1)))&""

    表示當 A 列的隊名與 F1 至 L1 相同時,按列讀出隊員名,否則返回空值這是陣列公式,需要按 Ctrl +Shift + Enter 生效萬能陣列公式 index + small + if + row 的釋義請參見 去除Excel下拉選單中的空值和重複值

  • 中秋節和大豐收的關聯?
  • 相機的演變過程?