【Excel/VBA のこと 04】
行の高さ、列の幅、方眼、フォントタイプなど、
手っ取り早く、全部のセルに適用させたいことありませんか?
まとめて、ワンクリックで済ませちゃいましょう。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/
全行高・列幅調整
マクロ
全部の行に対して、行の高さを変更するマクロです。
****************************************
Sub 全行高自動調整
Cells.EntireRow.AutoFit
End
****************************************
こちらは列幅調節
****************************************
Sub 全列幅自動調整
Cells.EntireColumn.AutoFit
End
****************************************
Cells・・・セル全部を指定します。
EntireRow・・・1行全部を指定します
EntireColumn ・・・1列全部を指定します
AutoFit・・・サイズを自動調整します
こちらも今まで紹介したマクロ同様、一行だけです。
そして、この二つのマクロを一つにまとめて・・・
****************************************
Sub 全行列サイズ自動調整
Cells.EntireRow.AutoFit
Cells.EntireColumn.AutoFit
End
***************************************
これで、作業中のシートの全ての行、列に対してサイズを自動調整してくれます。
つまり、以下のマニュアルの操作と同じです。
1.赤枠の所で、全セルを選択
2.行高をダブルクリック
3.列幅をダブルクリック
マニュアル操作では、最低5回クリックが必要ですが、
(ダブルクリックするときにマウスが動いて失敗したらクリック+2)
マクロを書いて、リボンに登録してしまえば、
クリック一回で完了!
リボンに設定する
クリック一回の作業をいつでも、どのファイルにでも出来るように、
リボンに登録することが必要です。
1.リボンの空白の所で右クリック
2.【リボンのユーザー設定】をクリック
3.左側の窓の【コマンド選択】から【マクロ】をクリック
4.作成した、登録したいマクロををクリック
5.右側の窓で登録したいマクロを表示させる場所をクリック
(タブ、グループを選択する)
6.真ん中にある【追加】をクリック
7.右側の窓の登録したマクロを選択して、【名前を変更】
キャプチャ付きのもう少し詳しい手順は【Excelのこと02】で確認してください。
行高/列幅の数値指定して調整
今度は、行、列それぞれ数値を指定してサイズの調整します。
マクロ
こちらは行
****************************************
Sub 行高20pt調節
Cells.RowHeight = 20
End
****************************************
こちらは列
****************************************
Sub 列幅2.63pt調節
Cells.ColumnWidth = 2.63
End
****************************************
やっぱり、それぞれ一行だけで済みますね。
Cells・・・全部のセルを指定
RowHeight・・・行の高さを指定
ColumnWidth・・・列の幅を指定
20・・・行の高さの具体的な数値を指定
2.63・・・列の幅の具体的な数値を指定
ここで注意したいのは、指定する数値は ピクセル ではありません。
行高、列幅を調節するとき黒のハンドルにしてクリックしたままにすると
下の画像のように数字が2種類表示されますよね。
マクロにはかっこの前の数値として適用されます。
「赤枠の箇所の数値を指定する」 とも言えます。
行の高さを20ptに指定しても、実際の数値は上の画像のように
19.50 となるようです。
なぜそうなるのか・・・
というところが分からないのがVBA中級者になれないところ・・・
anyway,
サンプルマクロの 行20pt と 列2.63pt は同じ 26ピクセル なので、
****************************************
Sub セル方眼26ピクセル
Cells.RowHeight = 20
Cells.ColumnWidth = 2.63
End
****************************************
合体させて行、列それぞれ同じサイズにしてしまえば、
方眼シートのできあがり!
(こんな感じ)
方眼にして 、表を作成する人は少ないかもしれませんが、
ガントチャートだったり、スケジュール表を作成するときには活躍します。
全セルにフォントタイプを指定
マクロ
次は、フォントタイプとフォントサイズをすべてのセルに指定するマクロです。
業務で使用する Excel にはフォントタイプや
フォントサイズが指定が指定されている場合があります。
フォントタイプを指定
****************************************************
Sub 全セルフォントタイプ指定
Cells.Font.Name = "MS Pゴシック"
End
****************************************************
Cells・・・全セルを指定
Font・・・フォントを操作します
Name・・・具体的にフォントタイプを指定
Cells を Selection に変えれば選択しているセルだけに適用されます。
(セルを複数選択してもOK)
フォントサイズを指定
****************************************************
Sub 全セルフォントタイプ指定
Cells.Font.Size= 11
End
****************************************************
(説明不要かな)
マニュアルで全てのセルに同じフォントタイプを指定する場合は、
1.全セルを選択
2.ホームタブのフォントタイプを指定する
で完了するので、そんなに面倒ではないですね・・・
しかし、tuna-kichi にはこれが面倒なのです。
もすこし実際の心境も加えて詳しく
1.あるセルに移り文字入力するとフォントタイプが違うことに気づく
2.「ホームタブ」が選択されていないことに気づく
3.マウスで移動する(大抵一番左上にあるから遠い・・・)
4.フォントタイプのドロップダウンをクリック
5.すぐに開かない
6.クリック出来ていないと思いもう一度クリック
7.実はクリック出来ていたので、一瞬開いて閉じる
8.もう一度ドロップダウンメニューをクリック
9.今度こそフォントタイプをクリック
こんなことありませんか?
tuna-kichi だけ??? こんな事しょっちゅうあります!
だからフォントタイプを選ぶのは好きじゃないんです!
なので、こんな風に良く使うフォントを VBA で書いて、
リボンに登録すれば、すぐに変更できるので、ストレスが軽減されます。
_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/_/