VBエディタでマクロを修正
VBエディタを起動し、マクロを修正します。
- [ツール]メニューの[マクロ]から[マクロ]を選択し、[マクロ]ダイアログボックスを表示する。
▼ 図03-01 [マクロ]ダイアログボックスの表示
【Excel2007の場合】
Excel2007ではメニューバーではなく、リボンを使用します。[開発]タブが表示されている場合には、[マクロ]ボタンをクリックすると表示できます。
▼ 図03-02 Excel2007での[マクロ]ダイアログボックスの表示 - [マクロ名]ボックスから編集したいマクロ[OpenSeikyuu]を選択する。
- [編集]ボタンをクリックし、VBエディタを起動する。
▼ 図03-03 [マクロ]ダイアログボックス
VBエディタが起動しました。マクロ記録で作成されたVBAのコードが表示されます。
▼ 図03-04 Visual Basic Editor
「Workbooks.Open Filename…」の部分を使用して、コードを編集してみましょう。
ファイルの有無を判定し、処理を分岐する
「もし〜ならば〜する」という意味の「If 構文」とフォルダもしくはファイルが存在するかを判定する「Dir関数」を使用して、ファイルが存在する場合にはファイルを開き、存在しない場合にはメッセージを表示しましょう。
- 「ChDir "C:\myData"」を削除する。
- 「Workbooks.Open…」のコードの前に、「If Dir("C:\myData\請求書フォーム.xls") <> "" Then」と入力する。
※ Dir関数は指定したフォルダもしくはファイルが存在する場合にはその名前を返し、存在しない場合には長さ0の文字列を返す関数です。 - 「Workbooks.Open…」の次行に「Else」と入力する。
- 改行し、「MsgBox "請求書フォームがありません"」と入力する。
- さらに改行し、「End If」と入力する。
▼ 図03-05 処理を分岐するコードを追加
これでマクロの修正が終了しました。Excelの画面に戻り、マクロを実行するボタンを作成しましょう。