はじめに:現場のExcelシートをそのままAI駆動化する
多くの企業において、顧客アンケート、問い合わせ履歴、商品カタログなどのデータはExcel(.xlsx)やCSVで管理されています。
Python環境のインストールやサーバー構築を行わなくても、Excelの標準機能である「Power Query(パワークエリ)」のカスタム関数を使用すれば、シート内の数千行のデータを直接LLM API(GroqやGemini)に送信し、自動分類・要約・感情分析を実行できます。
1. Power Query M言語によるAPI呼び出し関数の作成手順
- Excelの「データ」タブ →「データの取得」→「その他のデータソースから」→「空のクエリ」を選択。
- 「詳細エディター」を開き、以下のM言語コードを貼り付ける。
M言語カスタム関数コード
(inputText as text) =>
let
// Groq APIエンドポイント(Llama 3.3 70B)
url = "https://api.groq.com/openai/v1/chat/completions",
// JSONボディの構築
body = Json.FromValue([
model = "llama-3.3-70b-versatile",
messages = {
[
role = "system",
content = "テキストの問い合わせ内容を「契約変更」「不具合報告」「料金相談」「その他」の4つのいずれか1単語のみで分類してください。"
],
[
role = "user",
content = inputText
]
},
temperature = 0.1
]),
// HTTP POSTリクエストの実行
response = Web.Contents(url, [
Headers = [
#"Authorization" = "Bearer YOUR_GROQ_API_KEY",
#"Content-Type" = "application/json"
],
Content = body
]),
// レスポンスJSONのパース
jsonResponse = Json.Document(response),
classifiedResult = jsonResponse[choices]{0}[message][content]
in
classifiedResult
2. シートへの適用と注意点
- 関数に
ClassifyInquiryと名前を付けて保存。 - 対象のデータテーブルで「カスタム列の追加」を選択し、
= ClassifyInquiry([問い合わせ本文])を呼び出す。 - 数百〜数千行のデータが自動的に分類され、新しい列として追加されます。
非エンジニア部門でも即座に導入でき、日々の手動仕分け作業をゼロにする強力な業務ハックです。