日本語入力ソフトとVBAの覚え書き

・各種日本語入力ソフトの辞書解説 ・実用Excel VBA ・ボダブレ辞書

(Excel VBA) 選択範囲に同じコメントを表示状態で一括で追加する/コメントのみ貼付

はじめに

Excelのセルのコメント追加って面倒くさいですよね。

  1. セルで右クリックでコメント追加
  2. コメントを編集
  3. ボールドを外す
  4. フォントサイズを変更
  5. 背景色を設定
  6. 自動サイズ調整

マクロで一発

これがボタン一発で出来ればどれだけ楽か! あと、コメントだけのコピーも結構面倒くさいですね。
それで、今仕事で大量のデータ整理をしているのですが、コメントで"写真なし"というのを付けていく必要があり、もうマクロにしてしまおうと思いました。

コード

Sub kome()
    ' ** 選択範囲にコメントを一括で追加する **
    Dim CL As Range
    Dim cmnt As String
    
    cmnt = "写真なし"
    
    For Each CL In Selection
        ' ** コメントの追加
        With CL.AddComment(cmnt)
            .Visible = True
        End With
        
        ' ** コメントの書式等
        With CL.Comment.Shape
            .Fill.ForeColor.SchemeColor = 5 ' 背景色=黄色
            With .TextFrame
                .Characters.Font.Size = 12
                .AutoSize = True
            End With
        End With
    Next CL
End Sub

使用例

f:id:dz_dzone:20170421170927j:plain
ポチッと
f:id:dz_dzone:20170421170953j:plain
あー、これ楽。

コメントのみの貼付ボタンの作成

通常、コメントのみの貼付は、コンテキストメニュー>"形式を選択して貼り付け">"形式を選択して貼り付け">コメントにチェック>OKの手順で、非常に面倒くさいです。
f:id:dz_dzone:20170426164251j:plain
f:id:dz_dzone:20170426164307j:plain
これもマクロにしてリボンかクイックアクセスにアイコンを置くと簡単になります。

コード

Sub PasteComment()
    ' ** コメントの貼付 **
    Selection.PasteSpecial xlPasteComments
End Sub