MENU
  • サービス
  • せるワザの特徴
  • お客様の声
  • 記事
    • データ分析
    • クエリ
    • ピボットテーブル
    • スクレイピング
    • 電子帳簿保存法
    • インボイス制度
    • 教育・学習
  • お知らせ
  • よくある質問
お見積りは無料!どんなことでもまずはご連絡ください!
EXCELの時短ツール開発なら『せるワザ』にお任せ!
  • サービス
  • せるワザの特徴
  • お客様の声
  • 記事
    • データ分析
    • クエリ
    • ピボットテーブル
    • スクレイピング
    • 電子帳簿保存法
    • インボイス制度
    • 教育・学習
  • お知らせ
  • よくある質問
EXCELの時短ツール開発なら『せるワザ』にお任せ!
  • サービス
  • せるワザの特徴
  • お客様の声
  • 記事
    • データ分析
    • クエリ
    • ピボットテーブル
    • スクレイピング
    • 電子帳簿保存法
    • インボイス制度
    • 教育・学習
  • お知らせ
  • よくある質問
  1. ホーム
  2. 記事
  3. EXCELの機能
  4. カンタンな検索システムなら、AccessではなくExcelにおまかせ!

カンタンな検索システムなら、AccessではなくExcelにおまかせ!

2024 7/30
EXCELの機能
2024年7月30日

Microsoft Access、使っていますか?

すでにAccessなどの高度なリレーショナルデータベース管理システム(RDBMS)を使いこなしている方には、本記事は物足りないと思いますので、どうぞスキップしてください。

Accessを使ってないけれど、業務用データベースを作成したい!と考えている人には、ちょっと役立つTipsがあるかもしれませんので、すこしお付き合いくださいね。

今回は、Excelで、マクロも使用せず関数だけで、カンタンな検索システムを作った事例について、ご紹介します。

目次

ExcelとAccessは、どう使い分けますか?

ExcelとAccessは、ともにMicrosoft Officeの一部で、データ管理や分析のためのアプリ(ソフト)です。

しかし、両者は異なる目的と機能を持っていますので、以下に、それぞれの特性とメリット・デメリットを整理してみましょう。

〔Excel〕

特性;Excelは表計算ツールで、数値計算、データ分析、グラフ作成などに適しています。VBAを使用して、カスタム関数やマクロを作成することも可能です。

メリット;Excelは直感的で使いやすく、初心者でもすぐ使いこなせるようになります。データ視覚化も容易で、フィルタリングやソートなどの基本的なデータ操作が可能です。

デメリット;.xlsxファイルでは、ワークシートの最大行数が1,048,576 行ですから、大量のデータ(100万行以上)を扱えません(100万行以下(数10万行)のデータでも、Excelメモリ上で編集、検索、加除訂正するのはかなり難しいでしょう)。また、複数ユーザーが、同時にデータ編集することも困難です。

〔Access〕

特性;Accessはリレーショナルデータベース管理システム(RDBMS)で、大量のデータを効率的に管理し、複雑なクエリを実行することができます。

メリット;Accessは大量データを取り扱うのに適し、データ整合性をたもつ機能があります。複数ユーザーが、同時にデータを編集することも可能です。

デメリット; Accessを初心者が使いこなせるようになるまでには、かなり学習・訓練を積む必要があるでしょう。データ視覚化についても、Excelほど直感的ではありません。

両者の特性や、メリット&デメリットを比べると、Excelは簡単なフィルタリングと検索が可能で、小〜中規模データ・マネジメントには十分な機能を提供してくれます。

しかし、Accessは大規模なデータセットや、複雑なクエリに対応する能力を持っています。

どちらを選択するかは、具体的な要件(データの規模、必要な機能、技術的なスキルなど)によって決めることになるでしょう。

カンタンなExcel関数だけで検索システムを作ってみました

それでは、実際にカンタンな「検索システム」をExcelで作ってみましょう。

住所録や顧客台帳、製品や部品台帳など、どのようなデータでもよいのですが、今回は広くWeb上に公開されている 全国地方公共団体コード.xlsx を題材にします。国内で使われるGIS(地理情報システム)データベースなどの主キーとなることが多い、「都道府県コード」や「市区町村コード」を、漢字やカナ(の一部)などから検索するためのものです。

現在日本国内には、全国地方公共団体コードが振られた行政区が約1,800件あります。レコード数が1800件程度であれば、1枚のExcelワークシートで、十分加除訂正やフィルタリングすることができますが、できれば元のレコードは「テーブル」として手を加えず保存し、必要な情報だけを別フィールドに抽出できた方が、検索の自由度が高まります。

総務省公式HPで一般公開されている「全国地方公共団体コード.xlsx」は、上図のようなワークシート1枚約1800行の一覧表ですが、このExcelブックの別ワークシートに、下図のような検索条件入力フィールドを作り、入力された検索条件にもとづいて、一覧表から条件に適合するレコードだけを抽出・表示するシステムです。

[データ]→[フィルタ]ボタンからExcel標準のフィルター機能を使って、類似の検索をすることはもちろんできますが、上記のような検索システム化をすることで、

              (1)元のテーブルへ手を加えずに検索が完了する

              (2)毎回フィルターのダイアログボックスを立ち上げることなく、

               自由に検索条件を変更し、新しい検索結果を得ることができる

              (3)”可視セルのみ選択”をしなくても、抽出できた一覧をコピー&ペーストして

               取りまとめようとする別資料などへ転載・引用できる

など、多くのメリットが生まれます。

それでは、まず上図(検索ワークシート)セルA5へ、Microsoft 365およびExcel 2021で使用できるFILTER関数を入れてみましょう。

=FILTER(市区町村名,

IFERROR(FIND(A2,市区町村名[団体コード]),0)*

IFERROR(FIND(B2,市区町村名[都道府県名(漢字)]),0)*

IFERROR(FIND(C2,市区町村名[市区町村名(漢字)]),0)*

IFERROR(FIND(D2,市区町村名[都道府県名(カナ)]),0)*

IFERROR(FIND(E2,市区町村名[市区町村名(カナ)]),0),””)

関数式入力の前提として、総務省公式サイトからダウンロードしてきたコード一覧表をテーブル(※)化してください。

(※)CF.テーブル化の詳細はこちら。

ここでは、テーブル名を「市区町村名」と名付けておくようにします。

そこで、[データ]→[フィルター]機能を関数化したFILTER関数を使い、検索条件に適合したレコードだけを、別ワークシートへ抽出するのですが、

構文は

=FILTER(範囲, 条件, 一致しない場合の値)

です。

範囲はテーブル;市区町村名、一致しない場合の値は””(空白)とします。

第2引数(フィルター条件)については、FIND関数

=FIND(検索文字列,対象,[開始位置])

を使って、入力フィールド(A2,B2,C2,D2,E2)の値を検索文字列、テーブル;市区町村名のそれぞれA,B,C,D,E列を検索対象として、検索条件に合ったレコードだけをFINDし(見つけ)ます([開始位置]は文字列最初の文字から検索開始する場合は省略可)。

最後に、FIND関数をIFERROR関数

=IFERROR(値,エラーの場合の値)

で囲い、FIND関数の検索文字列がテーブル;市区町村名に含まれていない場合にも、#VALUE!などのエラー値を出さないようにして完成です。

FILTER関数が使えるMicrosoft 365 やExcel 2021であれば、同時にスピル(※※)機能も働きますので、上図(検索ワークシート)セルA5に関数式を1つ入れるだけで、A列からE列までに同じ関数式が、自動で代入されます。

(※※)CF.スピル;一つのセルから複数セルに、データを「こぼれ落ちる」ように自動代入する機能。 この検索ワークシートへ、市区町村名(漢字)の一部文字を入力すれば、その文字を含む市区町村コードのみが自動抽出されるようになりました。

コードから、当該行政団体名を逆引きすることも可能です。

まとめ:数千件程度のレコード検索システムにはAccess要らず。
FILTER関数+スピル機能活用、関数式たった1文で目的達成!!

検索や抽出を必要とする元レコードが数千件以上あると、Accessなどのリレーショナルデータベース管理システム(RDBMS)が必要かしら? という気にもなりますが、ちょっと待ってください。

現在仕事で使っているパソコンのメモリ容量が充分にあり、1枚のExcelワークシートで読み込めるレコード数ならば、Excelだけで(元のテーブルは、手を加えることなく保持したまま)簡単に検索システム化することができますよ。

しかもマクロ不要のため、作成したExcelブックを電子メールなどにも安心して添付、送信できます。

FILTER関数を使用できるMicrosoft 365版Excel、もしくはExcel 2021などでしたら、関数式を1文入力するだけで、あとはスピル機能が自動で検索条件を判別して、結果抽出まで一気にやってくれますから、ぜひ試してみてください。

一度やり方を習得しておくと、ほかの大量データ検索場面でも、いろいろと応用できるようになりますよ。






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

お問い合わせ

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

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

詳しく見てみる!

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

お問い合わせ

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

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

詳しく見てみる!
EXCELの機能
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
  • 2024年3月より、オンライン版ExcelでCSVエクスポートできるようになりました!
  • Excelのセル内でプログラミングできるPython in Excelを試してみました

関連記事

  • Power Pivot超入門!VLOOKUPやXLOOKUP関数がわりに、リレーションを使ってみましょう
    2025年6月9日
  • 企業研究の第一歩は、PL(損益計算書)などの読み込み!パワークエリ&ピボットテーブルで、サクッと自分流分析をしてみましょう
    2025年6月2日
  • 新社会人が押さえておくべきExcel関数は、たったコレだけ!?初心にたち返って、その必要性を考えてみましょう
    2025年5月19日
  • SWITCH関数は、Excelデータベース簡素化への入口!?IFS関数とうまく使いわけてみましょう
    2025年5月12日
  • スマートフォンのPayPayアプリ取引履歴が、CSVダウンロードできるようになりましたよ!
    2025年5月5日
  • どうしてもスクエア(四角)型月間カレンダーを使いたい方へ、それでもやはり「Excelを使う!」ことをおすすめします
    2025年4月28日
  • リボ払いの怖さを、Excel関数でシミュレーションしてみましょう
    2025年4月21日
  • Google Gemini advancedへ、Excelブックをアップロードしてみましょう、仕事に役立つ問答集になるか否か?
    2025年4月14日
  • サービス
  • せるワザの特徴
  • 記事
  • お知らせ
  • よくある質問
  • お問い合わせ
  • プライバシーポリシー
  • 特定商取引法に基づく表記

© EXCELの時短ツール開発なら『せるワザ』にお任せ!.

目次