Excelをデータベースのように使うには、スライサーやフォームの活用が便利

  • ブックマーク
  • Feedly
  • -
    コピー
Excelをデータベースのように使うには、スライサーやフォームの活用が便利

せるワザ

表計算ソフト(Excelなど)と、データベース・ソフトのちがいって、なんでしょうか?

「データベース」というと、Microsoft office姉妹ソフトであるAccessがすぐに思いつくかもしれません。

エンジニアが多用する製品には、Oracle DatabaseやClaris FileMakerなどがあります。

しかし、もっと身近なところでは、業務用会計ソフトや家計簿ソフトなども、用途を「会計」に限定したデータベース・ソフトといえるでしょう。

データを保存し、検索できる点はかわりませんが、表計算ソフトは、入力の自由度が高いものの、処理できるデータ量には限界があります。

Microsoft公式ホームページにExcelの仕様と制限が明示されており、Microsoft365シリーズなどであれば、ワークシート行数・列数は最大1,048,576 行・16,384 列と規定されています。

しかし、規定ぎりぎりの大きなデータをExcelで操作すると、実際にはブック容量がおもくなり、起動や動作もおそくなり、実用にたえられないことがあります。

営業活動に必要なデータには、100万件超のレコードを有するものもあることから、このような資料をあつかうためには、データベース専用ソフトを用意する必要があるのです。

一方、そこまで大きくないレコード(例;取引先台帳や商品管理台帳、業務日報のように、せいぜい数百〜数千件レベルのデータ)であれば、わざわざデータベース・ソフトを用意しなくても、Excelだけで”どうにかなってしまう”ことがあります。

今回は、データベース・ソフトのかわりにExcelを活用する場合に、おぼえておきたい検索・入力補助機能について説明します。

Excelをデータベースとして使うなら検索はフィルターよりもスライサー

データベースに求められる最大の機能は「必要な時に」「必要な情報を」最速で検索・抽出できることです。

Excelで「抽出」といえば、まず最初に「フィルター」が思いうかぶのではないでしょうか?「データ」タブのリボンに標準設置されている、ロート(漏斗)アイコンの機能です。

たしかに「フィルター」で必要な情報を取り出すことはできますが、それが「最速か?」というと、ちょっと...。ダイアログボックスで、1つずつ取り出すべき情報をチェックしないといけませんからね。

Excelをデータベースのように使うには、スライサーやフォームの活用が便利

個人情報テストデータジェネレーターが自動生成したダミーデータで、実在する個人を特定するリストではありません。

このようなシート状の資料をデータベース活用するために、Excelの「テーブル」機能を使って、テーブル化しておくと便利です。

テーブル化とは、単なるデザインや書式の問題ではなく、「ひとまとまりの情報が、1つの表(テーブル = データベース)である」と、Excelへ認識させる作業だと考えてください。この設定をすることで、その後、「スライサー」や「フォーム」などのデータベース機能を利用できるようになるのです。

Excelをデータベースのように使うには、スライサーやフォームの活用が便利

対象のセルを選択した上で、[ホーム]→[テーブルとして書式設定]アイコンをクリックすると、いろどりゆたかなテーブル・デザインが一覧できます。色味などは、自分で見やすいと思えるものを、お好みで選択してください(元表に罫線やセル結合、その他の装飾が含まれると、うまくテーブル化しないことがありますので、ご注意ください)。

Excelをデータベースのように使うには、スライサーやフォームの活用が便利

テーブルとなった一覧表にカーソルを合わせ、[テーブルツール]→[テーブルデザイン]タブ→[スライサーの挿入]ボタンをクリックして、ダイアログボックスを表示させてください。

Excelをデータベースのように使うには、スライサーやフォームの活用が便利

データ抽出条件としたい項目へチェックを入れると、テーブル上にスライサーが表示されるようになります。

Excelをデータベースのように使うには、スライサーやフォームの活用が便利

たとえば、サンプル住所録から「東京都・千葉県・埼玉県・神奈川県」の「県庁所在地、もしくは都心3区(千代田区・港区・中央区)在住者のみを抽出」という条件で検索・抽出を行うとしましょう。

検索条件が1項目だけであれば、フィルターでもスライサーでも、あまり検索にかかる手間は変わりませんが、検索条件が複雑になるほどスライサーの使いやすさが実感できるようになります。

フィルターの場合、まず

(1)「都道府県」フィールドで対象レコード抽出を終えてから、もう一度、

(2)「市区郡」フィールドにフィルターをかけなおす必要があります。

一方、スライサーの場合には、あらかじめ検索項目のスライサーを作業中のシートに複数表示しておけば、複数の複雑な検索条件を視覚的に操作することができ、選択/解除の繰り返しで、何度でも検索条件を変更できるようになります。

「検索」にかかる手間については、フィルターよりスライサーの方が、はるかに簡便だといえるでしょう。

フォームで、マクロ要らずのカード型データベースソフトになります

VBAを習い始めた人が、よく「マクロでデータ入力フォームを作ろう」という課題に取り組むことがあります。

データの最終行を検知して、その後ろに、新たなレコードを追記するプログラムです。

Excelワークシートに、いわゆる「カード型データベース」のような入力インターフェースを作るためのアレンジです。

しかし、これも実は「テーブル機能」を使えば、シンプルなものは、VBAプログラムなしで利用することができるのです。

デフォルトではリボンに表示されていない「フォーム」をよびだすところからやってみましょう。

Excelをデータベースのように使うには、スライサーやフォームの活用が便利

[ホーム]→[オプション]を選択して、Excelのオプション・ダイアログボックスを表示します。[リボンのユーザー設定]→[リボンにないコマンド]の中から[フォーム]を選択し、自分が使いやすいリボン位置に、ボタンを表示させます。

次に、すでにテーブル化したセル上で、このフォーム・ボタンを押してみてください。

自動生成されたフォームが一発で表示されました。

Excelをデータベースのように使うには、スライサーやフォームの活用が便利

このフォームでは、テーブル内の必要なレコードを検索することもできますし、空白フォームに新規レコードを入力すれば、自動的に最終行に新レコードを追記してくれます。

必要最低限の入力フォームなら、これで充分! わざわざVBAの入力フォーム設計をすることも、必要ありませんね。

まとめ;ルーティンワーク用の小さなデータベースは、Excelだけで構築可能テーブル化&スライサー/フォーム活用で、検索力を高めましょう!

数百万レコード以上あるデータの固まりを、Excelで処理することは困難です。

そのようなデータは、やはりセキュアなデータベース・ソフトの中に取り込んで、使いやすいようにカスタマイズしていきましょう。

しかし、日常業務でひんぱんに使うデータの固まりは、数百とか、数千とか、せいぜい万の単位だったりしませんか?そのような資料のデータベース化は、Excelひとつで十分なのです。たとえ大きな一覧シートになったとしても、テーブル化しておけば、スライサーでラクラク複数条件検索可能!

入力フォームだって、プログラムを組まずに、自動で提供してもらえるのです。

このような便利機能をとことん使いこなして、ご自身の情報検索力を高めていきましょう!

せるワザ

Excelのデータベース活用をきわめると、本格的なデータベース・ソフト活用について勉強をはじめた時にも、その理解度が格段に上がりますよ!

使用頻度はそれほど高くないExcel関数でも、機能だけはおぼえておけば、資料作成力が格段に上がるかもしれませんよ。









小さなお悩みでも、
お気軽にご相談ください!

お急ぎの方はお電話にてお問い合わせください

050-6867-2130
せるワザロゴ

セルワザでは、役に立つEXCELワザをご紹介しております!

  • ブックマーク
  • Feedly
  • -
    コピー