2026-06-19 検証済み

数式を使ってExcelで翻訳する方法(検証済みの手法)

数式の中で動く翻訳——列に沿ってコピーしたり、他の関数と組み合わせたり、データの変更に合わせて更新できるもの——が必要なら、Excelで実現できます。最適な方法はお使いのバージョンによって異なるため、本ガイドではまず推奨されるMicrosoft 365の手法を取り上げ、その後で旧バージョン向けの回避策と、それを多くのユーザーに推奨しない理由を説明します。

結論

Microsoft 365では、TRANSLATE関数を使用し、複数言語が混在するデータには必要に応じてDETECTLANGUAGEを組み合わせます。旧バージョンのExcel向けにはWEBSERVICEを使った回避策もありますが、不安定でWindows専用、かつ公式の翻訳手法ではないため、上級者向けとして紹介するにとどめ、ほとんどの方には推奨しません。

これらの数式手法を検証した方法

英語、スペイン語、フランス語、ドイツ語、日本語、中国語の96行からなるサンプルブックで数式ベースの翻訳を検証し、単一セル、列全体、自動検出、長文での挙動を確認しました。

検証環境

Excel for Mac 16.110 (26061317)、Microsoft 365サブスクリプション、macOS、検証日 2026-06-19。

Excelの数式でテキストを翻訳できる?

できます。数式ベースの方法は2つあります:

  1. TRANSLATE関数(任意でDETECTLANGUAGEと併用)。Microsoft 365に組み込まれており、Microsoftの翻訳サービスを呼び出します。これが推奨されるアプローチです。
  2. WEBSERVICE + FILTERXMLの回避策。TRANSLATEが使えない旧来の買い切り版(2019、2021、およびそれ以前)向けです。これは実際にデメリットのある上級者向けの回避策です。

どちらも翻訳が外部サービスで行われるため、インターネット接続が必要です。お使いのバージョンに合った方法を選び、2つ目の方法については警告も必ずお読みください。

推奨:TRANSLATE関数(Microsoft 365)

Microsoft 365をお使いなら、これが断然最も簡単で信頼できる方法です。構文は次のとおりです:

=TRANSLATE(text, [source_language], [target_language])

A2の英語をスペイン語に翻訳する動作例:

=TRANSLATE(A2, "en", "es")

ソース言語を自動検出するには、中央の引数を空にします(カンマは両方とも残します):

=TRANSLATE(A2, , "es")

これは本物の数式なので、列に沿ってコピーすれば各行がそれぞれのテキストを翻訳します。言語コードは引用符で囲んだコードです:"en""es""fr""de" など。検証で判明した注意点が一つあります。中国語の "zh" は当社のExcel for Macの検証で#VALUE!を返しましたが、"zh-Hans" またはソースを空欄にすると機能しました——そのため、ある言語でエラーが出る場合は自動検出を試してください。

最適な用途: セルや列を翻訳するMicrosoft 365ユーザー。

制限: Microsoft 365とインターネットが必要です。サービス依存のため、対応言語が変わる可能性があり、大量の処理は制限される場合があります。

複数言語が混在する列には:DETECTLANGUAGEを追加

1つの列に複数の言語が含まれる場合、自動検出は便利ですが、必ずしも検証しやすいとは限りません。DETECTLANGUAGE関数を使えば、翻訳する前にExcelがどの言語を検出したかを確認できます:

=DETECTLANGUAGE(A2)

その後、自動検出を使って目的の言語に翻訳できます:

=TRANSLATE(A2, , "en")

どちらも公式のMicrosoft 365関数なので、この組み合わせはサードパーティの回避策よりも信頼性が高くなります。

注意点: 当社の検証では、DETECTLANGUAGEは単語1つだけの表ヘッダーでも信頼でき、スペイン語、日本語、中国語のエントリを正しく判別しました。想定しておくべき制限が2つあります。複数言語が混在するセルは支配的な1つの言語として報告される点と、非常に長いセル(当社の検証では約7,000文字)はTRANSLATEと同様に#VALUE!を返した点です。

上級者向け(非推奨):WEBSERVICE + FILTERXML

この回避策は不安定でWindows専用、かつ非公式のエンドポイントに依存します。網羅性のために記載しますが、ほとんどのユーザーには推奨しません——特に業務や機密データには使用しないでください。

旧バージョンのExcelにはTRANSLATEはありませんが、WEBSERVICE(URLからデータを取得する)とFILTERXML(応答から値を抽出する)はあります。理論上はこれらを組み合わせてオンライン翻訳エンドポイントを呼び出し、翻訳されたテキストを取り出すことができます。多くのSEO記事ではこれをスマートな技として紹介していますが、実際にはリスクを伴うため、上級者向けかつほとんどのユーザーには非推奨として掲載します。

基本的な考え方:

  1. WEBSERVICE がテキストと言語ペアを翻訳URLに送信し、生の応答を取得します。
  2. FILTERXML がその応答を解析し、翻訳された文字列だけを返します。

ほとんどの方に推奨しない理由:

  • これはExcel公式の翻訳手法ではありません。 フォーマットが変わったり消滅したりして数式が壊れる可能性のある、サードパーティまたは非公式のエンドポイントに依存しています。
  • Windows専用です。 Microsoftのドキュメントによると、WEBSERVICEはWindowsの機能に依存しており、Macの関数ギャラリーに表示される場合でもMacでは結果を返しません。また、Excel 2013以降でのみ利用可能です。
  • 機密データには不向きです。 社内ファイル、顧客データ、または非公開のコンテンツを非公式のエンドポイント経由で送信することは、プライバシー上のリスクです。
  • 制限に達します。 WEBSERVICEは、結果がセルの上限(32,767文字)を超えるか、URLが2,048文字を超える場合に#VALUE!エラーを返します。また、無料のエンドポイントはリクエストにレート制限をかけることが多いです。

旧バージョンのExcelをお使いで、たまにしか翻訳しないのであれば、個人的かつ非機密の用途には「十分」かもしれません。それを超える用途には、Microsoft 365のTRANSLATE、Google SheetsのGOOGLETRANSLATE、Power Query、または専用の翻訳ツールといった、より信頼できる選択肢があります。

最適な用途: 旧バージョンのWindows版Excelでのたまの個人利用、非機密のテキストのみ。

制限: 不安定でWindows専用、非公式であり、機密データにはプライバシー上のリスクがあります。

ステップバイステップ:翻訳数式の作り方

推奨されるTRANSLATE関数を使用します:

  1. 翻訳結果を表示したいセルをクリックします。
  2. =TRANSLATE( と入力します。
  3. ソーステキストが入っているセル(例:A2)をクリックします。
  4. カンマを入力し、続けてソース言語コードを引用符で囲んで入力します——または自動検出させるには空欄のままにします。
  5. カンマを入力し、続けてターゲット言語コードを引用符で囲んで入力します(例:"es")。
  6. かっこを閉じてEnterキーを押します。

セルに翻訳されたテキストが表示され、ソースが変更されると再計算されます。

数式を列に沿ってコピーする

  1. 出力列の最初の行(例:A2を参照するB2)に数式を入力します。
  2. そのセルを選択します。
  3. フィルハンドル(セルの右下隅にある小さな四角)をダブルクリックするか、対象範囲まで下方向にドラッグします。

Excelが各行に数式をコピーし、参照を調整するので、すべての行がそれぞれのエントリを翻訳します。

数式ベースの翻訳の制限

  • インターネットが必要。 どちらの方法もオンラインサービスを呼び出します。
  • 機械翻訳の品質。 日常的なテキストには十分ですが、法律、医療、または微妙なニュアンスを含むコンテンツには、人によるレビューなしでは信頼できません。
  • レート制限とクォータ。 1セッションで大量のデータを処理すると、スロットリングや無言での失敗が発生する可能性があります。
  • 書式は対象外。 数式が翻訳するのはプレーンテキストのみで、グラフ、画像、セルの書式は対象外です。

個々のセルではなくファイル全体を翻訳する必要がある場合、数式は適切なツールではありません。

そのケースについては、Excelファイル全体を英語に翻訳する方法のガイドをご覧ください。

よくある質問

アドインなしでExcelで翻訳できますか?

はい。Microsoft 365ユーザーには、組み込みのTRANSLATE関数とDETECTLANGUAGE関数があります。旧バージョンではWEBSERVICEの回避策を試すことができますが、これは非公式でWindows専用です。どちらもアドインは不要ですが、両方ともインターネットが必要です。

TRANSLATEの数式はExcel 2019や2021で動作しますか?

いいえ。TRANSLATEにはMicrosoft 365が必要です。2019や2021ではWEBSERVICEの回避策が必要になりますが、これはほとんどのユーザーには推奨しません。

WEBSERVICEの翻訳テクニックは業務ファイルに使っても安全ですか?

あまり安全ではありません。テキストを非公式のエンドポイント経由で送るため、社内データや顧客データにとってはプライバシー上の懸念があり、予告なく動作しなくなることもあります。代わりに公式の方法を使用してください。

元のテキストを変更したら数式は更新されますか?

はい。Excelの他の数式と同様に、オンラインである限り、ソースセルが変更されると再計算されます。

大きなリストを翻訳すると一部のセルがエラーになるのはなぜですか?

翻訳サービスはリクエストにレート制限をかけています。大量のバッチは上限に達することがあり、一部のセルが失敗する原因になります。作業を小さなまとまりに分割すると、たいてい解決します。

出典と更新情報

最終検証日: 2026-06-19

検証環境: Excel for Mac 16.110 (26061317)、Microsoft 365サブスクリプション、macOS、96行の多言語サンプル。

主な参考資料

Excelの翻訳機能や利用要件が変更された場合、本ガイドを更新します。

セルだけでなくファイル全体を翻訳したい?

数式は不要です。Excelファイルをアップロードすれば、レイアウト、数式、書式を保持したまま翻訳されたコピーが手に入ります。

Excelファイルを翻訳する