残業を減らす!Officeテクニック
Excelで面倒な時間の計算とXLOOKUP関数の数式もCopilotに丸投げ!
2024年11月18日 06:55
ExcelのCopilotでは、日付の処理もできることを以前に紹介しました。日付から「年」だけを取り出したり、○半期を求めたりなど、プロンプトだけで処理できるのが便利です。
ご想像の通り、もちろん時刻の処理も可能です。以下は会議の出席状況のログをイメージしたデータです。例えば、会議の参加時間を「○分」として取り出す場合、どのように作業するでしょうか?
簡単な方法としては、退出時間から参加時間を引いて、セルの表示形式を指定します。関数を利用して時刻の差を求めたうえで表示形式を整えてもいいですね。特に難しい作業ではありませんが、ひと手間かかります。
Copilotに依頼すれば、列の挿入と計算が同時に済みます。なお、「○月○日午後○時」のように文字列で入力されていた場合にも対応可能です。
さらにデータとして整えるために、社員IDに紐付く社員の名前を挿入したい場合は? 列を挿入して、VLOOKUP/XLOOKUP関数を利用した数式を入力しますよね。この作業もCopilotに任せてみましょう。
2つの日時の差を求めて「○分」の形式に整える
処理の内容をプロンプトに記述するだけですが、意図通りに処理してもらうために具体的に指示するようにしましょう。ここでは、以下のように入力しました。なお、プロンプトを工夫して「1.5h」のような形式に整えることも可能です。
D列からC列の時刻を引いて、参加時間を求めてください。「○分」の形式に整えて右端に列を追加してください
VLOOKUP / XLOOKUP関数の数式をCopilotに書いてもらう
今度は、社員IDに対応する氏名を探して、[社員ID]列の右側に挿入してもらいます。ここでは「社員テーブル」という名前のテーブルで社員IDと氏名を管理しています。手作業の場合は、列を挿入して「=XLOOKUP([@社員ID],社員テーブル[社員ID],社員テーブル[氏名])」のような数式を入力することになりますが、Copilotなら以下のようなプロンプトで一発です。
このファイルに含まれる社員テーブルから社員IDに対応する氏名を探して、B列の右側に[氏名]列を挿入してください
上記のプロンプトから生成された数式は、XLOOKUP関数を使っていますが、「VLOOKUP関数を使って」などと指示すると「=VLOOKUP([@社員ID],社員テーブル[[社員ID]:[氏名]],2,FALSE)」のような数式で処理してくくれます。意図通りの数式を生成してもらいたい場合は、関数名を指定するといいでしょう。