【VBA】シートのオブジェクト名をマクロで変更する
以前シートのオブジェクト名を変更してから扱うというブログを書いたのですが(【VBA】シートをオブジェクト名で指定する)
先日、コメントでシートのオブジェクト名を手動ではなくコードで設定する方法はないかという話題がでまして、@radames1000 さんが教えてくれた方法を改めて記述しておきます。
セキュリティセンターの設定
まずは、以下のチェックを入れておきます。
Excelのオプション
↓
セキュリティセンター
↓
マクロの設定
↓
開発者向けのマクロ設定
↓
VBAプロジェクトオブジェクトモデルへのアクセスを信頼する にチェック
コード
Sub SheetObjectNameChange()
ThisWorkbook.VBProject.VBComponents(Sheets(1).CodeName).Name = "test"
End Sub
実行結果
Sub SheetObjectNameChange()
ThisWorkbook.VBProject.VBComponents(Sheets(1).CodeName).Name = "test"
End Sub
マクロで新しくシートを追加してさらにそのオブジェクト名を変更したいときなどに使いたいかも。
いままでVBAプロジェクトオブジェクトモデルへのアクセスを信頼するってなんのこっちゃって思ってました!
@radames1000 さんありがとうございました!
Author And Source
この問題について(【VBA】シートのオブジェクト名をマクロで変更する), 我々は、より多くの情報をここで見つけました https://qiita.com/KaoTechBlog/items/97c3262fdf7728a44b2c著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .