二維碼 購(gòu)物車
部落窩在線教育歡迎您!

用Excel制作刷題器,備考無(wú)憂 !

?

作者:ITFANS來(lái)源:部落窩教育發(fā)布時(shí)間:2024-07-22 18:37:59點(diǎn)擊:775

分享到:
0
收藏    收藏人氣:0人
版權(quán)說(shuō)明: 原創(chuàng)作品,禁止轉(zhuǎn)載。

編按:

Excel制作一個(gè)刷題器,實(shí)現(xiàn)隨機(jī)出題,可以幫自己備考,幫孩子備考。刷題器支持單項(xiàng)選擇題、多項(xiàng)選擇題、判斷題三類題型。

 

幫自己備考,幫家里孩子備考,或者做隨機(jī)出題的內(nèi)訓(xùn)培訓(xùn)測(cè)試,你可以使用Excel打造一個(gè)實(shí)用的刷題器。

看看最終效果,選擇單選或者多選題,點(diǎn)擊“刷題”即可隨機(jī)從題庫(kù)中抽題,輸入答案后還會(huì)自動(dòng)進(jìn)行打分。

 

 

刷題器很簡(jiǎn)單,包括“原始試題”“題庫(kù)”“出題1”三張工作表。

 

一、原始試題整理

將網(wǎng)上搜集的試題粘貼到Excel中,大多數(shù)試題逐行排列,并且各題答案匯總在一行。

 

手機(jī)屏幕截圖
描述已自動(dòng)生成

 

而為了方便隨機(jī)出題,我們需要把各道試題整合成一行,并拆分出正確答案。

 

圖片包含 文本
描述已自動(dòng)生成

 

Step1,整合題目

將原始試題粘貼到B列,答案粘貼到A2備用。

接著在C2輸入公式:

=DROP(TEXTSPLIT(TEXTJOIN("|",TRUE,IF(B:B="","",IFERROR(SUBSTITUTE(B:B,IF(ISNUMBER(--TEXTBEFORE(B:B,{"、","."})),TEXTBEFORE(B:B,{"、","."}),""),"部落窩",1),B:B))),,"部落窩",TRUE),1)

說(shuō)明:

將各題題目和其選項(xiàng)使用“|”連接起來(lái)匯成一行排列。

 

 

注意,整理的最后一道題與其他題不同,其末尾會(huì)缺少一個(gè)分隔符“|”,

 

日歷
中度可信度描述已自動(dòng)生成

 

Step2,最后行添加“|

定位到D2輸入公式“=IF(C2#=TAKE(C2#,-1),TAKE(C2#,-1)&"|",C2#)”,自動(dòng)為最后行添加符號(hào)。

 

 

Step3,提取答案

定位到F2輸入公式將A2的答案提取出來(lái)并放在整合題目的后方:

=TEXTSPLIT(TEXTAFTER(A2,"答案:"),,TEXTSPLIT(TEXTAFTER(A2,"答案:"),,CHAR(ROW($65:$90)),1),1)

 

 

Step4,復(fù)制整理后的試題到題庫(kù)

打開VB編輯器新建“復(fù)制整理試題”宏,代碼含義參考注釋。

 

圖形用戶界面, 文本, 應(yīng)用程序
描述已自動(dòng)生成

 

在表中插入一個(gè)形狀,右鍵指定宏為“復(fù)制整理試題”。今后點(diǎn)擊這個(gè)形狀即可將整理的試題和答案復(fù)制到題庫(kù)的D:E列。

 

 

二、實(shí)現(xiàn)隨機(jī)出題

切換到“題庫(kù)”工作表,我們通過(guò)公式來(lái)隨機(jī)抽取題目,并用宏固定題目。

Step1,生成隨機(jī)數(shù)

C2輸入公式“=RANDARRAY(ROW(A2:INDIRECT("A"&COUNTA(D:D))))”,以D列非空單元格數(shù)為最大值,使用RANDARRAY函數(shù)生成隨機(jī)數(shù)。

 

 

Step2,判斷題型

定位到F2輸入“=IFS(LEN(E2:E1000)=1,"單選",LEN(E2:E1000)>1,"多選",1,"")”。

 

 

Step3,添加刷題的題型選擇器

切換到“出題1”工作表,按提示插入2個(gè)“選項(xiàng)按鈕(窗體控件)”,分別修改文字為“單選題”“多選題”。接著選中任意一個(gè)控件,右擊選擇“設(shè)置控件格式”,將單元格的鏈接設(shè)置為C2。這樣選擇“單選題”或“多選題”的時(shí)候,C2就會(huì)顯示數(shù)字12,可作為題型選擇依據(jù)。

 

Step4,隨機(jī)抽取題目

返回“題庫(kù)”工作表,在H2輸入公式:

=ROW(A1:A5)&IFERROR(IF(出題1!C2=2,INDEX(LET(F,FILTER(C2#:D1000,(A2:A1000="")*(F2#="多選"),""),SORTBY(F,INDEX(F,,1,1))),ROW(A1:A5),COLUMN(B1)),INDEX(LET(F,FILTER(C2#:D1000,(A2:A1000="")*(F2#="單選"),""),SORTBY(F,INDEX(F,,1,1))),ROW(A1:A5),COLUMN(B1))),".請(qǐng)重置|")

說(shuō)明:

借助C列的隨機(jī)數(shù)字,隨機(jī)從D列中抽取5道題。

 

 

Step5,設(shè)置已出標(biāo)記

刷題要求已經(jīng)出過(guò)的題目不再出現(xiàn),因此需要標(biāo)記已抽取的題目,便于后續(xù)抽取時(shí)避開它們。

由于隨機(jī)數(shù)易變,為了不出現(xiàn)錯(cuò)誤,首先將抽取的H2:H5的題目以“值”的方式粘貼到I2:I5進(jìn)行固定(此處可以先手動(dòng)粘貼,后續(xù)我們通過(guò)代碼實(shí)現(xiàn))。

然后定位到B2輸入公式:

=IFERROR(IF(XLOOKUP(TEXTAFTER(D2:D1000,"."),TEXTAFTER(I2:I1000,"."),C2:C1000,"")<>"","已出",""),"")

 

 

Step6,新建固定已選標(biāo)記的宏

B列“已選”標(biāo)記會(huì)不斷變化,為了固定歷次抽取的標(biāo)記,需要新建一個(gè)宏,如下。代碼的作用請(qǐng)參考注釋。

 

 

Step7,新建固定已出題的宏

新建一個(gè)“刷題”的宏,取代第5步中的手動(dòng)粘貼。

 

 

Step8,新建重置的宏

當(dāng)隨機(jī)抽取完所有題后,則需要重置,用于清除I列題目、A列標(biāo)記,以及“出題1”工作表用戶的答案輸入,便于開始新的一輪抽取。

 

圖形用戶界面, 文本, 應(yīng)用程序, 電子郵件
描述已自動(dòng)生成

 

Srep9,還原題目為標(biāo)準(zhǔn)試題

K2輸入“=IFERROR(TEXTSPLIT(CONCAT(I2:I6),,"|",TRUE,,""),"")”還原題目為標(biāo)準(zhǔn)試題。

 

 

三、刷題設(shè)置

切換道“出題1”工作表進(jìn)行刷題設(shè)置。

Step1,引用題目

B6輸入“=題庫(kù)!K2#”,引用題庫(kù)還原后的題目。

 

 

Step2,引用答案

C6輸入公式:

=IFERROR(XLOOKUP("*"&IF(ISNUMBER(--TEXTAFTER(B6:B28,".")),1/0,TEXTAFTER(B6:B28,"."))&"*",題庫(kù)!$D$2:$D$1000,題庫(kù)!$E$2:$E$1000,"",2),"")

 

圖形用戶界面, 應(yīng)用程序
描述已自動(dòng)生成

 

 

Step3,關(guān)聯(lián)宏

D2、E2插入兩個(gè)形狀,分別關(guān)聯(lián)到上述創(chuàng)建的“刷題”和“重置”宏。

 

 

Step4,其他設(shè)置

E6輸入公式“=IFS(D6:D28="","",D6:D28=C6:C28,"?",D6:D28<>C6:C28,"?,答案為:"&C6:C28)”,判斷答案。

E3輸入公式“=IF(D6="","",COUNTIF(E6:E29,"?")*20)”,統(tǒng)計(jì)分?jǐn)?shù)。

此外還可以設(shè)置條件格式,將題目欄設(shè)置為黃色顯示,對(duì)答題單元格設(shè)置邊框等,最終效果如圖。

 

 

四、實(shí)際使用

Step1,輸入試題

隱藏“題庫(kù)”工作表。切換到“原始試題”工作表,僅保留A、B列顯示(其他列隱藏)。只要將題目和答案分別粘貼到B列和A2,點(diǎn)擊“復(fù)制整理試題”即可。

 

 

Step2,開始刷題

切換到“出題1”工作表,隱藏C列,選擇題型,然后點(diǎn)擊“刷題”。只要在D列輸入答案,就可以自動(dòng)完成分?jǐn)?shù)統(tǒng)計(jì)。

 

后記:

當(dāng)前的模板只是提供一個(gè)思路和方法,還有很多不足,譬如,題型上缺少判斷題、刷題數(shù)固定為5、選擇題的各選項(xiàng)必須單獨(dú)成行。如果你需要更強(qiáng)大的刷題模板,如下,請(qǐng)聯(lián)系部落窩教育領(lǐng)取。注意,需用Excel 365,Excel 2024等版本打開。

 

 

本文配套的練習(xí)課件請(qǐng)?zhí)砑涌头⑿?span>buluowojiaoyu索取。

Excel高手,快速提升工作效率,部落窩教育Excel精品好課任你選擇!

掃下方二維碼關(guān)注公眾號(hào),可隨時(shí)隨地學(xué)習(xí)Excel

IMG_256

相關(guān)推薦:

簡(jiǎn)化公式的函數(shù)LET

MAP函數(shù)用法

用Textjoin函數(shù)合并單元格

TEXTSPLIT函數(shù)用法

版權(quán)申明:

本文作者ITFANS;部落窩教育享有稿件專有使用權(quán)。若需轉(zhuǎn)載請(qǐng)聯(lián)系部落窩教育。