註冊
登錄
首頁
論壇版規
禁止列表
說明
地圖
數位書香
私人消息 (0)
公共消息 (0)
論壇任務 (0)
系統消息 (0)
好友消息 (0)
帖子消息 (0)
麻辣家族討論版版
»
Excelㄧ般區
» 學生依班級自動篩選資料出來
返回列表
下一主題
上一主題
發帖
學生依班級自動篩選資料出來
ML089
發短消息
加為好友
ML089
當前離線
UID
3671
帖子
2025
主題
13
精華
0
積分
2053
金錢
2053
點名
0
作業系統
WIN7
軟體版本
Office2007
閱讀權限
100
性別
男
來自
台北市
在線時間
2405 小時
註冊時間
2011-3-2
最後登錄
2024-3-14
版主
帖子
2025
主題
13
精華
0
積分
2053
點名
0
作業系統
WIN7
軟體版本
Office2007
閱讀權限
100
性別
男
來自
台北市
註冊時間
2011-3-2
最後登錄
2024-3-14
1
#
跳轉到
»
發表於 2013-5-10 23:48
|
顯示全部帖子
增加排序,將同班同學排列再一起
A4:B4 陣列公式
=INDEX(Student!A:B,MOD(SMALL(IF(ISERR(FIND(Student!B$2:B$20,Class!D$2)),4^8,FIND(Student!B$2:B$20,Class!D$2)*100+ROW($2:$20)),ROW()-3),100),{1,2})&""
複製代碼
注意! 公式為雙格公式,要同時選取 A4:B4 ,輸入公式後用 CTRL+SHIFT+ENTER三鍵齊按方式輸入,然後再同選A4:B4下拉複製
PS:
雙格公式可以減少一半的陣列計算時間
是否可以再使陣列計算更快,可以的,使用全選式陣列公式。
有點事等一下再說明
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式
TOP
ML089
發短消息
加為好友
ML089
當前離線
UID
3671
帖子
2025
主題
13
精華
0
積分
2053
金錢
2053
點名
0
作業系統
WIN7
軟體版本
Office2007
閱讀權限
100
性別
男
來自
台北市
在線時間
2405 小時
註冊時間
2011-3-2
最後登錄
2024-3-14
版主
帖子
2025
主題
13
精華
0
積分
2053
點名
0
作業系統
WIN7
軟體版本
Office2007
閱讀權限
100
性別
男
來自
台北市
註冊時間
2011-3-2
最後登錄
2024-3-14
2
#
發表於 2013-5-11 00:32
|
顯示全部帖子
A4:B18 全選式陣列
=INDEX(Student!A:B,MOD(SMALL(IF(ISERR(FIND(Student!B$2:B$20,Class!D$2)),4^8,FIND(Student!B$2:B$20,Class!D$2)*100+ROW($2:$20)),ROW(1:15)),100),{1,2})&""
複製代碼
本例預估最大人數為15人所以用 ROW(1:15),此部分需求自定
一般陣列公式每一格都需計算一次及排列一次非常耗時,當資料筆數超過千筆時更為明顯,
例如一位老師上5個班每班40人時,公式執行速度就會相差 5*40*2 = 400倍。
所公式的應視資料的多寡及計算量需求選用適當的陣列公式
資料量多時要減少重複性計算,一般可以用輔助欄或全選式陣列來解決。
{...} 表示需要用 CTRL+SHIFT+ENTER 三鍵輸入公式
TOP
靜思自在 :
【是否發揮了良能?】人間壽命因為短暫,才更顯得珍貴。難得來一趟人間,應問是否為人間發揮了自己的良能,而不要一味求長壽。
返回列表
下一主題
上一主題
Excel程式區
C 與 C#
生活與感動
EXCEL專屬討論區
Excelㄧ般區
Excel程式區
進階應用專區
OFFICE 系列
Word
PowerPoint
Access
Office不分區
程式語言
VB 與 VB.Net
C 與 C#
Java 與 J#
程式設計不分區
資料庫
ORACLE
My SQL
MS SQL
網頁設計
ASP 與 ASP.NET
PHP
PHP+MySQL 入門實作
JavaScript
FLASH / ActionScript
HTM/ HTML/ CSS
網頁設計不分區
電腦與作業系統
電腦各種硬體討論
一般電腦軟體討論
論壇事務
管理公告
投訴反映
新手測試
愛 • 生活
公益佈告欄
生活與感動
[收藏此主題]
[關注此主題的新回復]
[通過 QQ、MSN 分享給朋友]
申請友情鏈接
Facebook粉絲