目次
段の練習
こんにちは。伊川(@naonaoke)です。
今回が、段の練習のシートを作成したいと思います。
問題提起
発達障害、算数を理解していない幼児に、九九を教える。
段の練習をクリアせよ。
その前に前回の足りないところを修正
サンプルファイルとして、公開していたファイルには、バグがありました。
上の図の部分を追加しています。
当時はどうしていいのかわからず、そのまま公開していました。
Select Caseを利用してコードを記載しました。
Select Caseに関しては、上の記事を確認してください。
Sub たす() Range("M8") = "" Range("A27") = "" Range("G8") = Range("G8") + 1 Select Case Range("G8") Case Is = 1 Range("G19") = "いん" Case Is = 2 Range("G19") = "に" Case Is = 3 Range("G19") = "さん" Case Is = 4 Range("G19") = "し" Case Is = 5 Range("G19") = "ご" Case Is = 6 Range("G19") = "ろく" Case Is = 7 Range("G19") = "しち" Case Is = 8 Range("G19") = "はち" Case Is = 9 Range("G19") = "く" End Select
もんだいに記載しているコード
もんだいに記載しているコード 作成手順その1 考え方
正解したときは上の図のようになります。
もんだいに記載しているコード 作成手順その2 実際のコード
②の消すに関しては、下記のコードになります。
④の1増えるコードは、下記のコードになります。
③の読み方が変わるのは、下記のコードになります。
コードを記載する
こたえあわせに記載しているコード
こたえ合わせに記載しているコード 作成手順その1 考え方
こたえあわせに記載しているコード 作成手順その2 実際のコード
Sub 段答() Range("P1") = Date If Range("M8") = Range("A8") * Range("G8") Then Range("A27") = "やったね!! せいか~い" Else Range("A27") = "ざんねーん (T T)" End If Dim con As New ADODB.Connection Dim rs As New ADODB.Recordset Dim conStr As String conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" & ActiveWorkbook.Path & "\九九.accdb" con.Open ConnectionString:=conStr rs.Open Source:="MT_計算", ActiveConnection:=con, _ CursorType:=adOpenKeyset, LockType:=adLockOptimistic With rs .AddNew .Fields("段").Value = Range("A8") .Fields("数値").Value = Range("G8") .Fields("解答").Value = Range("M8") .Fields("日時").Value = Range("P1") .Update rs.Close con.Close End With MsgBox "つぎもがんばろう" If Range("G8") = 9 Then Range("A27") = "お し ま い " MsgBox "おしまい" Range("M8") = "" Range("G8") = "" Worksheets("表紙").Activate End If End Sub
※ACCESSの転送コードは無視してください
ここがポイント
ここがポイント
条件分岐は、カンタンに使いこなすことができます。頭の中に、複雑なフローチャートを作成しなくてもいいです。当たり前のことを記載しましょう。
まとめ
今回は、条件分岐とMsgBoxを使って段の練習を作成しました。
次回は、ランダムで数字が代入される形式のシートを作成します。