冒頭からのため息で恐縮ですが、渡る世間にゃ、山あり、谷あり、壁ありですなぁ。
「103万円の壁」とか、「106万円の壁」とか、「バカの壁」とか、「社会の壁」とか。
さらに、法人や個人事業主の決算期末が近づくと、会計業務にたずさわる多くの人々を悩ませるのが、「Excelの壁」でしょうか?
いわゆる”.xlsxファイルの1ワークシート最大行数が1,048,576行で、それ以上のビッグ・データを取り扱えない”、104万の壁のことです。ただし、約104万行というのはあくまでも最大値であって、一般的なWindows 11 事務用PCのメモリ容量では、”万”行ワークシートになると、データが重く誤作動を起こしたり、フリーズしたり、さまざまな障害が発生します。
今どき、取り扱いアイテム数によっては、個人商店でも万単位の取引履歴を管理する必要があり、”脱・Excel”論の1つの論拠にもなっています。
しかし、実はExcel104万行の壁については、すでに乗りこえることができるようになっていることをご存じでしょうか?
そのキーワードが、「モダンExcel」です。
PowerQueryとPower Pivotを使用できるバージョンの愛称がモダンExcelです
Microsoft社が「モダンExcel」という製品名のプロダクトを発売しているわけではなく、愛称(ニックネーム)の一種ですが、ざっくり定義すると、「Power QueryとPower Pivot for Excelが標準装備された、主に2016版以降のバージョンのMicrosoft Excel製品総称」といえます。対義語(Power QueryとPower Pivotが使えないバージョン)を、ここでは「レガシーExcel」とします。
モダンExcelを使って何ができるか? というポイントについては、そのテーマにフォーカスした専門書「モダンExcel入門」やWeb記事「安易な“脱Excel論”に異議あり、データ分析の新潮流「モダンExcel」を学ぶべき理由」などが詳述していますので、気になる方は、一度目を通してみるとよいでしょう。
この記事では、「Excel104万行の壁は、モダンExcelでこえられる」という1点にしぼって、検証してみることにします。
サンプル・データとして、unwiredlabs OpenCellid(英語サイト)がWeb上に一般公開し、誰でも無償ダウンロードできる携帯基地局情報.csv (要アクセストークン。但しトークンは誰にでも発行可)を用います。
※自由に利用できる大容量テキスト・データ見本として用いるだけですので、資料の内容に関する言及はしません。
同サイトでは、全世界197カ国分の携帯基地局情報を一般公開していますが、さすがに全世界分の情報を取り回すのは重たいので、日本の情報にしぼって、CSVファイル・ダウンロードをします。
※ちなみに、モダンExcelでは、全世界分データを分析にかけることができます。
ダウンロードしてきた”404.csv”というファイルを、Power QueryでExcelに読み込むと、701,043行のレコードがありました(ファイル・サイズ55.9MBのCSVファイルでした)。
このCSVファイル自体は、104万の壁をこえていませんから、レガシーExcelを使っても取り回すことができます。ただし、”ラクラク”取り回せるか?というとそうではなく、起動もフィルタリングもかなり重たい挙動となりました。Excelブックとして保存しても、やはり約55MBありますから、電子メールで送受信できる容量を大幅に超えてしまっています。
次に、WebからダウンロードしてきたCSVファイルを、テキスト・エディタでひらき、全レコードを1回コピーしてからペーストします。レコード数を2倍にふやすのです。
今回は、Power Queryエディタで読みこむことはできるのですが、Excelへ転記するために[閉じて読み込む]するとどうでしょう!
あ〜あ、Excel104万行の壁にひっかかってしまいましたね。
レコード数が140万件超ありますからね。
しかし!
注目すべき事実は、Power Queryエディタまでは「読み込めた」という事実なのです。
これは、Power QueryやPower Pivotのエディタ上で、データ量を大幅に圧縮する新技術「メモリ内分析エンジン」が使用されているためです。この新技術のおかげで、モダンExcelでは、メモリ使用量を最小限におさえながら、数百万行ものデータを効率的に処理することが可能になりました。
つまり、ワークシートに書き出せる最大行数は約104万行のままでも、その前行程でデータ・クレンジング(Power Query)やデータ突合、Pivot分析(Power Pivot)などを済ませられれば、Excelでも、104万の壁をこえるビッグ・データだって取り回せるようになるというわけです。
約140万行のデータでも、PowerQueryとPower Pivot for Excelで、ラクラク整理・分析
前章のサンプル・データについても、通信方式(LTE・UMTS・NR)を、事前にPower Queryエディタ上でフィルタリングすれば、たとえばUMTSレコードだけを抽出して、Excelワークシートへ書き出すことができるようになりました。
また、140万件超のデータ内訳(通信方式3種の内訳)も、ワークシートへ読みこまず、Power Pivotエディタ上でピボットテーブル作成をすれば、一発で回答にたどりつくことができました。
ほらね。104万行の壁を乗りこえることができたでしょう?
まとめ:脱・Excelを考えるのはちょっと待って!Excel104万行の壁は、モダンExcelを使えば簡単に乗りこえられます
「Excel = 約104万行まで」という通説が広まっているため、それ以上のビッグ・データをあつかうには、RDB(リレーショナルデータベース)や会計専門ソフトなど、脱・Excel的手段を使わなければならないと思う人もいるでしょう。しかし、モダンExcel(Power Query & Power Pivot)は、この104万行の壁をラクラク突破して、ビッグ・データを”普段使いPC”で取り回せるようにしてくれているのです。
現在レガシーExcelを使っている人は、この便利さを享受するために、Microsoft 365版などのモダンExcelへおきかえる必要があります。しかし、まったく新しいソフトウェアの使い方をおぼえるよりは、ビッグ・データの取り回しには、モダンExcelの活用法を学んだ方が効率的だ、ということがご理解いただけたでしょうか?
さて、これで仕事上の大きな壁はひとつ取りのぞけました。
あと残っている巨大な壁は…、そう、「夫婦の壁」がありましたね!?(苦笑)