これだけは使えるようになりたいExcelテクニック

Excelは、数千のオーダーまでの情報をノンプログラミングで扱うツールです。あと、会社によっては全社共通のドキュメントフォーマットとして使われます。
Excelマスターとしては、何ができるとよいか。基本的なテクニックを紹介することにしましょう。
1.オートフィルタ
Excelを使う際、情報を表形式で入力することが一番大切なことです。つまり、

  • 1行目をヘッダ
  • 2行目以降を情報

として入力します。この際、1まとまりの情報を1行としてヨコに書くことを徹底してください。たとえば大分類、中分類、小分類というヘッダがあるときに、同じ大分類をまとめて1つのセルにするなどという愚は犯さないようにしましょう(最終成果物ならまあOKだが)。
1行に1つの情報をまとめると、オートフィルタが使えます。これにより、情報の抽出、検索、並び替えが簡単に行えるのです。10程度の情報しか扱わない平和な社会には私たちは生きてはいません。それ以上複雑な情報を扱う際には、抽出や並び替えが必須といえましょう。
2.if文
関数を使わない人、マクロなんて使えない人も、if文だけは使いましょう。if文は、入力データの正しさを確認する際などに使えます。それぞれの行に同じ種類のデータを入力し、「=if(A1=B1,"○","")」などと入力しましょう。A行とB行が同一の値ならば、○が表示されます。ただそれだけなのですが、場面によってはとっても強力です。
3.Ctrlキー
Ctrlキーをうまく使いましょう。Ctrlキーを押しながらカーソルキーを動かすと、入力値が連続する場合その一番先のデータまで一気に移動し、空白部分では次の入力値がある場所まで一気に移動します。
このテクニックとif文を使うことで、簡単に入力の検証を行うことができます。先ほどのif文では結果が偽である場合空白となりますから、Ctrlを使うとその部分で止まるわけです。だから、最後の行の○まで移動できれば、行同士が完全一致することを確認できるわけです。
4.行毎にプラス1
連続する数値を作るテクニックも有用です。2通りやりかたがあります。一つは、Office2003以降使える(と思う)セルのオートフィル機能。セルの右下をドラッグすると連続値が入力できます。文字列中に数値が入っている場合、数値のみ変化させてくれるので便利です。
もう一つは、上のセルに+1する式を書く方法。A2セルに「=A1+1」と書く方法ですね。大量に行がある場合は、ドラッグすると疲れるのでこちらを使います*1
5.書式の削除
4のようなテクニックを使うと、オートフィルタとの相性が悪くなります。並び替えすると値が変わってくるからです。そういう場合、書式を削除してしまいましょう。該当行を選択してコピーし、書式を指定して貼り付けから値を選択します。いったんテキストエディタに貼り付けて、また戻すという方法でも書式が消せます。
なお、Excelのデータはテキストエディタにコピーするとタブ区切りの文字列になります。逆に言えば、テキストエディタでタブ区切りの文字列を作っておけば、コピペでExcelの表が作れます。
6.幅と高さの自動設定
行や列の灰色部分(Aとか1とか書いてある部分)をクリックすると行や列全体を選択でき、それぞれの灰色と灰色の間にある線をドラッグすれば行や列の高さ、幅を変更できます。ここまではあたりまえなのですが、実はこの線をダブルクリックすると、列では直左の幅、行でいえば直上の高さが自動で変更されます。
複数行選択すればそれぞれの行や列の高さ、幅が自動で変更されます。よって、Ctrl+Aや一番左上の灰色部分をクリックするとすべて選択されますが、その後線をダブルクリックすることでシート全体の幅や高さを設定できるのです。
7.重複データの排除
行の中に重複データが含まれており、一つにまとめたい場合があります。そんなときはデータ→オートフィルタ→フィルタオプションの設定から、「重複するレコードは無視する」のオプションを選択すればよいです。サクラエディタでも同様の機能が使えますが、事前にソートが必要なので、Excelを使った方が楽な場合はままあります。

これ以上複雑なことをやりたいとき(4つ以上の検索条件でソートしたい場合やOffice2007より前のバージョンで10万オーダーの情報を扱う場合、複数の表を簡単に結合させたい場合など)は、データベースを使うのがよいです。ただ、SQLを覚える必要があるのが面倒といえば面倒です。
基本的な操作はデータベースでももちろん可能ですが、SQLなどというプログラミング言語を覚えずに済むところがExcelの良いところですね。

*1:メニューのフィル機能から連続データの作成ができますね