ExcelVBAでブックのシート名を検索して見つかったときにシートをアクティブにさせる方法

この記事では当方が実際にご相談いただいた内容をまとめております。
シートが大量にあり、特定のシートを検索したいという方向けの記事です。

ブックのシート名を検索して見つかったときにシートをアクティブにさせる方法

こんなことで悩んでいませんか?
シートが多すぎて特定のシートを探すのに時間がかかってしまう。
シート名で検索したいがExcelの検索機能ではできそうにない。
Excelの機能でできないことはExcelVBAでプログラミングを作成してできるようにします。
ブックのシート名を検索して見つかったときにシートをアクティブにする方法をまとめてみました。

シート検索コードの作成


「開発」タブをクリック
「Visual Basic」をクリック
「ブックのシート名を検索して見つかったときにシートをアクティブにするコード」の入力

シート検索コードの解説

まずシート検索のコードを作成する際にどんな処理を実装しないといけないかを紙に書き出してみましょう。
今回のコードだと主に下記3つのときを考慮に入れて作成しました。

  • 入力ボックスに何も入力されていないとき
  • ブック内に検索したシートが存在したとき
  • ブック内に検索したシートが存在しないとき

入力ボックスに何も入力されていないときは処理を終了する
ブック内に検索したシートが存在したときは存在したシートをアクティブにしてメッセージを表示する
ブック内に検索したシートが存在しないときは見つかりませんでしたと表示する

プログラミング作成に慣れていないうちはコードを作成する前に紙に書き出して考えるようにしましょう。

シート検索ボタンにマクロを登録


「開発」タブをクリック
コントロールグループの「挿入」をクリック
「ボタン(フォームコントロール)」をクリック
適当な箇所でドラッグしてボタンを作成


「シート名検索」をクリック
「OK」をクリック


「ボタン(フォームコントロール)内」をクリック
BackSpaceかDeleteキーで文字を削除
「シート検索」と入力

ボタンをクリックしてシート名検索マクロの実行

シートが存在するとき


作成したシート検索ボタンをクリック
「Sheet2」と入力
「OK」をクリック


「Sheet2」がアクティブになる
「Sheet2が見つかりました!」と表示される

シート名に何も入力されていないとき


作成したシート検索ボタンをクリック
何も入力しないで「OK」をクリック
処理が終了される

シートが存在しないとき


作成したシート検索ボタンをクリック
「test」と入力
「OK」をクリック


「testは見つかりませんでした!」と表示される

結論(まとめ)

「ExcelVBAでブックのシート名を検索して見つかったときにシートをアクティブにさせる方法」を解説しました。

  • コードの作成
  • ボタンにマクロを登録
  • ボタンをクリックしてシート名検索マクロの実行

ボタンをクリックするとシート名を検索するマクロを作成することができました。

Follow me!

The following two tabs change content below.
大阪生まれの大阪育ち。システム開発系、パソコン教室運営管理、パソコンサポートの仕事を中心に10年以上IT業界に生息しているけれども、実はHTMLやCSSが苦手。 パソコン教室やパソコンサポートなどでお客様から「ありがとうございます。」という感謝の言葉をいただいたときにやりがいを感じる。もっと自分のITのスキルで人様のお役に立ちたいと考え、義経ITクラブを開業して日々を送る。

中小企業デジタル化応援隊事業IT専門家森山義章のホンマル☆ラジLive♬(7月より配信予定)

この番組では

IT起業家・著者・ITインストラクター・WEB集客コンサルタント・システムエンジニア・プロデューサーとしてマルチに活躍し続ける、

書籍は出版後24時間以内でAmazon言語学の参考図書部門第1位獲得、

Amazon女性と仕事 (Kindleストア)部門第1位獲得のベストセラー著者、Podcast配信後わずか3日以内に教育ハウツー部門でランキング第1位獲得(日本)、

1ヶ月以内にたった7つのブログ記事でGoogle検索順位1位を獲得したWEB集客専門家、

出品後半年以内でココナラITサポートおすすめ順第1位獲得のITコンサルタント、

30歳を過ぎてADHD・高機能自閉症と診断されたITプロデューサー・森山義章が人間関係、健康、お金、仕事、ビジネスなど望む結果を出せる思考行動へと変えていきます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA