目次
練習した九九をACCESSへ転送してデータベースを作成
こんにちは。伊川(@naonaoke)です。
今回は、弱点を克服した練習した九九をACCESSへ転送して、弱点を克服します。
転送のコードは少し難しいですが、コード自体はコピペでできます。
また、転送した九九は、正誤判定していません。
九九の正誤判定は、ACCESSで行います。
問題提起
発達障害、算数を理解していない幼児に、九九を教える。
練習した九九をデータベース化せよ
九九の回答をACCESSへ転送
ACCESSへの転送コードは、すべて、【こたえあわせ】の欄に仕込んでいます。
一問解答して、一問転送する。
この形式で行います。
ちなみに、ExcelでセルP1へ日時を入力していたのは、問題を解いた日を入力するためです。
日時を入力することで、成長過程が視覚化できます。
また、この視覚化について、ExcelへACCESSのデータベースへ転送します。
そして、印字できるようにします。
印字は、次回に紹介します。
九九の回答をACCESSへ転送 作成手順その1 転送する前の準備
【ツール】⇒【参照設定】をクリックします。
【Microsoft ActiveXDate Objects 6.1 Library】にチェックを入れます。
チェックを入れないと、ACCESSへ転送できません。
九九の回答をACCESSへ転送 作成手順その2 転送コード確認
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
九九の回答をACCESSへ転送 作成手順その2 転送コードの書き換える場所
コピペをしたら、書き換える場所は、3ヵ所です。
上の図の赤枠の場所だけを書き換えます。
これで、転送コードは完成です。
意外とカンタンではないでしょうか。
九九の正誤判定をACCESSで実行
ACCESSでの正誤判定は、IFF構文で行います。
Excelで行うIF構文と同じです。
九九の正誤判定をACCESSで実行 作成手順その1 データベース確認
九九を練習した解答は、上の図のようにACCESSに格納されています。
正誤判定は、空欄になっています。
この空欄をクエリで判定を実行します。
九九の正誤判定をACCESSで実行 作成手順その2 クエリで判定
このような感じで正誤判定ができます。
九九の正誤判定をACCESSで実行 作成手順その3 クエリ作成
判定: IIf([解答]=[段]*[数値],”○”,”×”)
この数式を入力しただけで、判定の欄はすべて、正誤判定をしてくれます。
ここがポイント
データベースは、Excelで管理するよりも、ACCESSへ転送したほうが、断然、便利です。モチはモチ屋です。このスキルを取得すると、会社では、本当に重宝されます。人格が伴ってのお話ですけどね。
まとめ
今度は、ACCESSで正誤判定をした結果をExcelへ転送します。
成長過程を視覚化します。