【エクセル2010】数式バーの幅(高さ)をマクロで自動調整(6) | The Road to EXCELER ~エクセラーへの道~

The Road to EXCELER ~エクセラーへの道~

エクセルの機能を基本から紹介していきます。お仕事で日々エクセルを使っておられる方に読んでいただければ仕事の効率アップ間違い無しです。

京都「それから」綾小路店。
The Road to EXCELER ~エクセラーへの道~ 京料理をリーズナブルな値段でゆっくりいただくことができる穴場的なお店です!

(‐^▽^‐)


たまにしか戻りませんが、それにしても最近の京都は人が多すぎてゴミゴミしてるような気がしてなんとなく落ち着かないですね。


特に京都駅周辺はゆっくりできるカフェを探すのも一苦労です。

(x_x;)


こちら↓は駅前の新都ホテル内のカフェです。


このホテルで結婚式をあげたのももう15年近く前になるんだなぁ…などと思いながらウトウトと本を読んでたら、結局内容はよく覚えていない結果となりました。The Road to EXCELER ~エクセラーへの道~

落ち着きすぎてもよろしくないですね。。

(;^_^A


゚・*:.。..。.:*・゚゚・*:.。..。.:*・゚ ゚・*:.。..。.:*・゚゚・*:.。..。.:*・゚


前回までの解説で、セルをクリックしただけで、数式バーが自動調整されるようになるところまでいきました。


しかし、これだけですと、このファイル上では機能しますが、別のファイルを開いたときにはまたそのBookで同じマクロを作成しないと機能しません。
実用的なマクロにするためには、これを解決しないといけませんね。


ただ、これを解決するには、"使い捨てマクロ"のレベルを超えたワザが必要になってきます。

ちょっとこのブログの趣旨と離れてきますので、あまりマクロの意味は考えず、「へぇー、こんなふうにやるのか…」程度の感覚でやってみてください。

σ(^_^;)


(1)ファイル「Book1」が開いている状態で[開発]タブ→[Visual Basic]ボタンをクリック。
(2)「プロジェクト-VBAProject」ウィンドウから「ThisWorkbook」を選択して右クリック→[挿入(N)]→[クラスモジュール(C)]。

The Road to EXCELER ~エクセラーへの道~


(3)「Public WithEvents App As Application」と入力して[ENTER]。

The Road to EXCELER ~エクセラーへの道~

(4)「Book1-Class1(コード)」ウィンドウの左のプルダウンから「App」を選択。右のプルダウンから「SheetSelectionChange」を選択。

The Road to EXCELER ~エクセラーへの道~

(5)「Private Sub App_SheetSelectionChange(ByVal~」と「End Sub」の間の空白に、以前作成した「数式バー自動調整 」のコード(BOLDで記載した部分)をコピペ。
(上の方に勝手に記載された、「Private Sub App_NewWorkbook(ByVal~」と「End Sub」は不要なので、消しておいてください。)

The Road to EXCELER ~エクセラーへの道~

(6)「プロジェクト-VBAProject」ウィンドウから「ThisWorkbook」を選択して右クリック→[コードの表示(O)]。
(7)「Dim X As New Class1」と入力して[ENTER]。

The Road to EXCELER ~エクセラーへの道~

The Road to EXCELER ~エクセラーへの道~

(8)「Book1-ThisWorkbook(コード)」ウィンドウの左のプルダウンから「Workbook」を選択。右のプルダウンから「Open」を選択。

The Road to EXCELER ~エクセラーへの道~

(9)「Private Sub~」と「End Sub」の間の空白に、「Set X.App = Application」と入力して[ENTER]。

The Road to EXCELER ~エクセラーへの道~

(10)ワークシートに戻って[ファイル]タブ→[名前を付けて保存]。

(11)適当なファイル名を付け、拡張子「.xlsm」(マクロ有効ブック)の形式で保存。


いったんファイルを閉じて、開いてみてください。

このファイルを開いている間は、別のファイルを開いても、数式バーの自動調整マクロが機能するようになっているはずです。


えらく長くなってしまったので、次回簡単に解説します。

(^^ゞ