“脱Excel”か“活Excel”か
「VBA最強」とは限らない スキルに合わせてExcelツール作成方法を導く「5W1H」とは
「Excelツールを作成する際、関数とVBAのどちらを使うべきか」。この判断を、それぞれの機能だけを見て下してしまうと、後々、利用者の利便性や開発者のサポートの手間に大きな影響を及ぼす場合があります。
VBAと関数の違いを考える
企業において「Microsoft Excel」(以下、Excel)を使用したツールを作るときは、ほとんどの場合は関数かVBA(Visual Basic for Applications)を使用することになります。どちらを使用するかはそれぞれが持つ機能を考慮し、実現したい機能に対して、適材適所で使用することが原則です。
関数は、セルに値ではなく関数式を入力することで、求める結果を簡単に出力する機能です。Excelで関数をほとんど使用しない人であっても、「SUM」「AVERAGE」「COUNT」といった基本的な集計用関数を使用したことはあるはずです。数値の集計以外にも、文字列や日付を操作する関数、財務や統計専用の関数など、Excelには用途に応じた関数が多数用意されており、最新バージョンである「Microsoft Excel 2016」では400種類を優に超える関数を使用できます。ただし関数は、あくまでセルに何らかの結果を表示することしかできません。例えばセルの背景に色を設定したり、セルの周りにけい線を引いたりといったことを、関数で対応することはできません。
一方のVBAは、プログラミング言語の中でも習得が比較的容易なBASIC(Beginner's All-purpose Symbolic Instruction Code)という言語を使用することで、Excelで行う操作のほとんどを実施することができます。セル背景色の設定や、けい線を引くことのような、関数では対処できない操作を実施することはもちろん、Windows上のファイルを移動させたり削除したりするといった操作を実施することもできます。また全てではありませんが他のアプリケーションを操作することも可能です。さらにいえばVBA内で関数式を使用することもできるため、セルに関数を入力することなく、関数と同様の結果をセルに出力することもできます。
併せて読みたいお薦め記事
ロボティックプロセスオートメーションとは何か
Microsoft Office最新動向
- “脱Office”は無謀? 「Microsoft Office」の代わりを見つけるのが難しい理由
- Microsoft 365 Enterpriseを導入すべき企業の条件
- 今更聞けない「Office 365」と「Office 2016」決定的な違いとは?
イノベーションを起こす方法
機能的な境界が業務的な最善になるとは限らない
このように見ていくと、関数とVBAではそれぞれが実現できることにはずいぶんと違いがあり、どちらを利用するかの境界線は、かなりはっきりしているように思えます。ただし、この境界線は、業務パフォーマンスが向上するかどうかに左右されます。Excelの関数は大量のデータに対して、複雑な条件を付けて集計したり、関数式を大量に使用したりすると、Excelの処理速度に影響を及ぼします。多少遅くなる程度ならそれほど問題にはなりませんが、ひどくなると1つの操作をするたびに数秒から数分待たされるような状況になることもあります。もちろん、関数を使用しないよりははるかにマシではあるのですが、業務をする上で最善であるとはいえないでしょう。
一方で、複雑な条件分岐や計算プロセスが必要で、VBAを使用する方が容易に作成できるとしても、あえて関数を使用することもあります。式の参照元の数値を頻繁に変更し、途中のプロセスの値や結果の値を比較するような業務の場合などです。関数は参照元の値が変更された場合、あえて手動計算に設定しなければ自動で再計算して結果を変更します。一方VBAは、実行時にVBAを開始させるための操作をする必要があります。これにより1つ操作手順が増えてしまいます。1つの手間ではありますが、何度も実施すれば業務のパフォーマンスが低下しかねません。
機能的な境界よりも使用する側の5W1Hが選択の鍵
ビジネスコミュニケーションの基本として5W1Hを知らない人は、ほとんどいないでしょう。5W1Hは
- Who(誰が)
- When(いつ)
- Where(どこで)
- What(何を)
- Why(なぜ)
- How(どのように)
の6つの要素で構成され、報告や文章作成などの情報伝達において基本とされるフレームワーク(考え方の枠組み)です。この6つの要素のうち「How」を「Excelのツール作成においてVBAを使うか、関数を使うかを決定すること」と定義すると、残りの5つの要素で「VBAを使うか、関数を使うかを決定するための判断」ができるようになります。
これらの要素を整理した上で、
- VBAで作成するのか
- 関数で作成するのか
- VBAと関数の両方を使用するのか
を決定することで、業務の状況に合ったExcelツールの作成が可能になります。状況によっては、機能的には関数が最善であってもVBAを使用することもあれば、機能的に不足する部分があってもあえてVBAを使用せず、関数でできることだけ実現するといったこともあるでしょう。
Who
作成するExcelツールを使用する人が「関数なら扱える」程度なのか「VBAでも対応可能」な程度なのかなど、どの程度のスキルなのかを確認しておく必要があります。ツールに何らかの問題が発生した場合に現場で対処できるかどうか、対処できないとしても問題を正確に把握して適切に報告できるかどうか、などを把握しておきます。
When
Excelツールを使用する頻度と、いつまでにツールが必要かを確認しておく必要があります。頻度を確認することで、ツールを作成した結果、どのぐらいの効果が見込めるかを想定しやすくなります。必要な時期を知ることで、作成工数をどのぐらい確保できるかが想定できます。
Where
Excelツールの開発者は、ツールが使われる部門の所在地を考慮しておきましょう。開発者がすぐに足を運べる場所にあるか、または訪問するのに時間がかかる場所なのか、などを把握しておきます。例えばExcelツールの使用者の関数やVBAに関するスキルが低くても、開発者と使用者が同じ会社のフロアにいるのであれば、サポートは容易です。
What
Excelツールを必要としている業務は何か、現在の状況はどうなっているかを詳細に確認しておく必要があります。
Why
なぜExcelツールを作成する必要があるのか、業務上の課題を把握しておく必要があります。基本的にExcelツールを作成する目的は、業務効率化であることがほとんどです。例えばミスが許されないような業務である場合は、ミスの起こる確率を可能な限り減少させるようにツールを作成する必要があります。
VBAと関数は単純に機能では選択できない
Excelは、業務で広く使用されるアプリケーションであるとともに、VBAや関数を使用することによって、それらの業務を効率化することもできる特殊なアプリケーションです。使用者のVBAや関数に関するスキルには大きな個人差があり、そのことが「VBAを使用するか、関数を使用するか」の判断を難しくしています。こうした状況では、例えVBAと関数を使用するルールを定義したとしても、業務上の制約や使用者の事情を考慮せざるを得なくなり、最後にはルール自体が形骸化してしまいます。
VBAや関数の機能の差で単純に使用するかしないかを決めるのではなく、上述したような要素を確認した上で、業務に応じてVBAを使用するか、関数を使用するかを見極めることが最良の解決策となり得るのです。
このコラムについて
ほとんどの企業が使っている表計算ソフト「Microsoft Excel」。便利なツールですが、本来の目的を超えて“使いこなし過ぎる”ことが、かえって業務効率を低下させてしまったり、業務の属人化につながってしまったりする場面があるのではないでしょうか。
このコラムでは、日常業務でよく見掛けるExcelの活用例を紹介しながら「こんな場面は脱Excelを考えた方がよい」「こういうExcelの活用法はお薦め」といった知見を紹介します。
村山 聡(むらやま・さとし)
1971年愛知県生まれ、名古屋大学経済学部卒、中小企業診断士。
IT企業在職中に、単一業種においてキャリアを積んでいくことに疑問を感じ、どんな業界、職種でも通用する知識を得るべく中小企業診断士を取得。複数社を経て、現在の勤め先にて、コンサルタントとして、データを活用した業務効率改善に取り組む。
Copyright © ITmedia, Inc. All Rights Reserved.
“脱Excel”か“活Excel”か
ほとんどの企業が使っている表計算ソフト「Microsoft Excel」(以下、Excel)。便利なツールですが、本来の目的を超えて“使いこなし過ぎる”ことが、かえって業務効率を低下させてしまったり、業務の属人化につながってしまったりする場面があるのではないでしょうか。 このコラムでは、日常業務でよく見掛けるExcelの活用例を紹介しながら「こんな場面は脱Excelを考えた方がよい」「こういうExcelの活用法はお薦め」といった知見を紹介していきます。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
製品資料
[株式会社キーエンス] なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは -
製品資料
[株式会社セールスフォース・ジャパン] 「CRMは設計と無関係」は本当か? PLMとの融合で実現する高速開発 -
事例
[日本ヒューレット・パッカード合同会社] AIエージェントの時代にどう備える? 「新たな働き手」を支える3要素とは -
製品資料
[日本ヒューレット・パッカード合同会社] “横並びの自動化”から脱却、AI活用で生産性と競争力を高める秘訣 -
製品資料
[サイボウズ株式会社] AIが「わざわざ使うツール」になっていない? 業務で自然に使う導線にする秘訣
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
なぜ「全社配布Copilot」は使われないのか? 失敗に学ぶAI定着
-
2
法務と開発者で「言葉が通じない」問題 トヨタやソニーが語るOSS管理の真実
-
3
【漫画付き】ひとり情シス協会が明かす、RAG導入でしくじる企業「2つの共通点」
-
4
情シスの約8割が転職や退職を意識 調査で分かった“辞めたくなる最大の理由”
-
5
損保ジャパンはなぜ「COBOL」を捨てなかったのか? 脱メインフレームの真相
-
6
ChatGPTは“検索しまくり”でGeminiは“淡泊”? データが明かすAIの裏側
-
7
情報漏えいはなぜ繰り返されるのか 今すぐ見直すべき「境界」
-
8
BMWも導入 78兆円市場に化ける「フィジカルAI」の衝撃
-
9
「Wi-Fi 7」経由でWindowsが乗っ取られる? 最高権限奪取の恐怖
-
10
「AI活用を前提とした業務PCへの移行」に関するアンケート
ホワイトペーパーランキング PR
-
1
不審メールの経路や見せ方に変化? 2026年夏の3事例から見えた動向と対処方法
-
2
家庭用Wi-Fiルーターの業務利用は危険? 避けるべき理由と具体的な対策
-
3
Microsoft 365を安全に運用 うっかりミスやサイバー攻撃に備えるデータ保護術
-
4
財務部門がAIを最大限に活用する方法 無駄のない戦略的リーダーシップへの道
-
5
LLMが兵器化? 元FBI高官が鳴らす警鐘とセキュリティツール統合のポイント
-
6
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
7
なぜRPA導入は頓挫する? シナリオ作成の壁を乗り越える解決策とは
-
8
生成AIを開発に導入しても効果が見えない? 実証実験で分かった成果と課題
-
9
経産省DX指針から読み解く、受発注業務デジタル化ロードマップ
-
10
HDDを使わない「SSDオンリー」が無謀なのはなぜ?
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー