エクセルVBAでショートカットランチャーを作ってデスクトップのアイコンを整理する

こんにちは~。「デザインもできるシステムエンジニア」のあつもり(@atumori17)です。今日も「時間クリエーター」としてバシバシ時短に取り組んでます!

今回はエクセルVBAでショートカットランチャーを作り、デスクトップを劇的にすっきりさせる方法を紹介します。
デスクトップにプログラムやWEBサイトのショートカット、エクセルファイルやフォルダなどが散乱していていませんか?デスクトップがちらかっていると作業をする度にファイルを探すのに時間がかかりますよね。その時間って無駄な時間だと思いませんか?

デスクトップのファイルをフォルダに移動させる

まずは思い切ってデスクトップにあるファイルを全部1つのフォルダに放り込んじゃいましょう。

デスクトップに待機フォルダを作ってそこにすべてのファイルを移動します。使用頻度の高い3~4ファイルは残しておいてもいいでしょう。

こんなにすっきりしました~。

エクセルVBAでショートカットランチャーをつくる

エクセルでファイルリストを作る

退避させたファイルをカテゴリに分けます。例えば「よく使うファイル」「来週の会議用」「問合せ対応時の資料」などです。この作業が手間であればやらなくてもかまいません。

退避させたフォルダを開き、ランチャーに登録したいファイルを選び右クリックします。そしてプロパティをクリックします。

セキュリティタブをクリックし、オブジェクト名のところに書かれているパス名をコピーします。

エクセルファイルのA列にペーストします。B列にファイルやフォルダの内容などのメモを書いておくと便利です。

エクセルファイルは出来上がりましたか?ここまでで準備作業は完了です。ファイル名を「ショートカットランチャー.xls」などとしデスクトップに保存しておいてください。

次はエクセルVBAでプログラムコードを書いていきます。

エクセルVBAでプログラムコードを書く

では早速プログラムコードを書いていきます。プログラムコードを書く場所は標準モジュールではなく、シートモジュールに書いてください。

今回紹介するランチャーはワークシートのセルをダブルクリックするとファイルが立ち上がるようにします。そのためワークシートのイベント処理が必要になってくるからです。

「Worksheet」の「BeforeDoubleClick」イベントを選択します。

全体のプログラムは以下のようになります。

選択されているセルのデータを取得する

ワークシート上で選択されているセルのデータを取得して変数に入れる処理です。この変数にはファイルやフォルダのパスが入ります。

パスが見つからない場合にその都度エラーが出てくると使いづらいので、エラーの場合は強制的にスキップするようにします。

ファイルの種類によって処理を分ける

フォルダかどうかを調べるのにファイルシステムオブジェクト、ファイルを開くのにシェルオブジェクトを使います。

<フォルダの場合>
フォルダかどうかを調べ、シェルにエクスプローラーとフォルダを連結させたパスを渡します
<フォルダ以外>
・拡張子がexeだったらプログラムと判断し、シェルにプログラムのパスを渡します
・拡張子がexe以外の場合はファイルと判断し、シェルオブジェクトにファイルのパスを渡します

このようにフォルダ、プログラム、ファイルで起動方法が異なるので注意が必要です。

オブジェクト変数を解放します

プログラムの実行

開きたいプログラムのセルをダブルクリックしてみてください。ファイルは開きましたか?

まとめ

お疲れさまでしたぁ~。どうでしたかうまく動きましたか?エクセルでランチャーを作るのが面倒なかたは待機フォルダにデスクトップ上のファイルを入れるだけでもすっきして作業がはかどるようになりますよ~。

今回の内容は以下のようになります

  • デスクトップのファイルを待機フォルダに移動
  • エクセルでよく使うプログラムのリストを作る
  • エクセルVBAでランチャープログラムを書く

ではまた。

シェアする

  • このエントリーをはてなブックマークに追加

フォローする