当サイトではアフィリエイトプログラムを利用して商品を紹介しています。

【Excel VBA】データベース研究所

置換機能でセルに色を塗ります
INDEX関数で列と行を指定してデータを取り出します
指定したデータが列の何番目にあるか調べます
INDEX関数と MATCH関数を組合わせてデータを取得します
VLOOKUP で検索します
氏名から苗字と名前を取り出します
複数のテーブルを参照します
英単語の数をカウントします

表をテーブルに変えます
順位と日付で抜き出します
テキストフィルターで特定の文字列を抽出します

登録データ件数をかぞえます
Findメソッドと FindNextメソッドで検索マクロを作ります
ListObject オブジェクトの基本を学びます
テーブルの行と列を参照します
テーブルのセルを参照します
データを配列変数に放り込みます

【Excel VBA】データベース研究所

研究所ってのはちょっと大げさかもしれないけど、まあ要するにデータベースとしての Excel の使い方のあれこれをまとめているコーナーです。

ところで、データベースとは何のことでしょう?
なんとなくイメージできても(電話帳のような文字や数字の情報の羅列を思い浮かべるかもしれません)、いざ説明しろと言われると「えーと、えーと」てなってしまいますよねー。でも大丈夫! ついさっき、こばとがネットや本で調べてきたから大丈夫!

「今調べてきたのかよ!」とか、つっこまないでね。
データベースというのは、情報の羅列そのものではなく、大量のデータを管理する仕組みのことです(と書いてあった)。普通はサーバーのようにデータを大量に保管している場所があって、そこにアクセスしてデータを書き加えたり、取り出したり、並べ替えたりできるのです。データベースに詳しい人なら Oracle や SQL Server などがおなじみですね。

とはいえ、こうしたアプリケーションを扱うには専門的な知識が必要となりますし、実際のところ「ちょっとしたことをやる」にもかなり面倒な手順が必要で、お世辞にも「かゆい所に手が届く」という代物ではないのです。ですから、もし Excel で同じようなことができるのなら「使い慣れた Excel でいいじゃん」ということになりますよね。ビッグデータ解析や研究開発など何か特別なことをするのでない限り、たいていのことは Excel で事足りるはずです。いくら必死に勉強してデータベースに関する高度な専門知識を身につけても、最終的にやることが同じだったら費やした時間がもったいないだけです。

では皆さんにとって非常に身近な Microsoft の Excel はどのようなツールなのでしょうか? もちろん Excel というソフトは単体で大量のデータを保管して並べ替えたり書き加えたり、あるいは VBA を用いて様々な自動処理を行うことができます。すでに皆さんが Excel で商品の管理などを行っていたとしたら、それはすでにデータベースとして Excel を活用していることになります。

それに加えて Excel は Access や SQL Server で管理されているデータベースにアクセスしてデータを取り出して、慣れ親しんだ方法で分析したり、グラフやレポートを作成できます。VBA を駆使すれば外部データベースの操作を自動化することさえできます。すごいですねー。万能ですねー。こばとはやっぱり Excel 大好きねー。なんだか近頃は Excel とこばとは昔ながらの親友同士のような気もしてきましたよ。え? あぶない? 病院へ行ったほうがいい? そ、そうかな?

Excel というのは表計算ソフトですから、本来の意味でのデータベースソフトではありません。しかし外部データ(特に Access )との連携によって、限りなくデータベースアプリケーションに近い使い方が可能になります。こばとが開発している KOBATO’s BOOK 、或いはそこに組み込まれる Profile Editor は何十万もの膨大なデータを自動処理するので、データベース的な色彩がとても強いソフトなのです。その開発過程で得られた知識やテクニックを、ここで少しずつ紹介してゆく予定です。最終的には Access の使い方なんかもお話したいと思うので、どうぞ気長にお付き合いくださいな。

【連載小説】エクセルをデータベースとして活用しよう!

【AI連載小説】生田目次郎のエクセル奮闘記(5)
 
ある日のオフィス、小戸森省吾は次郎に対話型のデータベースとしてエクセルを活用する方法を教えてくれることになりました。プロジェクトの進捗管理など、データの整理が必要な案件が多く、省吾はその便利な使い方を教えることになりました。

省吾:「次郎、ちょっといいかな? エクセルを使ったデータベースの作り方を教えてあげるよ」
次郎:「おお、本当に?それはありがたい。どうやってやるんだ?」
省吾:「まずは、データを整理するためにシートを作ろう。各列にデータの項目を入れて、1行目にはヘッダーを書くんだ」
次郎:「ヘッダーって何がいいんだろう?」
省吾:「例えば、プロジェクトの進捗管理なら『プロジェクト名』、『担当者』、『進捗状況』みたいな感じ。それがヘッダーだよ」
次郎:「なるほど、それでデータを入力すればいいってことか。」
省吾:「そうだ。それから、データを検索しやすくするためにフィルターをかけたり、関数を使ってデータを集計できるようにしたりすると便利なんだ」
次郎:「なるほど、これでデータを見やすく整理できそうだね」
省吾:「そうだね。それに、エクセルのテーブル機能を使うとデータの追加や修正も簡単だし、何よりもグラフやチャートを作るときにも役立つんだ」
次郎:「ありがとう、省吾。これからはっちゃけてデータ整理してみるよ!」と笑顔で答えました。

二人は協力してエクセルをデータベースとして有効に利用する方法を身につけ、プロジェクトの進捗管理がより効率的に進むようになりました。