見出し画像

3行マクロ シートの名前をセルに値張り付け

いつも見に来ていただきありがとうございます!
今回は、作成した3行マクロについて紹介します。
あくまでも素人がほんの少し仕事が楽になるマクロをつくっています。

シートの名前をセルに値貼り付け

仕事でよくシートのタブの名前をセルに記載することがあるのですが、めんどくさいですよね。
シートの名前からコピーして、張り付けるのも面倒です。
そういう方がいて、めんどくさいので、以下の関数をセルに入力されている方もいると思います。

=RIGHT(CELL("filename",A1),LEN(CELL("filename",A1))-FIND("]",CELL("filename",A1)))

シートの名前をセルに記載の関数

これもこれで便利なのですが、これだと、Excelに数式が残るのと、この数式をコピーして貼り付ける作業が発生します。
画期的なようで、地味にめんどくさいですね。

作ったマクロ


シートの名前を記載

作ったマクロは、
シートのタブの名前をコピー
②選択しているセルに値貼り付けをする

といった形のマクロです。

コードはこちら↓

Sub セルの名前貼り付け()
Dim ws As Worksheet

' アクティブなシートを取得
Set ws = ActiveSheet

' 選択されたセルにシートの名前を貼り付け
If TypeName(Selection) = "Range" Then
Selection.Value = ws.Name
Else
MsgBox "Please select a single cell to paste the sheet name.", vbExclamation
End If
End Sub

このマクロにショートカットを割り当てるだけで、ワンタッチ?でシートの名前をセルに記載できるようになりました。
デメリットとしては、関数と異なり、シートの名前を変えたら自動で反映されませんね。

もしよろしければご参考にしていただけたらと思います。

応援よろしくお願いします!
もしよろしければスキやフォローお願いします。



この記事が参加している募集

仕事について話そう

この記事が気に入ったらサポートをしてみませんか?