目次
VBAで見出しを作成するときどうする?
こんにちは。伊川(@naonaoke)です。
社内システムで、データをコピーして、Excelに貼り付ける場合、どのようにしていますか?
必要な値は、Excelに貼り付けることはできます。
しかし、見出しがないと、見にくいですよね。
このような場合は、あらかじめ、見出しを設定しなければなりません。
色々な方法がありますが、今回は、VBAで設定したいと思います。
今回のお題
- VBAで見出しを設定する
今回の必要な知識
- Cellsを使って設定する
- Enumを使って値を入力する(今回紹介したい内容)
VBAで見出しを設定する 作業手順 その1 Cellsを使って設定
見出しが、10個程度なら、手打ちでやっても問題ないと思います。
しかし、見出しが、100個ある場合等、面倒で時間も膨大にかかります。
上の図は、私の趣味ですが、見出しを136個設定しなければなりません。
しかし、これはカンタンに設定できます。
Excelをエディタ代わりに使うと便利です。
VBAで見出しを設定する 作業手順 その2 Excelをエディタのように使う
便宜上、見出しは、A~Zにします。
競馬の見出しは割愛します。
使い方の具体例
A列⇒cells(1,1)=”
B列⇒見出しにする値
C列⇒”(クォーテーション)
このような数式を入力しておきます。
この方法で、一瞬にして完成します。
VBAで見出し設定後の使い方
VBAで見出し設定後の使い方 作業手順 その1 Enumを使う
Enumは列挙型変数といいます。
この列挙型変数を利用するとカンタンにできます。
このEnumは、配列とも相性がいいのです。
上の図のようなコードで、Range(“A2”)に、合田と入力することができます。
このような方法もあるのかと思いました。
VBAで見出し設定後の使い方 作業手順 その2 Enumの具体的な使い方
秀和システムの逆引辞典の一例です。
![](http://keiyu.xyz/wp-content/uploads/2020/06/062620_0937_ExcelVBAVBA9.png)
このような表があります。
このコードを実行すると、下記のようになります。
4番目の値をMsgBoxに表示します。
しかし、大抵、このように思うはずです。
だから、どうした?
VBA初心者の時は、さっぱりわかりませんでした。
なんのための逆引辞典なのか、意味がわかりませんでした。
今になってやっと、理解できるようになりました。
VBAで見出し設定後の使い方 作業手順 その3 Enumのコードを改良
上の赤丸が、4なので、4番目しか表示されます。
この部分を変更すると、利便性がよくなるのではないか?と思いついたら、VBAのスキルが向上しています。
ここで、変数を利用することによって4番目以外も抽出することができます。
しかし、変数の元となる数字を入力しなければなりません。
InputBoxを使う
カンタンな入力をしたいなら、ユーザーフォームより、InputBoxが便利です。
赤枠を追加しました。
このInputBoxの中に入力した数字が、抽出する番号になります。
少しだけ、コードを加えることで、結構便利になるものです。
逆引辞典は、役に立たないと思いましたが、ある程度のコードを知っていると、利便性が増します。
上の記事でInputBoxを紹介しています。
紹介の内容は、ACCESSです。
カンタンなパスワードを設定するには、すごく便利な技です。
ここがポイント
![Function8.png](http://keiyu.xyz/wp-content/uploads/2019/10/102819_0637_Function8.png)
Enumは、配列とも相性がいいのです。以前、紹介できなかった、クラスモジュールで説明も合わせて説明できたらいいなと思います。クラスモジュールで定義して、参照したほうが、コードがカンタンになると思います。具体的な目的があると、難しいコードでも、理解が早まると思います。
まとめ
ここにきて、クラスモジュールの具体性が見えてきました。
クラスモジュールは私にとって、難しく、理解のできないものでした。
三角形や、ウルトラマンの例を使って説明しました。
次回は、スマートな例をもって、みなさんに紹介したいと思います。
VBAが難しくても、諦めないことが理解を早めることです。
どうぞ、ご期待ください。
今回のサンプルファイルは、No162です。
![](http://keiyu.xyz/wp-content/uploads/2019/11/Sample-300x158.jpg)
わからない事を延々と考えるのは、無駄です。
- なんで作動かないの?
- もうやだ!VBAなんか嫌い!
- ネットで調べても情報がない!
必ず作動するコードが、ここにあります。