コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 永 井 喜 則 同 時 開 講 に 至 った 経 緯 理 工 学 部 1 年 生 の 履 修 科 目,コンピュータリテラシ A, B は 学 系 によって 必 修 になっている 学 生 の 履 修 が 特 定 の 時 間 に 集 中 し, 教 育 用 端 末 室 の 人 数 を 大 幅 に 超 過 して 学 年 初 めの 調 整 が 毎 年 起 こっていた そ こで, 理 工 学 部 と 話 し 合 い 火 曜 日 と 木 曜 日 の 1 時 限 目 に 置 き,その 時 間 には 他 の 1 年 生 科 目 を 入 れない という 事 になった 理 工 学 部 の 1 年 生 は400 名 ほどであるので, 教 育 用 端 末 室 の 収 容 人 数 が48 名 と52 名 と いう 状 況 と 少 人 数 教 育 でないと 教 育 効 果 が 上 がらない 最 近 の 学 生 資 質 を 考 慮 した 理 工 学 部 の 方 針 で 同 時 開 講 とすることになった 平 成 22 年 度 のコンピュータリテラシ A, B の 開 講 は 火 曜 日 1 時 限 4 クラス, 木 曜 日 1 時 限 4 クラスとし,そして 再 履 修 クラスを 水 曜 日 1 時 限 に 設 けることになった これを 担 当 する 教 員 は 9 名 必 要 となる 情 報 科 学 センターの 非 常 勤 講 師 に 御 願 いして 同 時 開 講 を 実 現 した 再 履 修 クラス は80 名 とし, 一 人 の 非 常 勤 講 師 で 行 うことになった VBA に 対 する 問 い 合 わせとガイドラインの 作 成 コンピュータリテラシ A, B は Excel の 使 い 方 の 習 熟 を 目 的 とするのが 理 工 学 部 の 教 育 方 針 である そ の 中 に VBA(Visual Basic for Application)を 使 えるようにすることも 入 っている コンピュータリテラ シ A では 情 報 処 理 A, B と 類 似 の Excel の 使 い 方 を 教 え,コンピュータリテラシ B では,マクロや VBA を 教 えることになっている 担 当 する 教 員 は 情 報 処 理 A, B で Excel の 使 い 方 を 教 えているので,コンピ ュータリテラシ A は 情 報 処 理 A, B の 教 育 経 験 で 対 応 できるが,コンピュータリテラシ B で 教 える VBA は 何 を 何 処 まで 教 えるのかに 関 して 未 経 験 の 人 が 殆 どであった そこで,VBA で 教 える 内 容 に 関 する 質 問 が 春 期 にしばしばあった そこで VBA を 教 えるに 当 って 必 要 となる 事 柄 と 講 義 内 容 のガイドライン を,シラバスを 参 照 して 作 成 し, 平 成 22 年 10 月 に 担 当 教 員 に 配 布 した 以 下 に,その 内 容 を 示 す VBA の 講 義 内 容 に 関 するガイドライン コンピュータリテラシ B の 統 一 シラバスでは 第 7 回 から 第 13 回 で Excel VBA を 教 えることになってい る シラバスに 沿 って 具 体 的 内 容 を 例 示 したものをガイドラインとして 担 当 の 教 員 に 配 布 した また, 講 義 に 利 用 可 能 なように 電 子 ファイルも 配 布 した それを 以 下 に 示 す 本 報 告 では, 以 下 のガイドラインの 中 に 現 れる 3 つの 資 料 O ce2007 Excel に 於 いてマクロを 使 う 為 の 手 続 き, マクロの 書 き 方, 実 行 の 仕 方,マクロの 保 存, マクロを 含 む Book の 開 き 方 を 付 録 として 付 けた 国 士 舘 大 学 情 報 科 学 センター
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) 第 7 回 マクロ 機 能 の 利 用 最 初 に 知 るべきこととして 次 のことを 教 えて 下 さい マクロとは, マクロ 作 成 の 流 れ, マクロの 保 存, マクロの 実 行 Excel 2007では 開 発 タブのメニューは 表 示 されていないので, 開 発 タブをメニューに 表 示 する 手 続 きが 必 要 となる この 操 作 に 関 しては 資 料 O ce2007 Excel に 於 いてマクロを 使 う 為 の 手 続 き を 用 意 した また,マクロは VBE を 使 って Visual Basic のコマンドを 書 いて Excel 内 で 実 行 することであ る このことを 学 生 の 理 解 補 助 のために 操 作 に 関 わる 一 連 の 事 項 を 簡 単 な 例 で 示 した 資 料 マ クロの 書 き 方, 実 行 の 仕 方,マクロの 保 存 を 用 意 した そして,セキュリティーが 強 化 された Excel2007では 教 室 環 境 の 教 育 用 端 末 コンピュータではマ クロを 有 効 にする 手 続 きが 必 要 になる このためにマクロを 持 つ Excel book を 立 ち 上 げて 使 う 場 合 の 資 料 も 用 意 した 第 8 回 Excel VBA (1) VBA エディタノ 使 い 方, コードの 見 方, ヘルプ 機 能 の 使 い 方, セルの 選 択 方 法, セ ルを 対 象 にした 処 理, 変 数 を 使 った 処 理 メッセージボックス 形 式 MsgBox メッセージ 内 容,ボタンの 型 ボタンの 型 は 省 略 すると 既 定 値 になる ボタンの 型 vbokonly( 既 定 値 ),vbyesno, vbyesnocancel, vbokcancel, vbabortretryignore 数 値 の 表 示 MsgBox 数 値, 変 数 を 用 いる 例 a=5 MsgBoxa InputBox を 使 った 入 力 例 引 数 Value に 入 力 してメッセージボックスを 使 って 表 示 する Sub 名 称 Value=InputBox( 何 か 入 力 して 下 さい ) MsgBox Value End Sub 四 則 演 算 演 算 子 は 次 のように 成 っている 足 し 算 + 引 き 算 - 掛 け 算 割 り 算 / 割 り 算 の 商 割 り 算 の 余 り Mod べき 乗 7Mod2=1, 7 3=2, 7 3=7 7 7=343 文 字 の 連 結 は を 用 いる 文 字 列 1 文 字 列 2 = 文 字 列 1 文 字 列 2
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 セルへの 値 の 読 み 取 りと 代 入 代 入 コード Range( セル 番 号 ).Value= 文 字 列 読 み 出 しコード MsgBox Range( セル 番 号 ).Value (セルに 書 かれたものをメッセージボックスに 表 示 する ) セルをアクティブにする Range( セル 番 号 ).Activate OŠset 関 数 OŠset( 基 準 となるセル, 行 数, 列 数 ) セルの 移 動 を 行 う OŠset(A3,2,1)は 行 方 向 に 2 列 方 向 に 1 移 動 した B5 セルである ActiveCell. OŠset(a, b)はアクティブに 成 っているセルから 下 に a, 右 に b 行 ったセルをさす セルが 空 か 否 かを 調 べる 関 数 は IsEmpty( 調 べるセル,Value)である シートをアクティブにするには,Worksheet( シート 名 ).Activate を 実 行 する 選 択 したセルに 代 入 する 場 合 には Selection. Value= 文 字 列 を 実 行 する 第 9 回 Excel VBA (2) 条 件 分 岐 処 理 If 条 件 式 Then 条 件 を 満 たした 時 に 実 行 する 処 理 End if If 条 件 式 Then 条 件 を 満 たした 時 に 実 行 する 処 理 Else 条 件 を 満 たさない 時 に 実 行 する 処 理 End if これらの 場 合, 実 行 する 処 理 が 一 行 で 書 ける 時 には 全 体 を 一 行 で 書 くことができる If 条 件 式 Then 命 令 文 If 条 件 式 Then 命 令 文 1Else 命 令 文 2 第 10 回 Excel VBA (3) 繰 り 返 し 処 理
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) For I= 開 始 値 to 終 了 値 Step 刻 み 幅 繰 り 返 し 実 行 する 処 理 Next I 繰 り 返 しの 途 中 で 抜 け 出 るコマンド Exit For ( 注 Exit For の 前 に 条 件 文 を 入 れて 使 うのが 普 通 である ) その 他 の 繰 り 返 し 文 1) For Each For Each 変 数 名 In グループ 名 繰 り 返 し 実 行 処 理 の 命 令 Next 2) Do While Do While 条 件 文 条 件 を 満 たす 場 合 の 実 行 処 理 命 令 Loop 3) Do~Loop While 条 件 を 満 たさない 場 合 は 1 回 だけ 実 行 する Do 実 行 処 理 命 令 Loop While 条 件 文 4) Do Until Do Until 停 止 条 件 実 行 処 理 命 令 Loop 第 11 回 Excel VBA (4) 複 数 モジュールの 使 用 法 Excel でマクロを 書 く 場 所 を 標 準 モジュール と 言 う 複 数 のモジュールの 使 用 では, 新 たに 追 加 したマクロを 既 存 のマクロと 連 動 させて 使 うことを 教 える イベントプロシージャー セル や シート など Excel を 構 成 する 要 素 ( 部 品 )をオブジェクトと 言 う プロパティー はオブジェクトの 属 性 やオブジェクトを 構 成 する 要 素 ( 部 品 )に 対 する 名 称 である メソ
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 ッドはオブジェクトを 操 作 する 命 令 を 指 す 同 じ 種 類 のオブジェクトの 集 まりを コレク ション と 称 する イベントとはオブジェクトに 対 する 操 作 を 意 味 する 従 ってイベントには 必 ず 対 象 となるオ ブジェクトが 存 在 する プロシージャーとは 命 令 文 の 集 まりである マクロ=プロシージャー と 考 える オブジェクトに 対 してイベントが 発 生 しオブジェクトが 実 行 されることを イベン トプロシージャー が 実 行 されたと 言 う イベントプロシージャーには オブジェクト 名 イベ ント 名 という 形 式 で 名 前 が 付 く イベントプロシージャーとはオブジェクトの 実 行 命 令 の 集 まりと 考 えて 良 さそうである 次 の 点 を 忘 れないこと プロシージャー(マクロ)は 標 準 モジュール に 書 く イベントプロシージャーは オブジェクトモジュール に 書 く オブジェクトのプロパティーに 対 する 表 記 オブジェクト 名.プロパティー オブジェクト 操 作 命 令 の 表 記 オブジェクト 名.メソッド 第 12 回 Excel VBA (5) ダイアログボックスの 使 用 法 ダイアログボックスとはオブジェクトを 実 行 する 時 に 現 れるウィンドーのことである Excel VBA のメッセージボックス 等 としても 現 れるが,マクロの 記 録 やファイル 操 作 に 関 連 させて 教 えて 下 さい 第 13 回 Excel VBA (6) ユーザ 定 義 関 数 の 作 成 法 Function プロシージャーの 使 い 方 を 教 える Function ユーザ 定 義 関 数 名 処 理 命 令 End Function VBA の 学 生 理 解 秋 期 のコンピュータリテラシ B の 講 義 期 間 の 途 中 や 終 り 頃 に 何 人 かの 担 当 者 と VBA の 講 義 内 容 や 学 生 理 解 に 関 して 話 をした その 中 で 思 った VBA に 対 する 学 生 の 理 解 上 の 問 題 点 を 述 べる VBA は Visual Basic というプログラミング 言 語 に 基 づいたプログラミング 教 育 になるということであ る 理 工 学 部 の 方 針 は VBA によってプログラミング 教 育 を 始 めたいと 読 み 取 れる VBA をプログラミ ングの 開 始 という 視 点 で 捉 えると,コンピュータリテラシ B の 7 回 から13 回 までの 7 回 の 講 義 回 数 では 足 りないと 思 われる 実 際, もう 少 し 時 間 をかけないと 理 解 させるのが 難 しい という 声 を 数 人 の 担 当
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) 者 から 伺 った 分 岐 処 理 (if 構 文 )や 繰 り 返 し 処 理 (For~next, 等 )は 与 えられた 例 を,そのまま 打 ち 込 み 実 行 する 場 合 は 大 きな 問 題 が 無 い しかし,それを 応 用 して 自 由 課 題 として 与 えられた 時 には 全 く 手 の 出 ない 学 生 が 増 える このような 問 題 点 はプログラミングに 関 して, 現 在 の 学 生 には 良 く 見 られる このような 例 から,コンピュータリテラシ B は VBA を 使 った Visual Basic プログラミング 授 業 として 15 回 の 講 義 内 容 を 見 直 す 必 要 があると 思 われる 付 録 1 O ce2007 Excel に 於 いてマクロを 使 う 為 の 手 続 き 開 発 タブの 表 示 手 続 き マクロを 使 えるようにするには Excel2007では 開 発 タブがリボン(ホーム, 挿 入,ページレイアウト, 等 が 書 かれている 行 )に 表 示 されるように Excel オプションの 設 定 をしないといけない それは O ce ボタンをクリックして Excel オプションを 探 し,それをクリックして 開 発 タブがリボンに 表 示 され るようにチェックボックスにチェックを 入 れる 必 要 がある この 作 業 は 簡 単 なので, 毎 回 行 ったとしても 大 きな 負 担 にはならないと 考 えられる また, 繰 り 返 すことによって Excel の 操 作 に 慣 れるということ も 期 待 できる 以 下 に,その 手 続 きを 示 す マクロを 使 えるようにする 前
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 開 発 タブの 表 示 方 法 1 O ce ボタンをクリックして Excel オプションを 選 ぶ 2 Excel のオプションをクリックして 開 発 タブをリボンに 表 示 するチェックボックスにチェックを 入 れる
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) マクロや VBA が 使 えるように 成 った 状 態 開 発 タブが 表 示 されている 操 作 としては,O ce ボタンのクリック,Excel オプションのクリック, 開 発 タブをリボンに 表 示 す ると 書 かれたチェックボックスにチェックを 入 れる,OK ボタンのクリックの 4 つである 付 録 2 マクロの 書 き 方, 実 行 の 仕 方,マクロの 保 存 VBE(Visual Basic Editor)の 起 動 起 動 のための 操 作
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 起 動 した 結 果 標 準 モジュールの 追 加 ( 新 しいマクロの 作 成 ) 1. 挿 入 タブをクリックすると,モジュール 型 の 選 択 ができる
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) 2. 選 択 した 標 準 モジュールのウィンドー 3. マクロ 名 を 書 く
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 4. MessageBox に 文 字 を 書 く マクロの 実 行 1. 実 行 タブをクリックして Sub/ユーザーフォームの 実 行 をクリックしてマクロを 実 行 する
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) 2. 実 行 した 結 果 マクロの 保 存 1. ファイルタブをクリックして Book 1 の 上 書 き 保 存 を 選 ぶ
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 2. 名 前 を 付 けて 保 存 のウィンドーが 現 れるので,ファイル 名 を 打 ち 込 んで 保 存 ボタンをクリックする 3. ファイルの 種 類 は Excel マクロ 有 効 book とうる
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) 付 録 3 マクロを 含 む Book の 開 き 方 MS-Excel はセキュリティー 強 化 をしているのでマクロを 含 む Excel ファイルを 開 くと,マクロを 無 効 にするようになっている 以 下 の 警 告 が 出 たらオプションをクリックしてマクロを 含 む book を 使 えるよ うに 設 定 を 変 更 して 下 さい オプションをクリックした 後 に 現 れるセキュリティーオプションのウィンドー
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 コンテンツを 有 効 にするクリックして,OK ボタンを 押 して 有 効 になれば 問 題 ない マクロを 含 むファイルを 開 いてみる マクロが 書 かれているファイルを 再 び 開 いてもマクロが 無 効 にされる 場 合 にはセキュリティー 警 告 のウィ ンドーの 下 にある セキュリティーセンターを 開 く のボタンをクリックして 下 さい
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) セキュリティーセンターのウィンドーが 立 ち 上 がる すべてのマクロを 有 効 にする をチェックして OK ボタンをクリックする 再 度 マクロを 含 むファイルを 開 き 警 告 が 現 れないことを 確 認 する この 時,マクロを 含 む book が 普 通 に 使 える
コンピュータリテラシ B での VBA 教 育 内 容 の 共 有 化 マクロが 使 えるか 確 認 したのが 以 下 の 画 面 である 開 発 タブをクリックしてマクロタブをクリックする マクロの 選 択 ウィンドーが 現 れるので, 実 行 したいマクロを 選 んで 実 行 ボタンをクリックする
国 士 舘 大 学 情 報 科 学 センター 紀 要 第 回 e-learning 研 究 会 報 告 書 (2011 年 ) マクロが 正 常 に 実 行 されることが 確 認 できる