Excel VBAコンテンツ


Excel VBA Tips

マクロとVBAの、さまざまなテクニックなどをご紹介します。ただ「こうすれば、こうできる」だけでなく、なぜそうなるのか、あるいは、してはいけないのか。ポイントや注意点なども詳細にご紹介します。何しろ私、自分で使うだけでなく、"教える"プロですから。ただね、ひとこと言わせていただければ、大事なことは「どうすればできるか」ではなく「なぜそうするか」なんですよ。

詳しくはこちら

テーブルの操作

テーブルは、これからのExcelユーザーにとって避けては通れない機能です。しかたありません、Microsoftがそう決めたのですから。これからはテーブルでいくと。テーブルは表を装飾する機能ではありません。テーブルになるとそこは、もう今までのワークシートではありません。Excelが特別に管理するデータベース領域です。当然VBAからの操作も、今までとは考え方や方法が異なります。

詳しくはこちら

今さら聞けないVBA

新しいことを学ぶ者は、意外と小さいところで疑問を感じます。そして、そうした疑問が大きくなって、結局「なんだかなぁ~やっぱ分かんねぇや」みたいになります。いや、私だって経験あります。そうした、今さら聞けない細かいことを解説します。たとえば、VBAではどんなとき括弧をつけるの?とか、スペースってどこに入れるの?などなど、ネットを調べても書いていないようなことばかりです。

詳しくはこちら

FileSystemObjectの解説

実務は複雑です。Excelのマクロにしても、セルやワークシートを操作するだけでは仕事になりません。たとえばですけど、作ったデータはファイルとして保存しなければなりません。保存する先は共有ドライブとか。そのフォルダ名も決まってたりして。なかったら作ったりして。つまり、Excelのマクロでは、そうしたフォルダやファイルの操作が必須なんです。そのとき、FileSystemObjectを使えるとラクチンです。

詳しくはこちら

VBAのエラーについて

みなさん、エラーって大嫌いですよね。マクロの実行中にエラーで止まり、何らかのエラーメッセージが出ようもんなら、そりゃもうオバケでもでたかのように「キャァーー!」みたいな。でもまぁ、マクロにエラーはつきものです。エラーになったら原因を調べて直せばいいんです。そのときヒントになるのは、みなさんが読まずに閉じているエラーメッセージなんです。落ち着いてエラーメッセージを読んでくださいね。

詳しくはこちら

変数の使い方

むかしむかし昭和の時代、まだサラリーマンをやっていた頃。本を読んでC言語を勉強してみました。そしたら、変数の使い方で悩みました。私自身、そういう経験があります。VBAを独学で学習する人も同じです。変数が分からないという方がとても多い。しかし、実務で使うレベルのマクロでしたら、ほぼ間違いなく変数は使います。ここでは、基本の基本から、高度な応用技まで、変数のすべてを解説します。

詳しくはこちら

高速化テクニック

どう書いたらマクロは速くなるのか。このコンテンツを初めて書いたのは、まだ日本にインターネットが普及していない1995年です。パソコン通信(NIFTY-Serve)のExcel会議室に書きました。それ以来、多くの方が参考にしてくれているようですが、時代は変わりました。1995年に比べて、パソコンの性能が飛躍的に向上したんです。そうなると考え方も変わってきます。なので、あらためて書き直しました。最新の検証結果をご紹介します。

詳しくはこちら

VBAの関数一覧

VBAの関数に、SUM関数やVLOOKUP関数はありません。なぜなら、VBAの関数とステートメントは、ExcelのVBA、WordのVBA、PowerPointのVBAなどで共通だからです。VBAにVLOOKUP関数があったところで、そんなもんパワポで何に使うのって話です(もしかしたら便利かもしれませんけどw)。ここでは関数の一覧をご紹介しますけど、もちろん全部使う人はいません。実務レベルでしたら、せいぜい10個くらい知ってれば十分だと思いますよ。

詳しくはこちら

VBAのステートメント一覧

VBAは「オブジェクト式」「ステートメント」「関数」の3つで構成されています。オブジェクト式とは、Excelに対して何かするときの書き方です。関数はSUM関数みたいなもんです。ステートメントとは、Excelがどうこうではなく、マクロの中で何かの働きをする書き方です。たとえば条件分岐とか、変数の宣言とか。使うのは限られていますから、それほど難しく考えないでくださいな。やってれば自然と覚えます。

詳しくはこちら

グラフの操作

Excel 2007で画面描画の仕組みが大きく変わりました。その影響で、グラフに関する考え方やコードも変更や修正が必要です。そこで、これを書きました。ついでに、Excel 2007から新しくなった色に関することも解説しています。Excel 2003まではワークシート上で56色しか表せなかったのですが、Excel 2007以降は1,600万色を表示できます。テーマの仕組みなどについても書きました。グラフ以外でも役立つはずです。

詳しくはこちら

ファイルの操作

マクロで他のブックを開くことがあります。あるいは、作成したデータに名前を付けて保存したり、不要になったブックを閉じたり。そうした、ブックの操作方法を解説します。もちろん「ファイル」というのは"ブック"だけではありません。ブックとは別の「CSVファイル」を読み書きすることもありますね。さらには、最近クラウド環境などでは「UTF-8」形式のテキストファイルが多いです。全部解説しています。

詳しくはこちら

シートの操作

シートに対してやることって限られてますよね。新しいシートを挿入したり、非表示にしてみたり保護してみたり。でも、そうしたシートの操作もマクロの一部です。効率よくシートを操作できないと、マクロ全体のクオリティが下がります。非表示の作業用シートを裏で作って、そこで何か計算などの処理をして、必要な計算結果を得られたら作業用シートを削除する…そんなマクロは格好いいですし速いです。

詳しくはこちら

セルの操作

Excelのマクロは何と言ってもセルの操作です。マクロ=VBA のように考えて、とにかくVBAの"プログラミング的"なことばかりやっていても、Excelのマクロは作れません。セルの扱いが稚拙だから。そもそもマクロというのは、我々が作る「Excelに対する指示命令書」です。だったら、Excelで何ができるのかという機能的なことを知らなかったら、マクロなんて作れるはずがありません。当たり前ですね。

詳しくはこちら

VBAでVBEを操作する

実はVBAで、VBEを操作することができます。新しい標準モジュールを挿入したり、UserFormをデザインしたり、マクロで自分自身のコードを書き換えるなども可能です。誰もが必要とする操作ではありませんが、ときどき便利に使える場面もあります。作成したマクロを多くの人に配布して、ときどきマクロの内容を部分的に修正するようなとき、差分を更新するようなマクロを仕込んでおくとラクチンです。

詳しくはこちら

過去コンテンツ保管庫

90年代初頭から、パソコン通信でExcelを解説してきました。当サイト(officetanaka.net)も、その頃からコンテンツを書いてきましたので、現在では(本人も覚えていないほどw)大量のページが存在します。その中には、現在ではかなり古い内容もあります。たとえば、ツールバーの話とか。そういう古いネタは集めて保管することにしました。

詳しくはこちら