HOME > VBA広場 > Excel VBA ビギナーズ > 第6回 実用的なマクロを作る 4/4

第6回 実用的なマクロを作る 4/4

第6回 実用的なマクロを作る| 1/4  2/4  3/4  4/4 

VBエディタでマクロの中身を見る

マクロを記録したら、修正をするかどうかに関わらず、VBAへの理解を少しでも深めていくために、中身を確認するようにしましょう。今回は大した内容は記録していないのに、マクロの中身が長く、不思議に感じるかもしれません。これはエクセル既定の機能で、記録時の罫線設定の内容が、すべてVBAに出力されるのが原因です。もちろん、このままでも動作上の問題はないのですが、今回実行したいのは「斜線罫線の設定」だけですので、それ以外の罫線を設定している記述を削除してみましょう。

  1. [ツール]メニューの[マクロ]から[マクロ]を選択し、[マクロ]ダイアログボックスを表示する
    ▼ 図04-01 [マクロ]ダイアログボックスの表示
    図03-01 空白セルが選択された

    【Excel2007の場合】

    Excel2007ではメニューバーではなく、リボンを使用します。[開発]タブが表示されている場合には、[マクロ]ボタンをクリックすると表示できます。

    ▼ 図04-02 Excel2007での[マクロ]ダイアログボックスの表示
    図04-02 Excel2007での[マクロ]ダイアログボックスの表示
  2. [マクロ名]ボックスから編集したいマクロ[斜線設定]を選択する。
  3. [編集]ボタンをクリックし、VBエディタを起動する。
    ▼ 図04-03 [マクロ]ダイアログボックス
    図04-03 [マクロ]ダイアログボックス

VBエディタが起動し、“斜線設定”マクロのコードが表示されました。

▼ 図04-04 Visual Basic Editor
図04-04 Visual Basic Editor

マクロの中身を修正する

マクロを記録したら、たとえ修正が不要なマクロでも、マクロの中身を確認する習慣をつけておきましょう。今回はマクロ記録で出力された余分なプログラムコードがありますので、それを削除してみましょう。

▼ 図04-05 記録されたマクロのコード
図04-05 記録されたマクロのコード

今回のマクロで必要なのは「斜線」の罫線の設定。そのほかの罫線(外側の縦罫線や横罫線など)の設定は不要なのですが、マクロ記録ではすべての設定が出力されます。使用しない記述を削除するとすっきりしますので、「斜線」の罫線以外の記述を削除してみましょう。

斜線を指定しているコードは、以下の部分です。

With Selection.Borders(xlDiagonalDown)
      .LineStyle = xlContinuous
      .Weight = xlThin
      .ColorIndex = xlAutomatic
End With
With Selection.Borders(xlDiagonalUp)
      .LineStyle = xlContinuous
      .Weight = xlThin
      .ColorIndex = xlAutomatic
End With

したがって、その他の罫線を指定しているコードは必要が無いので、削除します。

  1. 斜線以外の罫線を設定しているコードを範囲を指定し、[Delete]キーを押す。
    ▼ 図04-06 斜線以外の罫線を指定しているコードを削除する
    図04-06 斜線以外の罫線を指定しているコードを削除する

    ▼ 図04-07 必要なコードだけが残る
    図04-07 必要なコードだけが残る

これでマクロは完成です。コードの保存をしておきましょう。

  1. [保存]ボタンをクリックし、コードを保存する。
    ▼ 図04-08 コードを保存する
    図04-08 コードを保存する
  2.  
  3. [×]ボタンをクリックしてVBエディタを終了し、エクセルの画面に戻る。
    ▼ 図04-09 [×]ボタンで終了
    図04-09 [×]ボタンで終了
  4.  

今回は斜線罫線を設定する操作は記録しましたが、斜線罫線の設定を解除する操作は記録していませんので、同じシートに対して再度マクロを実行する場合は、斜線罫線の設定を解除してから実行してください。
もし、同じシートに対して、このマクロを何度も実行したいのであれば、D4からG20のセル範囲の斜線罫線を解除する操作を、マクロ記録しておくと便利でしょう。

第6回 実用的なマクロを作る| 1/4  2/4  3/4  4/4