2017/07/27

Excelシート一覧を1行プログラムで

はじめに

Excelってシートがたくさん増えると、一体何のシートがあるのかわからなくなってきますよね??

そんなこと無いって!! そういう方は読まなくて良いです。困っている方、最後まで読んで下さい。

シート一覧

Excelシート一覧は、Excelウィンドウの左下を右クリックで表示されます。

次の一覧ウィンドウが表示されます。

でもこれって、コピペで無いんですよね。

メールなどへどんなシートに何が書いてあるから的なことに使いたいのに、コピペできない.....

世の中そんなもの、と諦めるのも良いですが、せっかくですから、解決しましょう

一行VBAでシート一覧を

実はシートの一覧などは、VBAで書けば簡単に作成できます。

でもわざわざVBAで作成するなんて...と思われるでしょう。

しかし!!数回キーボードを叩けば良いとすればどうでしょうか??

サクッと行ってみます。

  • 最初の攻撃 ALTキー+F11キー
  • 次のExcelウィンドウで ALTキーを押しながら F11キーを押します。
  • 次の攻撃 イミディエイトウィンドウ CTRLキー+G
  • 先程の操作で、VisualBasicの開発画面が起動します。
    通常であれば、次の手順にすすめるのですが、イミディエイトウィンドウが表示されていない場合、CTRLキーを押しながら、Gキーを押してください。
    イミディエイトウィンドウが表示されていない状態
    イミディエイトウィンドウが表示されている状態
  • 次は 1行プログラムの入力だ
  • ここまでくれば、あと少しです。
    イミディエイトウィンドウに、次の1行を入力してください。コピペで大丈夫です。
    for each c in thisworkbook.Sheets: debug.Print c.name:next
    入力し終えたら、Enterキーを押してみてください。
    次のように表示されたと思います。
    for each c in thisworkbook.Sheets: debug.Print c.name:next
    なんとかシート
    Sheet2
    Sheet3
    Sheet4
    
    表示データは、テキスト表示なのでマウス選択すればコピーも可能です。
    実際のウィンドウ表示

1行でも、便利なプログラムは作れるものですね。