エクセルマクロの解説: 選択範囲に細い罫線を引く


エクセルマクロの解説: 選択範囲に細い罫線を引く

1. マクロの目的

このマクロは、アクティブなワークシートで選択している範囲に細い罫線を引くためのものです。

2. コードの解説

以下は、マクロのコードの詳細です。

Sub ThinBordersForSelection()
    Dim ws As Worksheet
    Dim rng As Range
    
    ' アクティブなワークシートを取得
    Set ws = ActiveSheet
    
    ' セルが入力されている範囲を選択
    On Error Resume Next
    Set rng = ws.UsedRange.SpecialCells(xlCellTypeConstants)
    On Error GoTo 0
    
    If Not rng Is Nothing Then
        With rng.Borders
            .LineStyle = xlContinuous
            .ColorIndex = 1
            .Weight = xlThin ' 細い罫線
        End With
    Else
        MsgBox "入力されているセルがありません。"
    End If
End Sub

解説:

  • ThinBordersForSelection という名前のサブルーチン(マクロ)を定義しています。
  • ws はアクティブなワークシートを表す変数です。
  • rng はセルが入力されている範囲を表す変数です。
  • On Error Resume NextOn Error GoTo 0 はエラーハンドリングの設定です。エラーが発生した場合に処理を続行するために使用します。
  • ws.UsedRange.SpecialCells(xlCellTypeConstants) でセルが入力されている範囲を取得します。
  • セルが存在する場合、With ブロック内で罫線のスタイル、色、太さを設定します。
  • セルが存在しない場合、エラーメッセージを表示します。

3. 使い方

  1. エクセルを開きます。
  2. Alt + F8 キーを押してマクロの一覧を表示します。
  3. ThinBordersForSelection を選択して実行します。

これで、選択している範囲のセルに細い罫線が引かれます。必要に応じてカスタマイズしてください。

: このマクロは、アクティブなワークシートで選択している範囲に細い罫線を引きます。もし他のワークシートで実行したい場合は、適切なワークシートを指定してください。


補足(エラーハンドリングについて)

  1. On Error Resume Next:

    • On Error Resume Next ステートメントは、エラーが発生した場合に処理を続行するための設定です。
    • このステートメントを使用すると、エラーが発生した行で処理が中断されず、次の行に進みます。
    • 例えば、ファイルが存在しない場合やゼロで割り算をした場合など、エラーが発生してもスクリプトが停止しないようにします。
  2. On Error GoTo 0:

    • On Error GoTo 0 ステートメントは、エラーハンドリングを無効にするための設定です。
    • このステートメントを使用すると、エラーが発生した場合に通常のエラーハンドリングが再開されます。
    • つまり、エラーが発生した行で処理が中断され、エラーメッセージが表示されます。

 エラーハンドリングは、プログラムの安定性と信頼性を高めるために重要な概念です。エラーが発生する可能性のある箇所で適切なエラーハンドリングを行うことで、ユーザーエクスペリエンスを向上させることができます。