“脱Excel”か“活Excel”か
“Excel職人”がいなくなっても使い続けられる関数を記述するコツ
職場の“Excel職人”がいなくなっても、メンテナンスしやすいワークシートを作るコツとは。ヒントは、関数が参照するセルを可視化する記述法です。「VLOOKUP」「INDIRECT」を利用する方法を紹介します。
なぜExcel業務をなくせないのか
企業は、日々新しいシステムを導入したり、システムをリニューアルしたりしています。それらのシステムには、従来Excelで行っていた業務を代替する機能が存在することも珍しいことではありません。これらの機能を活用することで、Excelで行っていた業務を削減することは可能です。とはいうものの、Excelで行っていた全ての業務をシステムの機能で代替することはなかなかできないことも、また現実です。
全て、なくすことができない要因はいろいろと考えられますが、その中でも「複数システムに蓄積したデータの分析結果を一元化して確認したい」といったニーズへの対応は、どんなシステムを導入してもそのシステムだけでは解決できません。このようなニーズに対応する製品としてビジネスインテリジェンス(BI)ツールがあるのですが、費用対効果の面から導入が困難な企業も少なからず存在します。
併せて読みたいお薦め記事
ワークフローやビジネスプロセスに関する記事
ワークフローをExcelから他システムに移行する
効率化のポイントは
このような状況のため結局、Excelを使った業務を全て、なくすことができず、マクロや関数を活用してExcel業務を効率化している場合も多いでしょう。マクロをある程度、使いこなすことができるようであれば、システムのデータをCSVファイルとして特定のフォルダにエクスポートし、そのデータをExcelに取り込み、集計するようなマクロを組むことはそれほど難しくありません。マクロが使えなくても、CSVファイルの蓄積データをExcelのシートに貼り付けた後、関数を使用して欲しいデータを得ることも可能です。
どちらにしても一度、特定業務に対応するExcelシートを作ってしまえば、ほぼ自動、もしくは数回の手順で目的のデータを得ることができ、大幅に効率化できることになります。
ではExcelシートを作成してしまえば、効率化は完了かというと、決してそうではありません。新しいシステムを導入したり、システムをリニューアルしたりすれば、それらのシステムがエクスポートするデータの形式に合わせてExcelを修正しなければならないからです。他にも集計方式を変更したり、新たなデータの集計を追加したりすることもあります。集計担当者が業務異動などにより、集計業務から外れることもあります。そのような場合、新たな担当者が集計を担当することになりますが、新たな担当者と前任者とのスキルギャップが問題になることもあります。
これらの状況に速やかに対処するためには、Excelのメンテナンス性を高めておくことも効率化を図る上で重要なことなのです。もし社内にマクロを組める人材が少なければ、たとえマクロが組めるとしても、後任者のためにあえてExcel関数を使って作成するといった判断をすることも効率化のためには必要になってきます。
Excel関数のメンテナンス性とは
ではExcel関数のメンテナンス性を高めるためには、一体どんな方法があるのでしょうか。そのヒントとなる機能が、「数式」タブの「ワークシート分析」グループの中にあります(図1)。
ワークシート分析のグループには、以下6つの項目があります。
- 参照元のトレース
- 参照先のトレース
- トレース矢印の削除
- 数式の表示
- エラーチェック
- 数式の検証
「参照元のトレース」「参照先のトレース」「トレース矢印の削除」の3つは、あるセルに入力されている数式が、どこのセルを参照しているか、またはどこのセルに参照されているかを矢印で視覚化する機能です。「数式の表示」は、数式の計算結果ではなく数式自体をセルに表示する機能です。「エラーチェック」と「数式の検証」は、関数を正しく記述しているかどうかを確認する機能です。
このように機能を確認していくと、セルに記述した数式の内容を可視化する機能が充実していることが分かります。セルを選択すれば、数式バーにはセルに入力した数式が表示されますが、1つ1つのセルを選択し、セル内の式の内容を確認することが使用者にとって重荷になるからです。ワークシート分析機能は「Excel 2003」から実装されており、こうした負荷を軽減するための機能だといえるでしょう。
意外と知らない、Excel関数のメンテナンス性を考慮した記述法
だとすると、こうした機能を使わなくても、関数のセルの参照をシート上で可視化できるように関数を記述したいところですが、どのようにしたらよいでしょうか。別のシートから値を検索して取得する関数として使用頻度が高いのは「VLOOKUP関数」です。このVLOOKUP関数を例にして考えてみることにしましょう。VLOOKUP関数の書式は以下のようになります。
VLOOKUP(検索値,検索範囲,列番号,検索の方法)
実際に関数としてExcelシートに記述する場合、一般的には下記のように記述するでしょう。
VLOOKUP(A2,Sheet2!A2:Z100,2,0)
この記述では、VLOOKUP関数はセルA2の値を検索値とし、Sheet2のA2~Z100を検索範囲として、Sheet2のA列を完全一致検索し、一致した場合にはその行のB列の値を表示します。この関数式における他のセルの参照情報は、参照元シートであるSheet2と検索する列のB列です。B列の指定については、VLOOKUP関数では数字で列の位置を指定するため、別のセルに指定する数値を入れておくことで、指定先を可視化することが可能です。一方シート名については、同じようにシート名を別のセルに入れても関数の結果がエラーとなってしまいます。そこで「INDIRECT」という関数を使います。
INDIRECT関数の書式は「INDIRECT(参照文字列)」であり、セルのアドレスを文字列で指定することが可能な関数です。例えばシート1のA1セルの値を、別のセルに表示させたいときの数式は「シート1!A1」と記述します。この記述をINDIRECT関数で記述すると「INDIRECT(“シート1” & “!A1”)」となります。この“シート1”の部分は、別のセルを参照することが可能であるため、B1に「シート1」と入力しておくことで、「INDIRECT(B1 & “!A1”)」と記述することができます。
このINDIRECT関数の機能を使い、シート名と検索列の関数の記述を、セルを選択して数式バーに式を表示しなくても確認できるように関数を記述すると、次のようになります(図2)。
図2の左では、参照するシート名を1行目に、検索する列の値を2行目に記載し、VLOOKUP関数内でINDIRECT関数により、シート名を参照するように記述しています。このように記述することで、シートの1行目と2行目を確認することで、関数が、どのシートのどの列を参照しているか一覧として確認することが可能になります。
このように記述することで他にもメリットが生まれます。1つ目はセルの参照において参照を固定化させたい箇所に絶対参照を示す“$”を使用することで、1つ関数式を記述したら、他のセルにもコピーするだけで関数を修正することなく展開することが可能になることです。図2では、セルB5に記述した関数を他のセルにコピーしただけで、修正することなく正しい参照先を参照しています。
2つ目は、参照値の変更が容易になることです。関数内に参照値を記述すると、関数を修正する場合、関数の対象となる位置の参照値を選択して、修正することになり、関数の記述が長くなると、それなりに手間がかかります。図2のようにすることで、関数自体を修正することなく、参照値の修正が可能になります。
Excel業務を効率化するには、このようにメンテナンス性にも気を配ることも大切なことなのです。
村山 聡(むらやま・さとし)
1971年愛知県生まれ、名古屋大学経済学部卒、中小企業診断士。
IT企業在職中に、単一業種においてキャリアを積んでいくことに疑問を感じ、どんな業界、職種でも通用する知識を得るべく中小企業診断士を取得。複数社を経て、現在の勤め先にて、コンサルタントとして、データを活用した業務効率改善に取り組む。
Copyright © ITmedia, Inc. All Rights Reserved.
“脱Excel”か“活Excel”か
ほとんどの企業が使っている表計算ソフト「Microsoft Excel」(以下、Excel)。便利なツールですが、本来の目的を超えて“使いこなし過ぎる”ことが、かえって業務効率を低下させてしまったり、業務の属人化につながってしまったりする場面があるのではないでしょうか。 このコラムでは、日常業務でよく見掛けるExcelの活用例を紹介しながら「こんな場面は脱Excelを考えた方がよい」「こういうExcelの活用法はお薦め」といった知見を紹介していきます。
この記事の著者
関連記事
新着ホワイトペーパー PR
-
事例
[Datadog Japan合同会社] Wantedlyのオブザーバビリティはどう進化したか 10年の軌跡と実装の変遷 -
事例
[Datadog Japan合同会社] エラー検知から原因調査までを最短5分で、日経新聞に学ぶアプリ監視の改善方法 -
製品資料
[Datadog Japan合同会社] クラウドのコストと利用状況を可視化&最適化、「Datadog」の実力とは? -
事例
[Datadog Japan合同会社] クラウド移行で見えた監視の死角、SBI証券が選んだ統合オブザーバビリティ実践 -
製品資料
[NTTPCコミュニケーションズ株式会社] リソースに限りのある中堅企業で「多層防御」の運用負荷をどう乗り越える?
こんなメディアも見られています
TechTargetジャパンに関連する情報をお探しであれば、こちらのメディアもお役に立てるかもしれません。
ベンダーコンテンツ PR
From Informa TechTarget
SpecialPR
アクセスランキング
-
1
ITエンジニア1265人調査 生成AIを使い込むほど「人の確認」が重い理由
-
2
全社標準Copilotに絶望? MS Copilotで問い合わせ6割減できた企業は何が違った
-
3
Microsoft製品でここまで自動化できる 情シスがやめられる手作業10選
-
4
「Microsoft一択」で本当にいいのか 知らぬ間にライセンス費用が膨らむ真相
-
5
「Copilot」はなぜ放置される? “議事録要約止まり”を脱する処方箋
-
6
脱VMwareの前提が崩れる BroadcomのVDDK公開停止で確認すべき点
-
7
回避策ゼロ、極めて危険なCisco脆弱性 メール1通で管理者権限、ログ消去の手口
-
8
「仮想化基盤の利用・検討状況」に関するアンケート
-
9
LLMの「過学習」、正しく説明している文章はどれ?
-
10
「最大の脆弱性は従業員」が8割 AI活用で深まるCISOの孤立と苦悩
ホワイトペーパーランキング PR
-
1
JR西日本ITソリューションズが「監視業務の属人化」を解消した方法とは?
-
2
生成AIで文書活用を進めるには? 効率化と安全性をどう両立する
-
3
インシデント対応工数を約3割削減、東京ガスの事例に学ぶ監視体制刷新のコツ
-
4
Windows PCとMacの選択制で生産性向上 LINEヤフーが実践する運用管理方法とは
-
5
少額減価償却資産が40万円未満へ拡大、令和8年度税制改正で押さえるべき変更点
-
6
「Google Workspace」活用事例34選、先進の生成AIによる組織変革の全貌
-
7
国税庁の次世代基幹システム「KSK2」稼働開始に向けて、対応すべき変更点とは?
-
8
「オンプレミス回帰」せざるを得ない“合理的な理由”
-
9
Linuxのスキルを証明する“激推し”の認定資格はこれだ
-
10
AI時代に成功するための「ナレッジマネジメント」ベストプラクティス
TechTargetジャパン SNS
インフォメーション
注目情報をチェック
TechTargetジャパンをフォロー