トレーナーとして、あなたはあなたの学生にいくつかのセミナーを実施したでしょう。 次に、Excelワークブックを生徒と共有します。これは、生徒がどれだけ理解しているかを特定するのに役立ちます。 この記事に従って、多肢選択式のデジタル試験シートを準備します。
ダウンロード
ソフトウェアをできるだけ早く使い始めたい場合は、以下の方法があります。
それ以外の場合、DIYをしたい場合は、以下の内容を読むことができます。
GUIを準備しましょう
コンテンツ
データベースを準備しましょう
シート「データベース」に質問、オプション、正解を追加します
機能させましょう
このスクリプトを、マクロが有効なブックの新しいモジュールにコピーします。
Sub Prepare_Test()
Dim lr As Long
Dim r As Long
Dim rinq As Long
rinq = 0
lr = Sheets("Database").Range("A" & Rows.Count).End(xlUp).Row
For r = 3 To lr
rinq = rinq + 6
Sheets("Test").Range("C" & rinq).Value = Sheets("Database").Range("A" & r).Value
Sheets("Test").Range("C" & rinq + 1).Value = Sheets("Database").Range("B" & r).Value
Sheets("Test").Range("C" & rinq + 2).Value = Sheets("Database").Range("C" & r).Value
Sheets("Test").Range("C" & rinq + 3).Value = Sheets("Database").Range("D" & r).Value
Sheets("Test").Range("C" & rinq + 4).Value = Sheets("Database").Range("E" & r).Value
Next r
End Sub
Sub Show_Result()
Dim lr As Long
Dim r As Long
Dim rinq As Long
rinq = 0
Sheets("Database").Visible = -1
Sheets("Summary").Visible = -1
lr = Sheets("Database").Range("A" & Rows.Count).End(xlUp).Row
Dim v_ccount As Long
v_ccount = 0
For r = 3 To lr
Dim v_answer As String
v_answer = "Option " & Sheets("Database").Range("F" & r).Value
rinq = rinq + 6
If Sheets("Test").Range("C" & rinq + 1).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 1).Value = v_answer Then
v_ccount = v_ccount + 1
End If
If Sheets("Test").Range("C" & rinq + 2).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 2).Value = v_answer Then
v_ccount = v_ccount + 1
End If
If Sheets("Test").Range("C" & rinq + 3).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 3).Value = v_answer Then
v_ccount = v_ccount + 1
End If
If Sheets("Test").Range("C" & rinq + 4).Interior.Color = vbYellow And Sheets("Test").Range("B" & rinq + 4).Value = v_answer Then
v_ccount = v_ccount + 1
End If
Next r
Sheets("Summary").Range("C7").Value = Sheets("Test").Range("F3").Value
Sheets("Summary").Range("C11").Value = lr - 2
Sheets("Summary").Range("F11").Value = v_ccount
Sheets("Summary").Range("I11").Value = (lr - 2) - v_ccount
End Sub
このスクリプトをシート「テスト」のコードウィンドウにコピーします
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim ar As Long
ar = Target.Row
Range("C" & ar & ":F" & ar).Interior.Color = vbYellow
End Sub
このスクリプトを「ThisWorkook」のコードウィンドウにコピーします
Private Sub Workbook_Open()
Call Module1.Prepare_Test
Sheets("Database").Visible = 2
Sheets("Summary").Visible = 2
End Sub
システムを教えてください。
ユーザーがワークブックを開くと、マクロが実行され、シート「データベース」と「概要」が非表示になります。 シート「データベース」がユーザーから隠されていない場合、すべての回答が公開されます。 また、学生は「概要」シートを見る必要はありません。 ワークブックをユーザーに送信する前に、マクロ「Prepare_Test」を実行して、シート「Test」にデータを入力する必要があります。 ユーザーは任意のオプションを選択でき、マクロは選択した回答を黄色で強調表示します。 マクロ「Show_Result」は、シート「テスト」で選択されたオプションをシート「データベース」の回答と比較し、正解の数を識別します。
シートは隠されていませんか?
VBAスクリプトは、破損したExcelワークシートのプロパティを警告できません。 このような場合には、 Excelを回復する ワークシートを作成し、マクロを再実行します。
著者紹介:
Nick Vipondは、のデータ復旧の専門家です。 DataNumen、Inc。は、以下を含むデータ復旧技術の世界的リーダーです。 破損したWord と見通し回復ソフトウェア製品。 詳細については、次のWebサイトをご覧ください。 WWW。datanumen.com

