• 検索結果がありません。

マクロとVBA

ドキュメント内 VLOOKUP (ページ 125-159)

「マクロ」とは、繰り返し作業や定型作業、複雑な処理などの手順を登録しておき、必要なときに その手順を呼び出して実行(自動化)できる機能のことをいいます。

表計算ソフトでは、作成(入力)中の表のデータを随時並べ替えたり、会計計算書や成績一覧表の ように、すでに完成した表をもとに集計や分類、順位付けなどをさせる必要がある場合が少なくあり ません。そのため、表計算ソフトでマクロの機能を利用する効果は大きいといえます。

マクロの機能を利用するためには、キーボードやマウスの操作を記録して利用する「記録マクロ」

と、複雑な手続きを「マクロ言語」を使ってプログラムを作成して利用する方法があります。

「マクロ言語」を使ってプログラムを作成することにより、自動実行できるようになったり、「記 録マクロ」だけでは難しい、条件により作業を選択する条件分岐など複雑な処理をさせることができ ます。一方で「マクロ言語」はプログラムを組む必要があるため、難易度はやや高くなります。

「記録マクロ」を利用して操作の自動化をおこない、それをもとに条件分岐などの処理を「マクロ 言語」を追加したり、加工したりして、少しずつ処理のシステム化をしてく方法もあります。

ここで取り上げる「VBA(Visual Basic for Applications)」は、ExcelなどMicrosoftOffice 製品上で動作する「マクロ言語」です。「VBA」はアプリケーションの開発を目的としたMicrosof t社製のプログラミング言語「VB(Visual Basic)」を基にして作られており、「VBA」を理解し ていればその考え方を「VB」に応用することができます。

「VBA」と「VB」のおもな違い

「VBA」 「VB」

・Office製品に付属している。 ・パッケージとして販売。

・アプリケーションに機能を追加する。 ・単独で動作するソフト開発向け。

・プログラム動作にはExcelなどが必要。 ・プログラムを1から作る。

・Officeアプリケーション共通のマクロ言語。 ・「.EXE」拡張子を持つ実行ファイルとして作成

・「VB」に応用が可能。 される。

・実行ファイルは作成されない。

1 マクロを利用する方法

マクロは、「メニューバー」から[ツール(T)]→[マクロ(M)]と選択して、マクロの記録やマクロ の実行などができます。

○メニューバーから記録マクロやVBAを利用したマクロを作成・利用する方法

VBAのコードを編集したり、ボタンなどのツールを簡単に利用したマクロを作成するためには、

「Visual Basicツールバー」を表示して利用すると便利です。

○「Visual Basicツールバー」を表示してマクロを作成・利用する方法

メニューバーの [表示(V)] → [ツールバー(T)] → [Visual Basic]でツールバーを表示します。

※ マクロウィルス対策

マクロウィルスはコンピュータウィルスの一種で、VBAを利用しています。これらの多 くはブックを開くと自動実行されるため、マクロを有効にしてブックを開くだけでウィルス に感染してしまいます。

そこで、ブックを開く際には、事前にセキュリティレベルを「中」に設定しておき、警告 メッセージが表示されたら、作成者や入手先が不明な場合は[マクロを無効にする]をクリッ クして、市販のウィルスチェックソフトでウィルスチェックや除去をした後利用すると安全 と思われます。

逆に、「最高」や「高」に設定していると、作成したマクロが実行できなくなります。

マクロを利用する際は、セキュリティの設定を事前に確認しておきましょう。

※ セキュリティレベルのデフォルト値 Excel2000=「中」

Excel2003=「高」 ※設定「高」では、自作したマクロも実行できなくなります。

マクロを含んだブックを開くと表示される警告メッセージ

(セキュリティレベル「中」)

※ セキュリティレベルの設定方法

① 「Visual Basicツールバー」の[セキュリティ]を(または、「メニューバー」の[ツール]

→[マクロ]→[セキュリティ]を順に)クリックします。

② 「セキュリティ」の画面で[中]を選択し、[OK]ボタンをクリックします。セキュリティ レベルがこの時点から適用されますので、再度ファイルを開いてマクロを有効にしてくだ さい。

2 キー操作やマウス操作を記録してマクロを自動作成する(記録マクロの利用)

「会計簿VBA.xls」ファイルを利用して、出納簿を印刷する記録マクロを作成します。

(1) 「会計簿VBA.xls」のファイルを開き、「出納帳」ワークシートを表示します。

(2) マクロを記録します。

① [Visual Basicツールバー]の「マクロの記録」ボタンをクリックします。

記録中には、右のような記録終了バー が表示されます。

② [マクロ名]に「出納帳印刷」と入力し、[OK]をクリックします。

※ショートカットキー欄に文字を入力すると、

「Ctrlキー + 設定した文字キー」でマクロを 実行(ショートカット)することができます。

<<ここからすべてのキー操作、マウス操作がマクロとして記録されます>>

③ 印刷範囲の設定操作をします。表のB1からN45までを範囲指定して[メニューバー]→[フ ァイル]→[印刷範囲]→[印刷範囲の設定]の順にクリックします。続いて、[メニューバ ー]→[ファイル]→[印刷]で印刷ウィンドウを表示し、設定を確認して[OK]ボタンを クリックします。

④ セルA1をクリックして、範囲指定を解除します。プリンタから、出納帳が出力されて印刷が 終了します。

[記録終了]ボタンをクリックして、マクロの記録を終了します。

⑤ これまでの操作がマクロとして記録されています。

<<出納帳印刷の操作がマクロに記録されました>>

(3) マクロをメニューバーから実行する

① [Visual Basicツールバー]の「マクロの実行」ボタンをクリックします。

② 表示された「マクロ」ウィンドウで「出納帳印刷」を選択した状態で、「実行」ボタンをク リックします。

※出納帳が印刷されます。

※マクロ作成時に、ショートカット キーを設定したときは、

CTRLキー + ○キーを押して 実行できます。

(4) 作成したマクロの内容を確認する

① [Visual Basicツールバー]の「マクロの実行」ボタンをクリックします。

② 「マクロ」のウィンドウで、「出納帳印刷」が反転した状態で、[編集]ボタンをクリックし ます。

③ 「Visual Basic Editer」が起動し、「出納帳印刷」マクロの内容が表示されます。

「出納帳印刷」マクロの意味は、以下のとおりです。

Sub 出納帳印刷() ←マクロの名前でマクロの最初を表す ()が付いたもの '

' 出納帳印刷 Macro

' マクロ記録日 : 2007/9/3 ユーザー名 : 岩手県立総合教育センター マクロの説明 '

'

Range("B1:N45").Select ←セル範囲B1〜N45まで選択 ActiveSheet.PageSetup.PrintArea = "$B$1:$N$45" ←印刷範囲を設定

ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True ←印刷を実行 Range("A1").Select ←セルA1を選択

End Sub ←マクロの最後を表す

<演習7−1>

マクロ名「出納帳印刷プレビュー」という出納帳の印刷プレビュー画面を表示する記録マクロを 作成してみましょう。

「出納帳印刷プレビュー」マクロの内容

(6) マクロウィンドウのその他の操作

マクロウィンドウでは、次の操作をすることができます。

マクロの削除 → 「削除」ボタン

ショートカットキーの割り当て・変更、説明文の変更 → 「オプション」ボタン マクロの保存先の変更 → 「 < 」ボタンで表示し保存先を選択

(7) マクロボタンの作成

マクロを簡単に実行する方法として、マクロボタンを利用する方法があります。

ボタンの部品をワークシート上に作成し、そのボタンにマクロを登録して利用すると、誰でも 簡単に複雑な作業を実行することできます。

マクロボタンを作成する方法には、次ページのように2つの方法がありますが、ここではフォ ームツールバーのコマンドボタンを利用して作成してみましょう。

マクロボタンの作成方法

○フォームツールバーのコマンドボタンを利用する方法

・ボタンに表示される名前は「ボタン×」。

・右ショートカットメニューに[マクロの登録]があ る。

・文字の色やフォント種の程度の書式変更ができる。

・ワークシート上に作成して、すでに作成したマクロ を登録して利用することが多い。

○コントロールツールボックスのコマンドボタンを利用する方法

・ボタンに表示される名前は「Command Button1」。

・デザインモードがONの状態で編集できる。マクロを 実行するときは、デザインモードをOFFにする。

・ [プロパティ]でボタンの色などを変更できる。

・ワークシート上やユーザフォーム上に作成した後に VBAコードを記述することが多い。

① [フォームツールバー]を表示します。

[メニューバー]→[表示]→[ツールバー]→[フォーム]の順に選択し、[フォームツ ールバー]を表示します。

② [ボタン]をクリックして、ワークシート上のセルP7〜P8の大きさに合わせて、ボタンの大 きさをドラッグして「ボタン1」を作成します。

③ 「マクロ」ウィンドウが表示されますので、「出納帳印刷」を選択し、[OK]ボタンをクリ ックします。

④ ボタンの表面のテキストをクリックして(または右クリック→[テキストの編集])、「印刷」

と表示を変更します。

※ボタンが選択状態(四方に○がついた状態)でないとき にクリックすると、印刷が実行されてしまいます。

選択状態にするには、一度右クリックしてからボタンを 選択してください。

⑤ ボタン以外のワークシートのあいているセルをクリックし、ボタンの選択を解除します。

これで、マクロボタンができあがりました。ボタンをクリックして動作を確認してください。

<演習7−2>

「プレビュー」ボタンをセルP9〜P10に作成して「出納帳印刷プレビュー」

マクロを登録してみましょう。

動作を確認した後、上書き保存し、このファイルを閉じます。

ドキュメント内 VLOOKUP (ページ 125-159)

関連したドキュメント