コピペと書き換えだけで作れた!

いまさら説明も必要無いと思いますが、皆さんご存知の「Microsoft Excel(エクセル)」についてのお話です。表やグラフを作るのが一般的ですが、実務では請求書や納品書の雛形だったりしますよね。

そんなエクセルには、自分のやりたいことを自動で処理してくれる機能が備わっています。例えば、ボタンを押せば入力画面が開いて、別のボタンを押せばエクセルシートに入力してくれるような感じです。

例えと言いながらも、実際に作ってみたのがこちらです。

すいません、実業務で作ったものなので色んな箇所を灰色で塗りつぶしてます。逆にわかりにくいかもしれませんが、項目名が書いてあります。白い箇所に入力して登録ボタンを押せば、エクセルシートに自動で入力されます。

とても簡単なものなのでそれ以上のことはできませんが、見た目的にもかっこいいですし入力しやすくなります。ついでに言うと、下部の1~12回目のデータが確認しやすくなります。エクセルシートだと横にスクロールしなければなりませんが、これだと12回分の入力データをそのまま見ることができます。

素人にしてはなかなかの出来栄えだと思いますが、これはVBAプログラミングで作ったものです。「Visual Basic for Applications」の略らしいですが、素人だとチンプンカンプンでしょうね。

実際の画面がこんな感じですが、英語的なものや記号がズラッと羅列しています。

もちろん私も素人なので、VBAなんて全くわかりませんでした。むしろ40代ともなれば、こういうものに拒絶反応が出ることでしょう(笑)

どうやって作ったの?と思われるかもしれませんが、googleで検索してきた情報をコピーして貼り付けて、該当の値(セル番号、シート名)に書き換えただけです。同じことを繰り返しますが、コピペしただけで見た目の凄そうなシステム(?)ができたというわけです。

先ほどの画像でお分かりのいただけると思いますが、VBAプログラミングが簡単なはずもありません。となれば、ネットの情報が優秀だというのがわかります。

独学というかgoogleという心強い先生がいれば、コピペを駆使してVBAプログラミングでシステムみたいなものが作れます。検索するコツが必要になりますが、とりあえずは「VBA 初心者」でググってみましょう。新たな道が開かれるかもしれません…

コードをコピペする

つい先日までVBAすら知らなかった私なので、もちろんウンチクを語れるはずもありません。VBAにはオブジェクト・プロパティ・メソッド・モジュール・プロシージャ・うんたらかんたらと難しい用語が盛り沢山です。正直に言うと、未だにこれらの用語の意味がわかりません(笑)

そんな私からアドバイスですが、ネット上にあるコード(プログラム記述)を拝借すればどうにかなります。単にコードだけが並んでいても意味不明ですが、どこのサイトにもコードについての解説がしてあるはずです。後は解説通りに、値を改変するだけです。

“vba 入力フォーム” とか “vba 抽出 別シート” というような具合に、自分のやりたいことを半角スペースを入れながら検索します。何かしらのサイトがひっかかりますので、そのサイトに書いてあるコードをヒントにして作り上げます。

コピペだけだと意味がわからないまま終わりますが、そこに書いてある解説を読むことによって何かしらの知識を得ることが出来るかもしれません。

コピペして改変して実際に動かしてみると、なんとなく意味がわかるようになると思いますよ?!

サンプルコードをコピペする

ついでと言っては何ですが、”vba サンプル” と検索してみてください。※クリックすると開きます。

どこの会社でもエクセルの実務は似たり寄ったりな部分があるので、VBAにおいても基本的なコードというものが作られます。入力フォームはもちろんですが、日付順に並べたいとか、別シートにコピーするとかも一般的に使われることでしょう。

そういったものに関しては、VBAプログラミングでもサンプルコードとして掲載されています。世の中にはとても親切な人が多いので、そういったサンプルコードを公開して解説しているサイトが多数あります。そんなサンプルコードを繋ぎ合わせれば、ビックリするほど簡単にVBAでプログラミングすることも可能です。

超初心者の私が言うのもなんですが、やってみればどうにかなるかもしれないですよ?!