大体でIT

-ちょっと使えるネタを紹介-

大体でIT

Excel VBAで、コメントの書式、位置、サイズを自動調整する方法について、ご紹介します。コメントの書式の設定などは、「.Comment.Shape」を使って設定します。コメントの設定をうまく組み合わせると、コメントに数式を入力して、見やすくしたりするなど、コメントを便利に使うことができます。

はじめに

この記事では、コメントの書式や、位置、大きさを設定する方法について、ご紹介します。

コメントの書式などを変更する場合は、「.Comment.Shape」を使って、設定します。

コメントを設定するVBAコードを、うまく組み合わせると、セルに入力されている数式を確認しやすくなったり、便利に使えます。

では、コメントの書式や、位置、サイズを設定する方法について、解説していきます。

この記事で紹介すること

  • コメントの書式や、位置、大きさを設定する方法

目次から見たい項目へ移動すると便利ですよ。

目次

VBAでコメントの文字書式を変更

VBAでコメントの文字書式を変更する方法を、ご紹介します。

文字書式を変更する、VBAコードをまとめると、こんな感じです。

With Range("A3").Comment.Shape
    'サイズを設定
    .TextFrame.Characters.Font.Size = 20
    '太字
    .TextFrame.Characters.Font.Bold = True
    '斜体
    .TextFrame.Characters.Font.Italic = True
    '下線
    .TextFrame.Characters.Font.Underline = xlUnderlineStyleSingle
    '文字色
    .TextFrame.Characters.Font.Color = RGB(0, 0, 255)
End With

では、一つずつVBAコードを実行してみます。

文字サイズ

最初に、文字サイズを変更してみます。

VBAコードは、こんな感じです。

Sub TEST1()
    
    'コメントの文字サイズ
    Range("A3").Comment.Shape.TextFrame.Characters.Font.Size = 20
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、文字サイズを「20」に変更してみます。

文字サイズを変更

文字サイズを20に変更

文字サイズが「20」になりました。

文字を太字

次は、文字を太字に変更してみます。

VBAコードは、こんな感じです。

Sub TEST2()
    
    'コメントを太字
    Range("A3").Comment.Shape.TextFrame.Characters.Font.Bold = True
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、文字を「太字」に変更してみます。

文字を太字に変更

文字を太字に変更

文字が「太字」になりました。

文字を斜体

次は、文字を「斜体」に変更してみます。

VBAコードは、こんな感じです。

Sub TEST3()
    
    'コメントを斜体
    Range("A3").Comment.Shape.TextFrame.Characters.Font.Italic = True
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、文字を「斜体」に変更してみます。

文字を斜体に変更

文字を斜体に変更

文字が「斜体」になりました。

文字に下線

次は、文字に「下線」を付けてみます。

VBAコードは、こんな感じです。

Sub TEST4()
    
    'コメントに下線を引く
    Range("A3").Comment.Shape.TextFrame.Characters.Font.Underline = xlUnderlineStyleSingle
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、文字に「下線」を付けてみます。

文字に下線を追加

文字に下線を追加

文字に「下線」が追加されました。

文字色

次は、文字を「赤色」に変更してみます。

VBAコードは、こんな感じです。

Sub TEST5()
    
    'コメントの文字色を設定
    Range("A3").Comment.Shape.TextFrame.Characters.Font.Color = RGB(255, 0, 0)
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、文字を「赤色」に変更してみます。

文字色を赤色に変更

文字を赤色に変更

文字が「赤色」になりました。

VBAでコメントの文字配置を変更

次は、VBAでコメントの文字配置を変更してみます。

VBAコードをまとめると、こんな感じです。

With Range("A3").Comment.Shape
    .TextFrame.HorizontalAlignment = xlRight '右揃え
    .TextFrame.HorizontalAlignment = xlCenter '中央揃え
    .TextFrame.HorizontalAlignment = xlLeft '左揃え
    .TextFrame.VerticalAlignment = xlBottom '下揃え
    .TextFrame.VerticalAlignment = xlCenter '上下中央揃え
    .TextFrame.VerticalAlignment = xlTop '上揃え
End With

では、それぞれを実行してみます。

右揃え

次は、文字を「右揃え」にしてみます。

VBAコードは、こんな感じです。

Sub TEST6()
    
    'コメントを右揃え
    Range("A3").Comment.Shape.TextFrame.HorizontalAlignment = xlRight
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、文字を「右揃え」にしてみます。

文字を右揃え

文字が右揃えになる

文字が「右揃え」になりました。

中央揃え

次は、文字を「中央揃え」にしてみます。

VBAコードは、こんな感じです。

Sub TEST7()

    'コメントを中央揃え
    Range("A3").Comment.Shape.TextFrame.HorizontalAlignment = xlCenter
    
End Sub

セルのコメントの配置を、右揃えにしておきました。

文字を右揃えにしておく

セルのコメントを右揃えにしておいた

では、文字を「中央揃え」にしてみます。

文字を中央揃えにする

文字が中央揃えになる

文字が「中央揃え」になりました。

左揃え

次は、文字を「左揃え」にしてみます。

VBAコードは、こんな感じです。

Sub TEST8()
    
    'コメントを左揃え
    Range("A3").Comment.Shape.TextFrame.HorizontalAlignment = xlLeft
    
End Sub

セルのコメントの配置を、中央揃えにしておきました。

文字を中央揃えにしておく

セルのコメントを中央揃えにしておいた

では、文字を「左揃え」にしてみます。

文字を左揃えにする

文字が左揃えになる

文字が「左揃え」になりました。

下揃え

次は、文字を「下揃え」にしてみます。

VBAコードは、こんな感じです。

Sub TEST9()
    
    'コメントを下揃え
    Range("A3").Comment.Shape.TextFrame.VerticalAlignment = xlBottom
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、文字を「下揃え」にしてみます。

文字を下揃えにする

文字が下揃えになる

文字が「下揃え」になりました。

上下中央揃え

次は、文字を「上下中央揃え」にしてみます。

VBAコードは、こんな感じです。

Sub TEST10()
    
    'コメントを上下中央揃え
    Range("A3").Comment.Shape.TextFrame.VerticalAlignment = xlCenter
    
End Sub

セルのコメントを、下揃えにしておきました。

文字を下揃えにしておく

セルのコメントを下揃えにしておいた

では、文字を「上下中央揃え」にしてみます。

文字を上下中央揃えにする

文字が上下中央揃えになる

文字が「上下中央揃え」になりました。

上揃え

次は、文字を「上揃え」にしてみます。

VBAコードは、こんな感じです。

Sub TEST11()
    
    'コメントを上揃え
    Range("A3").Comment.Shape.TextFrame.VerticalAlignment = xlTop
    
End Sub

セルのコメントを、上下中央揃えにしておきました。

文字を上下中央揃えにしておく

セルのコメントを上下中央揃えにしておいた

では、文字を「上揃え」にしてみます。

文字を上揃えにする

文字が上揃えになる

文字が「上揃え」になりました。

VBAでコメントの背景色を変更

VBAで、コメントの背景色を変更してみます。

コメントの背景色

コメントの背景色を「青色」に変更してみます。

VBAコードは、こんな感じになります。

Sub TEST12()
    
    'コメントの背景色
    Range("A3").Comment.Shape.Fill.ForeColor.RGB = RGB(0, 0, 255)
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力しておく

セルにコメントを入力しておいた

では、VBAコードを実行して、背景色を「青色」に変更してみます。

コメントの背景色を青色に変更

コメントの背景色を青色に変更

コメントの背景色を青色に変更できました。

VBAでコメントの位置を変更

VBAで、コメントの位置を変更してみます。

コメントの位置を変更するVBAコードをまとめると、こんな感じです。

With Range("A3").Comment.Shape
    '左端を設定
    .Left = Range("D3").Left
    '上端を設定
    .Top = Range("B5").Top
End With

コメントの「左端の位置」と、「上端の位置」を、設定することで、コメントの位置を設定することができます。

もちろん、右端の位置と、下端の位置を設定することもできます。

ただ、左端の位置と、上端の位置を設定した方が、わかりやすいですね。

左端の位置を変更

コメントの左端の位置を変更してみます。

コメントの左端の位置を、セルD3の左端に合わせてみます。

Sub TEST13()
    
    'コメントの左端を設定
    Range("A3").Comment.Shape.Left = Range("D3").Left
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、実行してみます。

コメントの左端の位置を変更

セルのコメントの左端を、セルD3の左端に合わせた結果

コメントの左端が、セルD3の左端に、移動しました。

上端の位置を変更

次は、コメントの上端の位置を変更してみます。

コメントの上端の位置を、セルB5の上端に合わせてみます。

Sub TEST14()
    
    'コメントの上端を設定
    Range("A3").Comment.Shape.Top = Range("B5").Top
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力しておく

セルにコメントを入力しておいた

では、実行してみます。

コメントの上端の位置を変更

セルのコメントの上端を、セルB5の上端に合わせた結果

コメントの上端が、セルB5の上端に、移動しました。

コメントの位置も自由自在に、移動することができます。

VBAでコメントの大きさを変更

次は、VBAで、コメントの大きさを変更してみます。

コメントの大きさは、横幅と縦幅を、変更することができます。

VBAコードをまとめるとこんな感じです。

With Range("A3").Comment.Shape
    '横幅を設定
    .Width = 200
    '縦幅を設定
    .Height = 100
End With

では、それぞれのVBAコードを実行してみます。

横幅を変更

VBAで、コメントの横幅を「200」に変更してみます。

VBAコードは、こちらです。

Sub TEST15()
    
    'コメントの横幅を設定
    Range("A3").Comment.Shape.Width = 200
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、VBAコードを実行して、コメントの横幅を「200」にしてみます。

コメントの横幅を変更

セルのコメントの横幅を100にした結果

コメントの横幅が、変更されました。

縦幅を変更

VBAで、コメントの縦幅を「100」に変更してみます。

VBAコードは、こちらです。

Sub TEST16()
    
    'コメントの縦幅を設定
    Range("A3").Comment.Shape.Height = 100
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力しておく

セルにコメントを入力しておいた

では、VBAコードを実行して、コメントの縦幅を「100」にしてみます。

コメントの縦幅を変更

セルのコメントの縦幅を200にした結果

コメントの縦幅が、変更されました。

コメントの大きさも、自由自在に変更することができます。

VBAでコメントの大きさを自動調整

VBAで、コメントの大きさを自動調整してみます。

この機能は、かなり便利です。

AutoSizeを使う

コメントの大きさを自動調整するには、「AutoSize」を使います。

VBAコードは、こんな感じになります。

Sub TEST17()
    
    'コメントの大きさを自動調整
    Range("A3").Comment.Shape.TextFrame.AutoSize = True
    
End Sub

セルにコメントを入力しておきました。

セルにコメントを入力

セルにコメントを入力しておいた

では、コメントの大きさを自動調整してみます。

コメントの大きさを自動調整

コメントの大きさを自動調整した結果

コメントの大きさを自動調整できました。

AutoSize、便利です。

コメントの設定を組み合わせる

コメントを操作するVBAコードを組み合わせると、便利になります。

ダブルクリックで自動調整したコメントを入力

ダブルクリックしたら、セルに入力されている数式を、いい感じにコメントに入力する、というのをやってみます。

VBAコードは、こんな感じになります。

'ダブルクリックで実行
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
    
    'アクティブ状態を解除
    Cancel = True
    
    With Target
        'コメントが入力されている場合
        If TypeName(.Comment) = "Comment" Then
            'コメントを削除
            .ClearComments
        'コメントが入力されていない場合
        Else
            'コメントを追加
            .AddComment
            'コメントに数式を入力
            .Comment.Text .Formula
            'コメントを表示
            .Comment.Visible = True
            'コメントのサイズを「16」
            .Comment.Shape.TextFrame.Characters.Font.Size = 15
            'コメントを「太字」
            .Comment.Shape.TextFrame.Characters.Font.Bold = True
            'コメントの大きさを自動調整
            .Comment.Shape.TextFrame.AutoSize = True
            'コメントの左端を設定
            .Comment.Shape.Left = .Left
            'コメントの上端を設定
            .Comment.Shape.Top = .Offset(2, 0).Top
        End If
    End With
    
End Sub

シートの中のコードに入力しています。

セルに数式を入力しておきました。

セルに数式を入力

セルに数式を入力しておいた

では、セルをダブルクリックしてみます。

ダブルクリックでコメントに数式を入力

セルをダブルクリックして、コメントに数式を入力して、大きさと位置を設定

見やすい位置にコメントが追加されました。

セルに入力されている数式も確認しやすいです。

もう一回、セルをダブルクリックすると、コメントが削除されます。

ダブルクリックでコメントを削除

セルをダブルクリックで、コメントを削除

コメントが削除されました。

こんな感じで、コメントを操作するVBAコードを組み合わせると、かなり便利に使えます。

おわりに

この記事では、コメントの書式や、位置、大きさを設定する方法について、ご紹介しました。

コメントの書式などを変更する場合は、「.Comment.Shape」を使って、設定します。

コメントを設定するVBAコードを、うまく組み合わせると、セルに入力されている数式を確認しやすくなったり、便利に使えます。

参考になればと思います。最後までご覧くださいまして、ありがとうございました。

関連する記事から探す

カテゴリから探す

カテゴリから見たい項目を探すと便利ですよ。

アーカイブから探す