當你取得一個學生名條(含有座號+姓名),如果要依座號或是亂數來自動建立座位表,該如何處理?(參考下圖)
【依座號】
儲存格D3:=OFFSET($A$1,COLUMN(A1)+INT(ROW(A1)/2)*7,)
COLUMN(A1)+INT(ROW(A1)/2)*7:當往右複製時會產生0,1,2,3,4,5,6,往下複製二下時,會產生7,8,9,10,11,12,13,…。其中「*7」是因為這個座位表有 7 排。
儲存格D4:=OFFSET($B$1,COLUMN(A1)+INT(ROW(A1)/2)*7,)
原理同上。
複製儲存格D3:J4,貼至儲存格D3:J14。
【依亂數】
如果你在座號前加入一組亂數(=rand()),再依亂數將名條重新排序(遞增或遞減),產生一組新的名條。(每排序一次就會產生一組新名條)
儲存格E3:=OFFSET($B$1,COLUMN(A1)+INT(ROW(A1)/2)*7,)
儲存格E4:=OFFSET($C$1,COLUMN(A1)+INT(ROW(A1)/2)*7,)
原理同上。
複製儲存格E3:K4,貼至儲存格E3:K14。
【補充】
詳細函數說明,請參考微軟網站:
OFFSET:http://office.microsoft.com/zh-tw/excel-help/HP010342739.aspx
OFFSET 函數:傳回根據所指定的儲存格位址、列距及欄距而算出的參照位址。 |
語法:OFFSET(reference, rows, cols, [height], [width]) Reference:用以計算位移的起始參照位址。 Rows:左上角儲存格要往上或往下參照的列數。Rows可以是正數(表示在起始參照位址下方)或負數(表示在起始參照位址上方)。 Cols:左上角儲存格要往左或往右參照的欄數。Cols 可以是正數(表示在起始參照位址右方)或負數(表示在起始參照位址左方)。 Height:所傳回參照位址的高度 (以列數為單位)。Height 必須是正數。 Width:所傳回參照位址的寬度 (以欄數為單位)。Width 必須是正數。 |
留言列表