
仕事でもExcelが使える人って重宝されますよね。子どもにも使い方を教えてあげたいけれど、どうしていいかわからない…という方のために!答え合わせまで自動でやってくれる簡単な問題集付きのExcelファイルを用意しました!
ご家庭でお子さんにExcelを教えたいときにご利用ください!
自動答え合わせ機能付きExcelクイズ

Excelのアプリケーションがあれば使用できます。無料のブラウザ版Officeでも開くことはできますが、その場合は答え合わせ機能はつけられませんので注意してくださいね。
また、クイズに答え始めるより先にコードの貼り付けを行ってくださいね!コードの貼り付けを行っていないと、自動で答え合わせすることができません。
私が子どもたちにExcelに触れてもらうために欲しくて作ったクイズですが、同じように子どもにExcelに触れてほしいと考えている誰かの役に立ったらいいなと思います♪
おすすめのバージョンは?
今回のプログラムは簡単なものなので、古いバージョンのExcelを使っていただいても大丈夫です♪
Excelを含むOfficeソフトは3年ごとに新しいバージョンが出ており、Office365はサブスクのため常に最新の機能を使うことができます。
365には1か月の無料体験版もあるのでぜひ使ってみてくださいね!
Excelクイズの使い方
読めばやり方がわかるようにそれぞれのシートに解説を付けています。シートごとにテーマが変わります。以下のテーマで作成しています。
- セルの考え方
- オートフィル
- 四則演算
- 四則演算(セルを利用)
- SUM関数
- RIGHT関数とLEFT関数
- MID関数
- SUBSTITUTE関数


お子さんが楽しく取り組めるよう、イラストを入れたり謎解きのようにしたりする工夫をしています。
お子さんだけでなく、Excelの使い方を少し学んでみたい!という大人の方も是非使ってみてください♪
保存する場合

途中で一旦やめたい時など、保存する場合は上書き保存ではなく「名前をつけて保存」から「ファイルの種類」を開き、「Excelマクロ有効ブック(*.xlsm)」を選んで保存してくださいね。
マクロ有効ブックとして保存しないと、コードをもう一度貼り付ける必要が出てきてしまいます。
関数の答え一覧
答え合わせ機能が使えない場合は、こちらの解答を参照してください。
シート名 | 回答 |
---|---|
sum | (1)=SUM(C2:C10) (2)=SUM(C2,C5) (3)=SUM(C3,C9,C10) (4)=SUM(C12:C14) |
right_left | Q7.=RIGHT(B8,2) Q8.=LEFT(B12,4) |
mid | Q9.=MID(B8,3,2) Q10.=MID(B12,4,3) |
substitute | =SUBSTITUTE(B11,"し","さん") |
substitute2 | =SUBSTITUTE(B7,"た","") |
さい終問題 | にほんあまがえる or ニホンアマガエル |
関数は直接入力か「関数ライブラリ」から

関数はイコールから直接手打ちもできますが、「substitute」なんて綴りを間違いそう!そもそも関数のカッコの中に何を書けばいいのかなんていちいち覚えてられないですよね。
そういうときの強い味方が「数式」タブの「関数ライブラリ」です。なんかこんな感じの関数名だったな~?というのだけ覚えておけば簡単に関数が使えますよ!
今回のクイズに出てくる関数だけでいえば、SUM関数は「オートSUM」または「数学/三角」の中に、その他の関数は「文字列操作」の中にあります。
※今回のクイズではsubstitute2(たぬきの問題)だけは直接入力でしか解くことができませんのでご注意ください。
操作の豆知識

セルに直接文字や関数を入力しているとき、キーボードの矢印キーで移動しようとするとセルごと移動してしまってイラッ💢としませんか?
そういうときは入力したいセルを選択してからリボンの下にある「数式バー」に入力するか、キーボードのF2キーを押して編集モードにしてから入力するといいですよ!
答え合わせ機能のVBAコード
VBEにコードを貼り付けるだけ
答え合わせ機能を付けたい場合は、以下の手順でコードの貼り付けを行ってください。

エクセルクイズのファイルを開いた状態で、キーボードの「Alt」と「F11」(キーボードの上の方にあります)を同時に押します。すると、VBEと呼ばれるウィンドウが開きます。
エクセルクイズのファイルを開いた状態で、キーボードの「Alt」と「F11」(キーボードの上の方にあります)を同時に押します。 すると、VBEと呼ばれるウィンドウが開きます。
「挿入」から「標準モジュール」をクリックします。そうすると、灰色だった部分に白い画面が開きます。あとは下にあるコードをコピー&ペーストするだけでOKです。

こんな感じになれば大丈夫です!右上のばってんを押してウインドウを閉じてください。
答え合わせ用コード(VBEにコピー&ペーストしてください)
以下のコードを先ほど開いた白い画面にコピー&ペーストしてください!
「Option Explicit」から「End sub」までをドラッグで囲んで、右クリック→コピーを選んでくださいね。
クリックして詳細をチェック
Option Explicit Sub answer_sub2() If Range("B9").Formula = "=SUBSTITUTE(B7,""た"","""")" Then MsgBox "正解!(^^)!", vbOKOnly, "やったね!" Else MsgBox "不正解(T_T)", vbOKOnly, "ざんねん…" End If End Sub Sub answer_sub() If Range("E11").Formula = "=SUBSTITUTE(B11,""し"",""さん"")" Then ActiveSheet.Shapes(3).Visible = True ActiveSheet.Shapes(2).Visible = False MsgBox "正解でつ", vbOKOnly, "やったね!" Else MsgBox "不正解(T_T)", vbOKOnly, "ざんねん…" End If End Sub Sub answer_shisoku() Dim i As Integer, a As Integer For i = 1 To 4 If Not Cells(i + 4, 4).Formula = Cells(i + 29, 4).Formula Then Cells(i + 4, 4).Interior.Color = vbYellow a = a + 1 Else: Cells(i + 4, 4).Interior.Color = vbCyan End If Next i For i = 5 To 8 If Not Cells(i + 9, 4).Formula = Cells(i + 29, 4).Formula Then Cells(i + 9, 4).Interior.Color = vbYellow a = a + 1 Else: Cells(i + 9, 4).Interior.Color = vbCyan End If Next i If a = 0 Then MsgBox "正解!(∩・∀・)∩", vbOKOnly, "やったね!" Else MsgBox "黄色のセルを見直してみよう!", vbOKOnly, "不正解!" End If End Sub Sub answer_rl() Dim a As Integer a = 0 If Range("B9").Formula = "=RIGHT(B8,2)" Then a = a + 1 End If If Range("B13").Formula = "=LEFT(B12,4)" Then a = a + 2 End If If a = 3 Then Range("B9").Interior.Color = vbCyan Range("B13").Interior.Color = vbCyan ActiveSheet.Shapes("umiusi").Visible = False ActiveSheet.Shapes("ushi").Visible = True ActiveSheet.Shapes("gakko").Visible = False ActiveSheet.Shapes("syouga").Visible = True MsgBox "正解ヽ(・∀・)ノ", vbOKOnly, "やったね!" ElseIf a = 2 Then Range("B9").Interior.Color = vbYellow Range("B13").Interior.Color = vbWhite MsgBox "黄色のセルを見直そう!", vbOKOnly, "もう一回!" ElseIf a = 1 Then Range("B9").Interior.Color = vbWhite Range("B13").Interior.Color = vbYellow MsgBox "黄色のセルを見直そう!", vbOKOnly, "もう一回!" ElseIf a = 0 Then Range("B9").Interior.Color = vbYellow Range("B13").Interior.Color = vbYellow MsgBox "黄色のセルを見直そう!", vbOKOnly, "もう一回!" End If End Sub Sub answer_mid() Dim a As Integer a = 0 If Range("B9").Formula = "=MID(B8,3,2)" Then a = a + 1 End If If Range("B13").Formula = "=MID(B12,4,3)" Then a = a + 2 End If If a = 3 Then ActiveSheet.Shapes("kasago").Visible = False ActiveSheet.Shapes("kasa").Visible = True ActiveSheet.Shapes("shiki").Visible = False ActiveSheet.Shapes("kasyu").Visible = True Range("B9").Interior.Color = vbCyan Range("B13").Interior.Color = vbCyan MsgBox "正解ヽ(・∀・)ノ", vbOKOnly, "やったね!" ElseIf a = 2 Then Range("B9").Interior.Color = vbYellow MsgBox "黄色のセルを見直そう!", vbOKOnly, "もう一回!" ElseIf a = 1 Then Range("B13").Interior.Color = vbYellow MsgBox "黄色のセルを見直そう!", vbOKOnly, "もう一回!" ElseIf a = 0 Then Range("B9").Interior.Color = vbYellow Range("B13").Interior.Color = vbYellow MsgBox "黄色のセルを見直そう!", vbOKOnly, "もう一回!" End If End Sub Sub answer_cells() Dim c As Integer, r As Integer, i As Integer For r = 1 To 6 For c = 1 To 15 If Cells(c, r) = Cells(c + 27, r) Then Cells(c, r).Interior.ColorIndex = 0 Else Cells(c, r).Interior.Color = vbYellow i = i + 1 End If Next c Next r If i > 0 Then MsgBox "黄色の部分を見直してみよう!" & vbCrLf & _ i & "問 まちがいがあるよ。", vbOKOnly Else MsgBox "正解!\(^0^)/", vbOKOnly, "やったね!" End If End Sub Sub answer_shisoku3() Dim v(4) As Variant Dim i As Integer, a As Integer v(0) = 83558 v(1) = 12558 v(2) = 40178 v(3) = 17660 v(4) = 70396 a = 0 i = 0 For i = 0 To 4 If Not Cells(i + 11, 3).Value = v(i) Then Cells(i + 11, 3).Interior.Color = vbYellow a = a + 1 Else: Cells(i + 11, 3).Interior.Color = vbCyan End If Next i If a = 0 Then MsgBox "正解!くコ:彡", vbOKOnly, "やったね!" Else MsgBox "黄色のセルを見直してみよう!", vbOKOnly, "不正解!" End If End Sub Sub lastpage() If Range("N30") = "にほんあまがえる" Or Range("N30") = "ニホンアマガエル" Then MsgBox "おめでとう!", vbOKOnly, "大正解!" Worksheets("お試しシート").Visible = True Worksheets("問題作り").Visible = True Worksheets("自由シート").Visible = True With Worksheets("おめでとう!") .Visible = True .Select End With Else MsgBox "ざんねん!", vbOKOnly, "もう一回考えてみよう!" End If End Sub Sub answer_shisoku2() Dim v(7) As Variant Dim i As Integer, a As Integer v(0) = 20 v(1) = 852 v(2) = 24 v(3) = 4089 v(4) = 19740 v(5) = 55225 v(6) = 2521 v(7) = 200000000 a = 0 For i = 0 To 7 If Cells(i + 3, 4).Value <> v(i) Then Cells(i + 3, 4).Interior.Color = vbYellow a = a + 1 Else: Cells(i + 3, 4).Interior.Color = vbCyan End If Next i If a = 0 Then MsgBox "正解☆(ゝω・)v", vbOKOnly, "やったね!" Else MsgBox "黄色のセルを見直してみよう!", vbOKOnly, "不正解!" End If End Sub
使用上の注意
イラストAC・いらすとや・イラストストックからイラスト素材をお借りしています。また、自作イラストも使用しています。著作権は放棄していません。
個人の方の利用を想定しています。団体・教育機関等での使用はご遠慮ください。再配布・加工等の利用はおやめください。