【Excel VBA】選択したセルの合計値をコピーする方法

スポンサーリンク

やりたいこと

複数のセルを選択すると右下に合計の値が表示される機能はみなさん利用されていると思います。

ただ、その合計の値をセルに転記したい場合、電卓に数値を入力するなどしないとコピペでは合計値はとれません。

そこで、合計値をクリップボードにコピーする方法はないかとVBAを考えてみましたのでご利用ください。

つくりかた

①『開発』タブをクリックし、②『Visual Basic』をクリックする。

③『挿入』タブをクリックし、『ユーザーフォーム』と『標準モジュール』を挿入します。

※ 『ユーザーフォーム』 を挿入する理由は、『Microsoft Forms 2.0 Object Library』を参照するためです。

『標準モジュール 』に次のコードを入力してください。

Sub Selection_total()
    
    '選択セルの値を合計してcalcへ入れる
    For Each v In Selection
        '選択セルの値が数値の場合のみ合計する
        If IsNumeric(v) = True Then
            calc = calc + v
        End If
    Next
        
    'クリップボードへコピー
    With New MSForms.DataObject
        .SetText calc
        .PutInClipboard
    End With
    
    MsgBox "合計『 " & calc & " 』をコピーしました。"
    
End Sub

これでVBAは完成です。ただ実務で使うにはキーボードでショートカット操作できると便利です。

設定方法は、『マクロ』をクリックし、マクロ名を選択し『オプション』をクリックし、ショートカットキーを登録します。

確認

セルを選択し、Ctrl + Shift + C を押すと合計値をコピーされます。コピーされたことをポップアップで表示します。

コメント

タイトルとURLをコピーしました