<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>GOOGLETRANSLATE &#8211; biz-tactics</title>
	<atom:link href="https://mashukabu.com/tag/googletranslate/feed/" rel="self" type="application/rss+xml" />
	<link>https://mashukabu.com</link>
	<description></description>
	<lastBuildDate>Thu, 28 May 2026 01:30:47 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=7.0</generator>

<image>
	<url>https://mashukabu.com/wp-content/uploads/2022/04/cropped-site-icon-32x32.png</url>
	<title>GOOGLETRANSLATE &#8211; biz-tactics</title>
	<link>https://mashukabu.com</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>ExcelのTRANSLATE関数の使い方｜自動翻訳を関数1つで完結させる完全ガイド</title>
		<link>https://mashukabu.com/excel-function-howto-use-translate/</link>
					<comments>https://mashukabu.com/excel-function-howto-use-translate/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sat, 04 Apr 2026 15:38:01 +0000</pubDate>
				<category><![CDATA[Excel関数]]></category>
		<category><![CDATA[DETECTLANGUAGE関数]]></category>
		<category><![CDATA[Excel]]></category>
		<category><![CDATA[GOOGLETRANSLATE]]></category>
		<category><![CDATA[Microsoft 365]]></category>
		<category><![CDATA[TRANSLATE関数]]></category>
		<category><![CDATA[翻訳]]></category>
		<category><![CDATA[言語コード]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=5817</guid>

					<description><![CDATA[ExcelのTRANSLATE関数の使い方を初心者向けに解説。基本構文・133言語コードの指定方法、DETECTLANGUAGE関数との組み合わせ、エラー4種の原因と対処法、海外顧客リストや商品カタログ多言語化など実務ユースケース6選、GoogleスプレッドシートのGOOGLETRANSLATEとの徹底比較、料金やAPI制限まで完全解説します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">海外のクライアントから届いた英語の資料、中国語のサプライヤー情報、韓国語の問い合わせメール。Excelで開いたデータを「ちょっと日本語で確認したい」と思ったこと、ありますよね。</p>



<p class="wp-block-paragraph">これまではGoogle翻訳のページを開いて、セルの内容をコピー＆ペーストし、結果をまた貼り戻す…という往復作業が必要でした。10行ならまだしも、数百行のデータベースだと気が遠くなります。</p>



<p class="wp-block-paragraph">そんな手間を一気に解決するのがTRANSLATE関数です。セルに数式を1つ入れるだけで、テキストを自動翻訳できます。SUM関数で合計を出すのと同じ感覚で、133言語の翻訳が完了します。</p>



<p class="wp-block-paragraph">この記事では、ExcelのTRANSLATE関数の使い方を基本構文から実務での応用例、エラー対処法、GoogleスプレッドシートのGOOGLETRANSLATE関数との違いまで一気に整理します。読み終わるころには、翻訳サイトとExcelの往復から解放されるはずです。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-1" checked><label class="toc-title" for="toc-checkbox-1">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">ExcelのTRANSLATE関数とは？</a><ol><li><a href="#toc2" tabindex="0">どんなときに使う関数か</a></li><li><a href="#toc3" tabindex="0">利用条件（Microsoft 365・インターネット接続）</a></li><li><a href="#toc4" tabindex="0">料金やAPIクォータについて</a></li></ol></li><li><a href="#toc5" tabindex="0">TRANSLATE関数の構文と引数</a><ol><li><a href="#toc6" tabindex="0">基本構文</a></li><li><a href="#toc7" tabindex="0">第1引数：翻訳したいテキスト</a></li><li><a href="#toc8" tabindex="0">第2引数：翻訳元の言語コード</a></li><li><a href="#toc9" tabindex="0">第3引数：翻訳先の言語コード</a></li><li><a href="#toc10" tabindex="0">よく使う言語コード一覧</a></li></ol></li><li><a href="#toc11" tabindex="0">Excel TRANSLATE関数の基本的な使い方</a><ol><li><a href="#toc12" tabindex="0">英語を日本語に翻訳する</a></li><li><a href="#toc13" tabindex="0">日本語を英語に翻訳する</a></li><li><a href="#toc14" tabindex="0">言語を自動検出して翻訳する</a></li></ol></li><li><a href="#toc15" tabindex="0">実践的な使い方・応用例</a><ol><li><a href="#toc16" tabindex="0">海外顧客リストを日本語に変換する</a></li><li><a href="#toc17" tabindex="0">商品カタログを多言語に展開する</a></li><li><a href="#toc18" tabindex="0">問い合わせメールをまとめて翻訳する</a></li><li><a href="#toc19" tabindex="0">DETECTLANGUAGE関数と組み合わせる</a></li><li><a href="#toc20" tabindex="0">IF関数で翻訳の有無を制御する</a></li><li><a href="#toc21" tabindex="0">TEXTJOIN関数で複数セルを連結して翻訳する</a></li><li><a href="#toc22" tabindex="0">FILTER関数で特定言語の行だけ抽出してから翻訳する</a></li><li><a href="#toc23" tabindex="0">LET関数で再利用できる翻訳パターンを定義する</a></li></ol></li><li><a href="#toc24" tabindex="0">UNIQUE+XLOOKUPで翻訳コストを削減する</a><ol><li><a href="#toc25" tabindex="0">ユニーク値だけを翻訳する仕組み</a></li><li><a href="#toc26" tabindex="0">XLOOKUPで元データに差し込む</a></li></ol></li><li><a href="#toc27" tabindex="0">ドロップダウンで言語を切り替えるレポートを作る</a></li><li><a href="#toc28" tabindex="0">よくあるエラーと対処法</a><ol><li><a href="#toc29" tabindex="0">#VALUE! エラー</a></li><li><a href="#toc30" tabindex="0">#CONNECT! エラー</a></li><li><a href="#toc31" tabindex="0">Request Throttled エラー</a></li><li><a href="#toc32" tabindex="0">Invalid Language エラー</a></li></ol></li><li><a href="#toc33" tabindex="0">GoogleスプレッドシートのGOOGLETRANSLATE関数との違い</a><ol><li><a href="#toc34" tabindex="0">使い分けの目安</a></li><li><a href="#toc35" tabindex="0">翻訳精度を比較するときのコツ</a></li></ol></li><li><a href="#toc36" tabindex="0">FAQ｜TRANSLATE関数のよくある質問</a><ol><li><a href="#toc37" tabindex="0">Q1. Excel 2021やExcel 2019でTRANSLATE関数は使えますか？</a></li><li><a href="#toc38" tabindex="0">Q2. オフラインでも翻訳できますか？</a></li><li><a href="#toc39" tabindex="0">Q3. 翻訳精度はどれくらい信頼できますか？</a></li><li><a href="#toc40" tabindex="0">Q4. 一度に何セルまで翻訳できますか？</a></li><li><a href="#toc41" tabindex="0">Q5. 翻訳結果を値として固定保存することはできますか？</a></li><li><a href="#toc42" tabindex="0">Q6. APIキーやAzureのアカウントは必要ですか？</a></li><li><a href="#toc43" tabindex="0">Q7. プロキシ環境やVPN下で使う場合の注意点は？</a></li><li><a href="#toc44" tabindex="0">Q8. 翻訳データはMicrosoftに保存されますか？</a></li></ol></li><li><a href="#toc45" tabindex="0">まとめ</a><ol><li><a href="#toc46" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">ExcelのTRANSLATE関数とは？</span></h2>



<p class="wp-block-paragraph">TRANSLATE関数は、<strong>セル内のテキストを指定した言語に自動翻訳するExcelの関数</strong>です。読み方は「トランスレート」で、英語の「翻訳する」がそのまま関数名になっています。</p>



<p class="wp-block-paragraph">裏側ではMicrosoft Translation Servicesという翻訳エンジンが動いています。Microsoft社が長年運営している商用レベルの翻訳サービスで、Microsoft TeamsやOutlookの翻訳機能と同じエンジンです。133以上の言語に対応しており、ビジネス文書を翻訳しても十分に実用的な品質を保ちます。</p>



<p class="wp-block-paragraph">TRANSLATE関数は2024年12月にMicrosoft 365向けに追加された比較的新しい関数です。従来のExcelにも「校閲」タブの翻訳機能はありましたが、セルの数式として扱えるようになったのはこのTRANSLATE関数が初めてです。</p>



<p class="wp-block-paragraph">数式として扱えると何が便利かというと、<strong>他のセルの値を参照したり、関数を入れ子にしたり、オートフィルで一括処理したり</strong>できるところです。手作業では1セルずつしか翻訳できなかったものが、Excelの計算機能と組み合わさることで一気にデータ処理として活用できるようになりました。</p>



<h3 class="wp-block-heading"><span id="toc2">どんなときに使う関数か</span></h3>



<p class="wp-block-paragraph">TRANSLATE関数は次のような場面で活躍します。</p>



<ul class="wp-block-list"><li>海外取引先から届いた顧客リストや住所データを日本語に変換したいとき</li><li>商品名・商品説明・キャッチコピーを多言語に展開したいとき</li><li>外国語のメール本文やコメント、レビューを素早く理解したいとき</li><li>大量のテキストデータをまとめて翻訳して、社内共有用に整えたいとき</li><li>IF関数やFILTER関数と組み合わせて、条件に応じた多言語表示を作りたいとき</li><li>インバウンド対応の予約情報や問い合わせ管理表を多言語化したいとき</li></ul>



<p class="wp-block-paragraph">セルに数式を入れるだけなので、翻訳サイトとExcelを行き来する必要がありません。マウス操作も最低限で済みますよ。</p>



<h3 class="wp-block-heading"><span id="toc3">利用条件（Microsoft 365・インターネット接続）</span></h3>



<p class="wp-block-paragraph">TRANSLATE関数を使うには2つの条件があります。</p>



<ul class="wp-block-list"><li><strong>Microsoft 365のサブスクリプション</strong>が必要（Personal / Family / Business / Enterprise いずれでもOK）</li><li><strong>インターネット接続</strong>が必須（クラウド翻訳APIに接続するため）</li></ul>



<p class="wp-block-paragraph">Excel 2019やExcel 2021などの永続ライセンス版では使えません。Excel LTSC 2024（企業向けの永続版）も対象外です。Microsoft 365のWindows版・Mac版・Web版・モバイル版（iOS / Android）で利用できます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>TRANSLATE関数はクラウドの翻訳サービスに接続して動作します。オフライン環境では#CONNECT!エラーが返るので注意してください。社内ネットワークでファイアウォールがある場合は、Microsoft 365の翻訳エンドポイントへのアクセスを許可してもらう必要があります。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc4">料金やAPIクォータについて</span></h3>



<p class="wp-block-paragraph">TRANSLATE関数自体に追加課金はありません。Microsoft 365のサブスクリプション料金に含まれています。</p>



<p class="wp-block-paragraph">ただし、<strong>1日あたりの翻訳量にクォータ（上限）</strong>が設けられています。具体的な文字数は公式に公開されていませんが、業務利用で問題になることはほとんどありません。短い文字列を数千件処理する分には十分な余裕があります。</p>



<p class="wp-block-paragraph">クォータを超えると後述の「Request Throttled」エラーが返ります。大量データを一気に処理する場合は、後述する分割処理のテクニックを使うと安全です。</p>



<h2 class="wp-block-heading"><span id="toc5">TRANSLATE関数の構文と引数</span></h2>



<h3 class="wp-block-heading"><span id="toc6">基本構文</span></h3>



<pre class="wp-block-code"><code>=TRANSLATE(テキスト, [翻訳元の言語コード], [翻訳先の言語コード])</code></pre>



<p class="wp-block-paragraph">カッコ内に翻訳したいテキストと言語コードを指定します。第2引数・第3引数は省略可能で、<code>[ ]</code>で囲まれている部分がオプション引数を表します。</p>



<h3 class="wp-block-heading"><span id="toc7">第1引数：翻訳したいテキスト</span></h3>



<p class="wp-block-paragraph">翻訳対象の文字列、またはテキストが入ったセル参照を指定します。</p>



<pre class="wp-block-code"><code>=TRANSLATE(&quot;Hello&quot;, &quot;en&quot;, &quot;ja&quot;)
=TRANSLATE(A1, &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">直接テキストを入力する場合はダブルクォーテーション<code>"</code>で囲みます。実務ではセル参照を使うのが一般的です。</p>



<p class="wp-block-paragraph">1回の翻訳で扱える文字数は<strong>最大3,000文字</strong>です。これを超えると#VALUE!エラーになります。長文を翻訳したい場合は、後述のテクニックで分割しましょう。</p>



<h3 class="wp-block-heading"><span id="toc8">第2引数：翻訳元の言語コード</span></h3>



<p class="wp-block-paragraph">翻訳元の言語をISO 639-1という国際規格の2文字コードで指定します。省略すると翻訳エンジンが自動検出します。</p>



<p class="wp-block-paragraph">英語から日本語に翻訳する場合と、言語を自動検出して日本語に翻訳する場合の書き方です。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A1, &quot;en&quot;, &quot;ja&quot;)
=TRANSLATE(A1,, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">引数を省略する場合、カンマは省略せずに残します（<code>,,</code>の部分）。引数の位置を保つためです。</p>



<p class="wp-block-paragraph">言語があらかじめわかっている場合はコードを指定しましょう。<strong>自動検出より翻訳精度が安定します</strong>。固有名詞や略語など、自動検出が誤判定しやすいテキストも、明示指定なら正しく扱えます。</p>



<h3 class="wp-block-heading"><span id="toc9">第3引数：翻訳先の言語コード</span></h3>



<p class="wp-block-paragraph">翻訳先の言語を同じくISO 639-1形式で指定します。省略するとExcelのシステム言語（日本語環境なら日本語）になります。</p>



<p class="wp-block-paragraph">第3引数だけを指定する場合と、英語からフランス語に翻訳する場合の書き方です。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A1, &quot;en&quot;)
=TRANSLATE(A1, &quot;en&quot;, &quot;fr&quot;)</code></pre>



<p class="wp-block-paragraph">第2引数を省略して第3引数だけ指定すると、「言語自動検出 → 指定言語」という最短記法になります。とりあえず日本語にしたい場面では <code>=TRANSLATE(A1,, "ja")</code> が便利です。</p>



<h3 class="wp-block-heading"><span id="toc10">よく使う言語コード一覧</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>言語</th><th>コード</th><th>言語</th><th>コード</th></tr></thead><tbody><tr><td>日本語</td><td>ja</td><td>フランス語</td><td>fr</td></tr><tr><td>英語</td><td>en</td><td>ドイツ語</td><td>de</td></tr><tr><td>中国語（簡体字）</td><td>zh-Hans</td><td>スペイン語</td><td>es</td></tr><tr><td>中国語（繁体字）</td><td>zh-Hant</td><td>ポルトガル語</td><td>pt</td></tr><tr><td>韓国語</td><td>ko</td><td>イタリア語</td><td>it</td></tr><tr><td>アラビア語</td><td>ar</td><td>ロシア語</td><td>ru</td></tr><tr><td>ベトナム語</td><td>vi</td><td>タイ語</td><td>th</td></tr><tr><td>インドネシア語</td><td>id</td><td>オランダ語</td><td>nl</td></tr><tr><td>ヒンディー語</td><td>hi</td><td>トルコ語</td><td>tr</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>中国語の言語コードは「zh-Hans」（簡体字）と「zh-Hant」（繁体字）で分かれています。Googleスプレッドシートの「zh-CN」「zh-TW」とは異なるので注意してくださいね。間違えると「Invalid Language」エラーが返ります。</p></blockquote>



<p class="wp-block-paragraph">133言語の完全リストはMicrosoft公式の<a href="https://learn.microsoft.com/azure/ai-services/translator/language-support">Translatorサポート言語ページ</a>で確認できます。マイナー言語や地域固有の方言コードもサポートされています。</p>



<h2 class="wp-block-heading"><span id="toc11">Excel TRANSLATE関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認しましょう。3つのパターンを押さえれば、ほとんどの用途に対応できます。</p>



<h3 class="wp-block-heading"><span id="toc12">英語を日本語に翻訳する</span></h3>



<p class="wp-block-paragraph">もっとも多い使い方です。A列の英語テキストをB列で日本語にします。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A2, &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">A2に「Thank you for your inquiry」と入っていれば、「お問い合わせありがとうございます」のように返ります。数式を下方向にコピー（オートフィル）すれば、複数行をまとめて翻訳できますよ。</p>



<p class="wp-block-paragraph">英語のビジネスメールやレポートを日本語化したいときは、このパターンを覚えておけば十分です。</p>



<h3 class="wp-block-heading"><span id="toc13">日本語を英語に翻訳する</span></h3>



<p class="wp-block-paragraph">海外向けに日本語テキストを英訳するケースです。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A2, &quot;ja&quot;, &quot;en&quot;)</code></pre>



<p class="wp-block-paragraph">A2に「本日はお忙しい中ありがとうございます」と入っていれば、英語に翻訳されます。社外向けの英文メールの下書き作成や、海外向けプレゼン資料のドラフト化に使えます。</p>



<p class="wp-block-paragraph">ただし機械翻訳の結果は必ず人の目で確認しましょう。敬語や慣用句のニュアンスが意図と違うことがあります。</p>



<h3 class="wp-block-heading"><span id="toc14">言語を自動検出して翻訳する</span></h3>



<p class="wp-block-paragraph">何語かわからないテキストを翻訳したいときは、第2引数を省略します。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A2,, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">翻訳エンジンが自動で言語を判別して日本語に変換してくれます。多言語が混在するデータ（海外の問い合わせメール一覧、SNSコメントなど）を扱うときに便利です。</p>



<p class="wp-block-paragraph">ただし、極端に短いテキスト（例：「OK」「Hi」など）や固有名詞だけのセルは、言語判定が外れることがあります。確実に翻訳したい場合は第2引数を明示しましょう。</p>



<h2 class="wp-block-heading"><span id="toc15">実践的な使い方・応用例</span></h2>



<p class="wp-block-paragraph">ここからは実務で役立つ6つのユースケースを紹介します。コピペで使える数式付きなので、自分のシートに合わせて使ってみてください。</p>



<h3 class="wp-block-heading"><span id="toc16">海外顧客リストを日本語に変換する</span></h3>



<p class="wp-block-paragraph">海外拠点から届いた顧客リストを日本語化する例です。</p>



<p class="wp-block-paragraph">A列に顧客の会社名や所在地が英語で入っているとします。B列に次の数式を入れて下方向にコピーしましょう。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A2, &quot;en&quot;, &quot;ja&quot;)</code></pre>



<figure class="wp-block-table"><table><thead><tr><th>A列（元データ）</th><th>B列（翻訳結果）</th></tr></thead><tbody><tr><td>Tokyo International Trading Co.</td><td>東京国際貿易株式会社</td></tr><tr><td>123 Main Street, New York</td><td>ニューヨーク、メインストリート123</td></tr><tr><td>Logistics and Supply Chain Dept.</td><td>物流・サプライチェーン部門</td></tr><tr><td>Senior Account Manager</td><td>シニア・アカウントマネージャー</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数十行あっても一括で翻訳できます。手作業でのコピー＆ペーストから解放されますよ。固有名詞は翻訳されないため、会社名や人名はそのまま英語表記で残ることが多いです。</p>



<h3 class="wp-block-heading"><span id="toc17">商品カタログを多言語に展開する</span></h3>



<p class="wp-block-paragraph">1つの商品説明を複数の言語に翻訳する例です。海外ECサイトの商品ページや、訪日インバウンド向けのメニュー作成に役立ちます。</p>



<p class="wp-block-paragraph">A列に日本語の商品説明が入っているとします。B列を英語、C列を中国語（簡体字）、D列を韓国語にします。</p>



<p class="wp-block-paragraph">B列（英語）の数式です。</p>



<pre class="wp-block-code"><code>=TRANSLATE($A2, &quot;ja&quot;, &quot;en&quot;)</code></pre>



<p class="wp-block-paragraph">C列（中国語・簡体字）の数式です。</p>



<pre class="wp-block-code"><code>=TRANSLATE($A2, &quot;ja&quot;, &quot;zh-Hans&quot;)</code></pre>



<p class="wp-block-paragraph">D列（韓国語）の数式です。</p>



<pre class="wp-block-code"><code>=TRANSLATE($A2, &quot;ja&quot;, &quot;ko&quot;)</code></pre>



<p class="wp-block-paragraph">A列の前に<code>$</code>を付けて絶対参照にしておくと、右方向にコピーしても参照がずれません。言語コードを変えるだけで多言語展開が完了します。カタログや製品データベースの国際化に活用してみてください。</p>



<h3 class="wp-block-heading"><span id="toc18">問い合わせメールをまとめて翻訳する</span></h3>



<p class="wp-block-paragraph">海外からの問い合わせ内容をまとめて翻訳する例です。</p>



<p class="wp-block-paragraph">A列にメール本文が入っている場合、翻訳元の言語が統一されていないこともあります。その場合は自動検出が便利です。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A2,, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">英語、フランス語、スペイン語など、さまざまな言語が混在していても対応できます。サポート窓口の一次対応や、海外SNSのコメント分析に向いています。</p>



<p class="wp-block-paragraph">ただし、1セルあたり3,000文字の制限があります。長いメールは段落単位で分割して翻訳しましょう。</p>



<h3 class="wp-block-heading"><span id="toc19">DETECTLANGUAGE関数と組み合わせる</span></h3>



<p class="wp-block-paragraph">DETECTLANGUAGE関数は、テキストの言語を自動検出してISO言語コードを返す関数です。TRANSLATE関数と組み合わせると、より明示的に言語処理を制御できます。</p>



<pre class="wp-block-code"><code>=TRANSLATE(A2, DETECTLANGUAGE(A2), &quot;en&quot;)</code></pre>



<p class="wp-block-paragraph">DETECTLANGUAGE関数がA2の言語コード（例：<code>ja</code>）を返し、それをTRANSLATE関数の第2引数に渡します。自動検出を省略記法で書いた場合と動作は似ていますが、<strong>検出結果を別セルに表示して確認できる</strong>のがメリットです。</p>



<p class="wp-block-paragraph">B列で言語を検出し、C列で翻訳する書き方です。</p>



<pre class="wp-block-code"><code>=DETECTLANGUAGE(A2)</code></pre>



<pre class="wp-block-code"><code>=TRANSLATE(A2, B2, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">この書き方なら、元データが何語だったかを記録に残せます。多言語データの管理や、後から「このテキストはドイツ語だった」と振り返るときに役立ちますよ。</p>



<p class="wp-block-paragraph">なお、Googleスプレッドシートにも同名のDETECTLANGUAGE関数があります。スプレッドシート版の詳しい使い方は<a href="https://mashukabu.com/spreadsheet-detectlanguage-function/">スプレッドシートのDETECTLANGUAGE関数の使い方</a>を参考にしてください。</p>



<h3 class="wp-block-heading"><span id="toc20">IF関数で翻訳の有無を制御する</span></h3>



<p class="wp-block-paragraph">毎回全行を翻訳するとAPIのクォータを消費してしまいます。「特定のフラグが立っている行だけ翻訳する」という制御は、IF関数との組み合わせで実現できます。</p>



<p class="wp-block-paragraph">C列に「翻訳要否」フラグ（&#8221;yes&#8221; or 空欄）を入れ、D列で次の数式を組みます。</p>



<pre class="wp-block-code"><code>=IF(C2=&quot;yes&quot;, TRANSLATE(A2, &quot;en&quot;, &quot;ja&quot;), &quot;&quot;)</code></pre>



<p class="wp-block-paragraph">C2が「yes」のときだけ翻訳し、それ以外は空欄を返します。大量データを段階的に翻訳していくときや、一部の重要レコードだけ翻訳して確認したい場合に重宝します。</p>



<p class="wp-block-paragraph">IF関数の使い方をもう一度押さえたい方は<a href="https://mashukabu.com/excel-function-howto-use-if/">ExcelのIF関数の使い方｜複数条件のAND・ORや空白判定まで完全解説</a>も合わせてどうぞ。</p>



<h3 class="wp-block-heading"><span id="toc21">TEXTJOIN関数で複数セルを連結して翻訳する</span></h3>



<p class="wp-block-paragraph">3,000文字の制限を意識しつつ、複数のセルを連結して翻訳することもできます。タイトル・本文・補足が分かれているデータを、まとめて一文として翻訳したい場面で便利です。</p>



<pre class="wp-block-code"><code>=TRANSLATE(TEXTJOIN(&quot; &quot;, TRUE, A2:C2), &quot;ja&quot;, &quot;en&quot;)</code></pre>



<p class="wp-block-paragraph">A2〜C2の値を半角スペース区切りで連結し、その結果を英訳します。空白セルは無視されるので、未入力の列があっても余計なスペースが入りません。</p>



<p class="wp-block-paragraph">逆に、翻訳結果を分割して扱いたい場合はTEXTSPLIT関数と組み合わせる手もあります。データ整形と翻訳を1つの数式で完結できますよ。</p>



<h3 class="wp-block-heading"><span id="toc22">FILTER関数で特定言語の行だけ抽出してから翻訳する</span></h3>



<p class="wp-block-paragraph">データの中から特定の言語のレコードだけを抽出して翻訳したい場合は、FILTER関数との組み合わせが効果的です。</p>



<p class="wp-block-paragraph">たとえばA列に多言語のテキスト、B列にDETECTLANGUAGE関数で検出した言語コードが入っているとします。「英語の行だけ抽出して日本語に翻訳」したい場合の数式です。</p>



<pre class="wp-block-code"><code>=TRANSLATE(FILTER(A2:A100, B2:B100=&quot;en&quot;), &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">スピル機能（動的配列）により、抽出された行が自動で展開されて翻訳されます。Microsoft 365のExcelならではの書き方で、フィルタ→コピー→翻訳という3ステップが1セルで完結します。</p>



<p class="wp-block-paragraph">ただし、スピル範囲が広すぎるとパフォーマンスが落ちることがあります。数百〜数千件規模ならExcelの動作が遅くなることもあるので、必要に応じて作業列に分割しましょう。</p>



<h3 class="wp-block-heading"><span id="toc23">LET関数で再利用できる翻訳パターンを定義する</span></h3>



<p class="wp-block-paragraph">LET関数を使うと、翻訳元・翻訳先の言語コードを変数として定義し、可読性の高い数式に整理できます。</p>



<pre class="wp-block-code"><code>=LET(text, A2, src, &quot;en&quot;, dst, &quot;ja&quot;, TRANSLATE(text, src, dst))</code></pre>



<p class="wp-block-paragraph">一見冗長に見えますが、長い数式の中で同じセル参照や言語コードを何度も使う場合に効果を発揮します。後から翻訳元の言語を変更したいときも、<code>src</code>の右側だけを書き換えればOKです。</p>



<p class="wp-block-paragraph">数式のメンテナンス性を上げたいケースや、テンプレートとしてシートを配布する場合に向いています。</p>



<h2 class="wp-block-heading"><span id="toc24">UNIQUE+XLOOKUPで翻訳コストを削減する</span></h2>



<p class="wp-block-paragraph">数百行のデータに同じ商品名や定型句が何度も登場する、というケースは実務でよくあります。たとえば取引先名が500行のうち実は20種類しかない、という状況です。</p>



<p class="wp-block-paragraph">このとき全セルにTRANSLATE関数を入れると、同じテキストを何度も翻訳することになります。日次クォータを無駄に消費し、Request Throttledエラーの原因にもなります。</p>



<p class="wp-block-paragraph">そこで効くのが、<strong>ユニークな値だけを一度だけ翻訳して、あとはXLOOKUPで参照する</strong>という設計です。翻訳のAPIコール数を一気に減らせます。</p>



<h3 class="wp-block-heading"><span id="toc25">ユニーク値だけを翻訳する仕組み</span></h3>



<p class="wp-block-paragraph">手順はシンプルです。UNIQUE関数で重複を除いた一覧を作り、その隣にTRANSLATE関数を置いて翻訳テーブルを完成させます。</p>



<p class="wp-block-paragraph">まず作業用のシート（または離れた列）に、翻訳元のユニークリストを作ります。元データがA列にあるとして、D列に次の数式を入れます。</p>



<pre class="wp-block-code"><code>=UNIQUE(A2:A500)</code></pre>



<p class="wp-block-paragraph">D列に重複のない一覧がスピル（自動展開）されます。続いてE列で、そのユニークリストだけを翻訳します。</p>



<pre class="wp-block-code"><code>=TRANSLATE(D2#, &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph"><code>D2#</code>の<code>#</code>はスピル範囲全体を指す記号です。UNIQUEで展開された範囲がそのまま翻訳されるので、E列に「翻訳元→翻訳先」の対応表ができあがります。これが翻訳テーブルです。</p>



<p class="wp-block-paragraph">20種類しかなければ、翻訳されるのは20回だけ。500回ではありません。</p>



<h3 class="wp-block-heading"><span id="toc26">XLOOKUPで元データに差し込む</span></h3>



<p class="wp-block-paragraph">翻訳テーブルができたら、本来の500行にはXLOOKUPで結果を引いてくるだけです。B列に次の数式を入れて下方向にコピーします。</p>



<pre class="wp-block-code"><code>=XLOOKUP(A2, $D$2:$D$21, $E$2:$E$21)</code></pre>



<p class="wp-block-paragraph">A2の値を翻訳テーブルのD列から探し、対応するE列の訳文を返します。検索範囲は絶対参照（<code>$</code>付き）にしておくと、コピーしても参照がずれません。</p>



<p class="wp-block-paragraph">この構成にはもう1つメリットがあります。<strong>XLOOKUPはネットワークを使わない関数</strong>なので、翻訳テーブルさえ値として固定しておけば、オフラインでも参照が効きます。</p>



<p class="wp-block-paragraph">翻訳済みテーブルをコピーして「値の貼り付け」で固定すれば、訳文がそのまま見えます。Microsoft 365を持っていない相手にファイルを渡す場面でも安心です。クォータ節約とオフライン参照を同時に実現できる、実務向きのパターンです。</p>



<p class="wp-block-paragraph">XLOOKUPの基本をおさらいしたい方は<a href="https://mashukabu.com/excel-function-howto-use-xlookup/">ExcelのXLOOKUP関数の使い方｜VLOOKUPとの違い・エラー対処まで解説</a>も合わせてどうぞ。</p>



<h2 class="wp-block-heading"><span id="toc27">ドロップダウンで言語を切り替えるレポートを作る</span></h2>



<p class="wp-block-paragraph">「同じ表を、ボタン1つで英語にも中国語にも切り替えたい」というニーズに応えるのが、ドロップダウンと組み合わせたインタラクティブレポートです。閲覧する人が言語を選ぶだけで、表全体の表示言語が切り替わります。</p>



<p class="wp-block-paragraph">仕組みは、<strong>ドロップダウンで選んだ言語名を言語コードに変換し、それをTRANSLATE関数の第3引数に渡す</strong>だけです。</p>



<p class="wp-block-paragraph">まずB1セルにドロップダウンを作ります。B1を選択した状態で「データ」タブ →「データの入力規則」を開き、「入力値の種類」を「リスト」にして、元の値に次のように入力します。</p>



<pre class="wp-block-code"><code>日本語,英語,中国語(簡体字)</code></pre>



<p class="wp-block-paragraph">これでB1セルに「日本語／英語／中国語(簡体字)」を選べるドロップダウンが付きます。</p>



<p class="wp-block-paragraph">次にA列の翻訳対象テキストを、選んだ言語に翻訳します。C列に次の数式を入れて下方向にコピーしましょう。</p>



<pre class="wp-block-code"><code>=TRANSLATE($A2, &quot;ja&quot;, XLOOKUP(B$1, {&quot;日本語&quot;,&quot;英語&quot;,&quot;中国語(簡体字)&quot;}, {&quot;ja&quot;,&quot;en&quot;,&quot;zh-Hans&quot;}))</code></pre>



<p class="wp-block-paragraph">ポイントは第3引数のXLOOKUPです。B1で選んだ言語名（例：「英語」）を、その場で作った配列定数（<code>{...}</code>の部分）から探し、対応する言語コード（<code>en</code>）を返しています。</p>



<figure class="wp-block-table"><table><thead><tr><th>B1の選択</th><th>XLOOKUPが返すコード</th><th>C列の翻訳結果</th></tr></thead><tbody><tr><td>日本語</td><td>ja</td><td>日本語のまま</td></tr><tr><td>英語</td><td>en</td><td>英語に翻訳</td></tr><tr><td>中国語(簡体字)</td><td>zh-Hans</td><td>簡体字に翻訳</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">B1のドロップダウンを切り替えると、C列の翻訳がまるごと再計算されて表示言語が変わります。社内の多言語ダッシュボードや、訪日客向けの切替メニューを作るときに重宝します。</p>



<p class="wp-block-paragraph">対応言語を増やしたいときは、配列定数を直接書くより、別シートに「言語名・言語コード」のマッピングテーブルを作っておくと管理が楽になります。その場合はXLOOKUPの検索範囲をそのテーブルに向けるだけです。</p>



<pre class="wp-block-code"><code>=TRANSLATE($A2, &quot;ja&quot;, XLOOKUP(B$1, 言語マスタ!A:A, 言語マスタ!B:B))</code></pre>



<p class="wp-block-paragraph">言語を1行追加するだけで選択肢が増えるので、運用しながら拡張しやすい構成になります。</p>



<h2 class="wp-block-heading"><span id="toc28">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">TRANSLATE関数で表示されるエラーは大きく4種類です。それぞれ原因と対処法をまとめました。</p>



<h3 class="wp-block-heading"><span id="toc29">#VALUE! エラー</span></h3>



<p class="wp-block-paragraph"><strong>原因</strong>: テキストが3,000文字を超えている。またはテキスト以外の値（数値・論理値・配列など）を指定している。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: まず文字数を確認します。LEN関数で文字数を測り、3,000文字以内に収まるよう分割しましょう。</p>



<pre class="wp-block-code"><code>=LEN(A2)</code></pre>



<p class="wp-block-paragraph">数値を翻訳したい場合は、TEXT関数（数値を指定した書式の文字列に変換する関数）で文字列に変換してから渡します。</p>



<pre class="wp-block-code"><code>=TRANSLATE(TEXT(A2, &quot;0&quot;), &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">#VALUE!エラー全般の原因と対処法を整理したい方は<a href="https://mashukabu.com/excel-value-error/">ExcelのVALUEエラーの原因と直し方｜全パターン対応ガイド</a>もどうぞ。</p>



<h3 class="wp-block-heading"><span id="toc30">#CONNECT! エラー</span></h3>



<p class="wp-block-paragraph"><strong>原因</strong>: インターネットに接続されていない。またはネットワークが不安定。プロキシ・VPN・社内ファイアウォールで翻訳エンドポイントへのアクセスが遮断されている。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: まずネットワーク接続を確認してください。ブラウザでMicrosoft公式サイトが開けるかチェックすると早いです。VPN環境では接続がブロックされることもあります。接続を復旧したら、セルを再計算（<code>Ctrl + Alt + F9</code> / Macは<code>Cmd + Option + F9</code>）してみましょう。</p>



<p class="wp-block-paragraph">社内環境で恒常的に出る場合は、情報システム部門にMicrosoft 365の翻訳エンドポイント（<code>api.cognitive.microsofttranslator.com</code>など）への通信許可を依頼してください。</p>



<h3 class="wp-block-heading"><span id="toc31">Request Throttled エラー</span></h3>



<p class="wp-block-paragraph"><strong>原因</strong>: 日次の翻訳クォータを超過した。短時間に大量のリクエストを送りすぎた。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: 数分〜数時間おいてから再実行してください。大量のセルを一度に翻訳すると発生しやすくなります。<strong>翻訳対象を100件ずつに分割して少しずつ処理する</strong>のがおすすめです。</p>



<p class="wp-block-paragraph">オートフィルで一気に1000行翻訳するより、ステータス列で「翻訳済み」をフラグ管理しながら段階的に処理すると安定します。前述のIF関数との組み合わせが効きます。</p>



<h3 class="wp-block-heading"><span id="toc32">Invalid Language エラー</span></h3>



<p class="wp-block-paragraph"><strong>原因</strong>: サポートされていない言語コードを指定した。タイプミスや独自の表記を使った。</p>



<p class="wp-block-paragraph"><strong>対処法</strong>: 言語コードが正しいかMicrosoft公式リストで確認しましょう。よくある間違いとして、中国語で「zh」「zh-CN」「zh-TW」だけを指定するケースがあります。<strong>Excelでは「zh-Hans」または「zh-Hant」</strong>を使ってください。</p>



<p class="wp-block-paragraph">その他のミス例として、日本語で「jp」を指定する（正しくは「ja」）、フランス語で「fra」を指定する（正しくは「fr」）などがあります。基本は2文字コード、中国語など一部だけ「言語-地域」形式です。</p>



<figure class="wp-block-table"><table><thead><tr><th>エラー</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE!</td><td>3,000文字超過またはテキスト以外の値</td><td>文字数を削減。TEXT関数で変換</td></tr><tr><td>#CONNECT!</td><td>オフラインまたはネットワーク不安定</td><td>接続を確認して再計算</td></tr><tr><td>Request Throttled</td><td>日次クォータ超過</td><td>時間をおいて再実行・分割処理</td></tr><tr><td>Invalid Language</td><td>非対応の言語コード</td><td>正しいコードに修正</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">エラーが出てもコードを確認すればほとんど解決できますよ。</p>



<h2 class="wp-block-heading"><span id="toc33">GoogleスプレッドシートのGOOGLETRANSLATE関数との違い</span></h2>



<p class="wp-block-paragraph">Googleスプレッドシートには、同様の機能をもつGOOGLETRANSLATE関数があります。どちらを使うか迷ったときのために、6つの軸で比較します。</p>



<figure class="wp-block-table"><table><thead><tr><th>比較項目</th><th>Excel TRANSLATE</th><th>Sheets GOOGLETRANSLATE</th></tr></thead><tbody><tr><td>翻訳エンジン</td><td>Microsoft Translation Services</td><td>Google Translate API</td></tr><tr><td>対応環境</td><td>Microsoft 365（サブスクリプション）</td><td>Googleスプレッドシート（無料）</td></tr><tr><td>言語自動検出</td><td>第2引数を省略するだけ</td><td>&#8220;auto&#8221;を明示指定</td></tr><tr><td>中国語コード</td><td>zh-Hans / zh-Hant</td><td>zh-CN / zh-TW</td></tr><tr><td>1セルあたり上限</td><td>3,000文字</td><td>約2,000文字（実測ベース）</td></tr><tr><td>費用</td><td>Microsoft 365の契約が必要</td><td>無料で利用可能</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">大きな違いは<strong>利用環境と費用</strong>です。Microsoft 365を契約していればTRANSLATE関数が使えます。無料で翻訳したい場合はGoogleスプレッドシートのGOOGLETRANSLATE関数が選択肢になります。</p>



<p class="wp-block-paragraph">言語自動検出の書き方にも違いがあります。ExcelのTRANSLATE関数は引数を省略するだけです。一方、GOOGLETRANSLATEは&#8221;auto&#8221;を明示的に指定します。</p>



<pre class="wp-block-code"><code>// Excel
=TRANSLATE(A1,, &quot;ja&quot;)

// Google Sheets
=GOOGLETRANSLATE(A1, &quot;auto&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">翻訳精度はどちらも実用レベルです。ただし、翻訳エンジンが異なるため、同じテキストでも訳文が微妙に変わることがあります。ビジネス文書ならMicrosoft、口語やSNS的な短文ならGoogleが得意…という傾向は感じられますが、最終的には用途に合わせて試すのが確実です。</p>



<p class="wp-block-paragraph">スプレッドシート版の詳しい使い方は<a href="https://mashukabu.com/spreadsheet-googletranslate-function/">スプレッドシートのGOOGLETRANSLATE関数の使い方</a>を参考にしてみてください。</p>



<h3 class="wp-block-heading"><span id="toc34">使い分けの目安</span></h3>



<ul class="wp-block-list"><li><strong>TRANSLATE（Excel）を選ぶ</strong>: 既にMicrosoft 365を契約している／社内データをExcelで管理している／PowerPointやWordとの連携も視野に入れたい</li><li><strong>GOOGLETRANSLATE（Sheets）を選ぶ</strong>: 無料で済ませたい／Googleアカウントだけで運用したい／Looker StudioやBigQueryに繋ぎたい</li></ul>



<p class="wp-block-paragraph">両方使える環境なら、データの管理場所（Excel or Sheets）に合わせて選ぶのがシンプルです。データを移動してまで切り替えるメリットは多くありません。</p>



<h3 class="wp-block-heading"><span id="toc35">翻訳精度を比較するときのコツ</span></h3>



<p class="wp-block-paragraph">「結局どちらの翻訳が正確？」と気になる方は、同じテキストを両方の関数で翻訳して、人の目で比較するのが一番確実です。サンプルとして10〜20件のビジネス文書を用意し、それぞれを横並びの表にして見比べてみてください。</p>



<figure class="wp-block-table"><table><thead><tr><th>元文（日本語）</th><th>TRANSLATE結果</th><th>GOOGLETRANSLATE結果</th></tr></thead><tbody><tr><td>商品の在庫切れに関するお詫び</td><td>(Excel側の訳文)</td><td>(Sheets側の訳文)</td></tr><tr><td>来週の会議の議題について</td><td>(Excel側の訳文)</td><td>(Sheets側の訳文)</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">数値で評価したい場合は、Microsoft 365とGoogleスプレッドシートを並べて、それぞれの結果を社内で評価する仕組みを作るとよいです。文書のジャンル（メール／契約／マニュアル）ごとに得意・不得意が変わるので、ジャンル別に評価軸を設けるのが現実的でしょう。</p>



<h2 class="wp-block-heading"><span id="toc36">FAQ｜TRANSLATE関数のよくある質問</span></h2>



<h3 class="wp-block-heading"><span id="toc37">Q1. Excel 2021やExcel 2019でTRANSLATE関数は使えますか？</span></h3>



<p class="wp-block-paragraph">A. 使えません。TRANSLATE関数は<strong>Microsoft 365のサブスクリプション専用</strong>です。永続ライセンス版のExcel 2019・2021・LTSC 2024では対応していません。代替手段としては、「校閲」タブの翻訳機能（手動）か、Googleスプレッドシートに移してGOOGLETRANSLATE関数を使う方法があります。</p>



<h3 class="wp-block-heading"><span id="toc38">Q2. オフラインでも翻訳できますか？</span></h3>



<p class="wp-block-paragraph">A. できません。TRANSLATE関数はクラウド上のMicrosoft Translation Servicesにリクエストを送る仕組みのため、<strong>インターネット接続が必須</strong>です。オフラインで動作する翻訳機能が必要な場合は、「校閲」タブの翻訳機能（一部辞書はオフライン対応）か、専用の翻訳ソフトウェアを検討してください。</p>



<h3 class="wp-block-heading"><span id="toc39">Q3. 翻訳精度はどれくらい信頼できますか？</span></h3>



<p class="wp-block-paragraph">A. ビジネス文書やニュース記事など一般的なテキストなら<strong>実用レベル</strong>です。Microsoft Translation ServicesはMicrosoft TeamsやOutlookなどでも使われており、商用品質を維持しています。ただし、専門用語が多い契約書、業界固有の言い回し、敬語・慣用句のニュアンスなどは誤訳のリスクがあります。<strong>重要な文書は必ず人の目で最終確認</strong>しましょう。</p>



<h3 class="wp-block-heading"><span id="toc40">Q4. 一度に何セルまで翻訳できますか？</span></h3>



<p class="wp-block-paragraph">A. セル数に明確な上限はありませんが、<strong>日次クォータがある</strong>ため、数千セルを一気に処理するとRequest Throttledエラーが発生することがあります。実務的には100〜500セル単位で分割し、IF関数で「翻訳済みフラグ」を管理しながら段階的に処理するのがおすすめです。</p>



<h3 class="wp-block-heading"><span id="toc41">Q5. 翻訳結果を値として固定保存することはできますか？</span></h3>



<p class="wp-block-paragraph">A. はい、コピーして「値の貼り付け」をすればOKです。翻訳結果が入った範囲を選択 → <code>Ctrl + C</code> でコピー → 右クリック →「値の貼り付け」（または <code>Ctrl + Alt + V</code> → V → Enter）で、数式を消して値だけを残せます。<strong>ファイルを共有相手に送る前に値化しておくと、相手がMicrosoft 365を持っていなくても結果が見える</strong>メリットがあります。</p>



<h3 class="wp-block-heading"><span id="toc42">Q6. APIキーやAzureのアカウントは必要ですか？</span></h3>



<p class="wp-block-paragraph">A. 不要です。Microsoft 365の契約があれば、追加の設定なしでTRANSLATE関数を使えます。Azure Cognitive ServicesのTranslator APIを直接呼び出す場合はAPIキーが必要ですが、TRANSLATE関数はExcel側で認証・通信を自動処理してくれます。</p>



<h3 class="wp-block-heading"><span id="toc43">Q7. プロキシ環境やVPN下で使う場合の注意点は？</span></h3>



<p class="wp-block-paragraph">A. プロキシ・VPN・社内ファイアウォールで翻訳APIのエンドポイントが遮断されていると#CONNECT!エラーになります。情報システム部門にMicrosoft 365の翻訳エンドポイント（<code>api.cognitive.microsofttranslator.com</code> など）へのアクセス許可を依頼してください。会社のセキュリティポリシーによっては、社外通信を制限している場合があります。</p>



<h3 class="wp-block-heading"><span id="toc44">Q8. 翻訳データはMicrosoftに保存されますか？</span></h3>



<p class="wp-block-paragraph">A. 翻訳処理はMicrosoftのサーバー上で一時的に行われます。ただし、<strong>入力したテキストが永続的に保存されたり、AIモデルの学習（トレーニング）に使われたりすることはありません</strong>。Microsoftはこの点をサービス利用規約に明記しています。</p>



<p class="wp-block-paragraph">無料のMicrosoft Translatorウェブサービスとはプライバシー水準が異なります。TRANSLATE関数にはMicrosoft 365サブスクリプション利用者向けの基準が適用されます。</p>



<p class="wp-block-paragraph">とはいえ、テキストが社外（Microsoftのクラウド）に送信されること自体は事実です。<strong>個人情報や機密情報を含むデータを翻訳する場合は、自社の社内規定やコンプライアンスポリシーに従って判断</strong>してください。機密区分の高い情報は翻訳前にマスキングする、許可された情報のみ送信といった運用ルールを設けておくと安心です。</p>



<h2 class="wp-block-heading"><span id="toc45">まとめ</span></h2>



<p class="wp-block-paragraph">TRANSLATE関数は、Excelのセル上でテキストを自動翻訳できる関数です。これまで翻訳サイトとExcelの間で繰り返していたコピペ作業を、数式1つで置き換えられます。</p>



<p class="wp-block-paragraph">この記事のポイントを整理します。</p>



<ul class="wp-block-list"><li>構文は <code>=TRANSLATE(テキスト, 翻訳元言語, 翻訳先言語)</code>。第2・第3引数は省略可能</li><li>Microsoft 365のサブスクリプションとインターネット接続が必須</li><li>133以上の言語に対応。言語コードはISO 639-1形式（中国語のみ「zh-Hans」「zh-Hant」）</li><li>1回あたり3,000文字まで翻訳できる。長文は分割して処理</li><li>DETECTLANGUAGE関数・IF関数・TEXTJOIN関数などと組み合わせると多言語データの自動化が捗る</li><li>エラーは「文字数」「ネットワーク」「クォータ」「言語コード」の4観点で切り分ける</li><li>GoogleスプレッドシートのGOOGLETRANSLATE関数は無料で使える代替</li></ul>



<p class="wp-block-paragraph">まずは <code>=TRANSLATE("Hello", "en", "ja")</code> を空いているセルに入れて、動作を確認してみてください。翻訳サイトとの往復がなくなるだけで、海外データの扱いがぐっと速くなりますよ。</p>



<p class="wp-block-paragraph">数百行のリストもオートフィル一発で翻訳できるので、グローバル業務をExcelで回している方こそ、ぜひ使い倒してみてください。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc46">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-googletranslate-function/">スプレッドシートのGOOGLETRANSLATE関数の使い方</a></li><li><a href="https://mashukabu.com/spreadsheet-detectlanguage-function/">スプレッドシートのDETECTLANGUAGE関数の使い方</a></li><li><a href="https://mashukabu.com/excel-function-howto-use-if/">ExcelのIF関数の使い方｜複数条件のAND・ORや空白判定まで完全解説</a></li><li><a href="https://mashukabu.com/excel-value-error/">ExcelのVALUEエラーの原因と直し方｜全パターン対応ガイド</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/excel-function-howto-use-translate/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのGOOGLETRANSLATE関数の使い方｜テキスト翻訳</title>
		<link>https://mashukabu.com/spreadsheet-googletranslate-function/</link>
					<comments>https://mashukabu.com/spreadsheet-googletranslate-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 22 Mar 2026 01:12:46 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[GOOGLETRANSLATE]]></category>
		<category><![CDATA[Sheets独自]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[翻訳]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4979</guid>

					<description><![CDATA[GoogleスプレッドシートのGOOGLETRANSLATE関数の使い方を初心者向けに解説。テキスト翻訳の基本構文から、DETECTLANGUAGE関数との連携、一括翻訳の応用テクニック、よくあるエラーの対処法まで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">海外の取引先から届いたメールや、英語の資料をスプレッドシートで翻訳したいこと、ありますよね。</p>



<p class="wp-block-paragraph">いちいちGoogle翻訳のサイトを開いて貼り付けるのは手間がかかります。データが何十行もあると、とても追いつきません。</p>



<p class="wp-block-paragraph">そんなときに使えるのがGOOGLETRANSLATE関数です。セルに数式を入れるだけで、テキストをそのまま翻訳できます。</p>



<p class="wp-block-paragraph">この記事では、スプレッドシートのGOOGLETRANSLATE関数の基本から実務で役立つ活用パターンまでまとめて紹介します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">GOOGLETRANSLATE関数とは？</a></li><li><a href="#toc2" tabindex="0">GOOGLETRANSLATE関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">GOOGLETRANSLATE関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">英語を日本語に翻訳する</a></li><li><a href="#toc7" tabindex="0">セル参照で翻訳する</a></li><li><a href="#toc8" tabindex="0">ソース言語を自動検出する</a></li><li><a href="#toc9" tabindex="0">日本語を英語に翻訳する</a></li></ol></li><li><a href="#toc10" tabindex="0">GOOGLETRANSLATE関数の実践的な使い方・応用例</a><ol><li><a href="#toc11" tabindex="0">複数行のテキストを一括翻訳する</a></li><li><a href="#toc12" tabindex="0">DETECTLANGUAGE関数と組み合わせる</a></li><li><a href="#toc13" tabindex="0">翻訳先の言語をセルで切り替える</a></li><li><a href="#toc14" tabindex="0">ARRAYFORMULA関数で一括翻訳する</a></li><li><a href="#toc15" tabindex="0">翻訳結果を固定する（値の貼り付け）</a></li></ol></li><li><a href="#toc16" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc17" tabindex="0">Excelとの違い</a></li><li><a href="#toc18" tabindex="0">まとめ</a><ol><li><a href="#toc19" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">GOOGLETRANSLATE関数とは？</span></h2>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数は、<strong>セル内のテキストを指定した言語に翻訳する関数</strong>です。</p>



<p class="wp-block-paragraph">Google翻訳と同じ翻訳エンジンを使っています。スプレッドシート上で直接翻訳できるのが特徴です。</p>



<p class="wp-block-paragraph">Googleスプレッドシート独自の関数なので、Excelにはこの関数がありません。</p>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>セル内のテキストを別の言語に翻訳する</li><li>ソース言語を自動検出して翻訳する</li><li>複数行のテキストをまとめて一括翻訳する</li><li>DETECTLANGUAGE関数と組み合わせて多言語データを処理する</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>GOOGLETRANSLATE関数はGoogleスプレッドシート専用の関数です。Google翻訳の翻訳エンジンを利用するため、インターネット接続が必要です。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc2">GOOGLETRANSLATE関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc3">基本構文</span></h3>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(テキスト, ソース言語, ターゲット言語)</code></pre>



<p class="wp-block-paragraph">カッコの中に翻訳したいテキストと、翻訳元・翻訳先の言語コードを指定します。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>テキスト</td><td>必須</td><td>翻訳したい文字列またはセル参照</td></tr><tr><td>ソース言語</td><td>任意</td><td>翻訳元の言語コード。省略または&#8221;auto&#8221;で自動検出</td></tr><tr><td>ターゲット言語</td><td>任意</td><td>翻訳先の言語コード。省略するとシステムの言語が使われる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">言語コードはISO 639-1形式の2文字コードを使います。よく使うコードは次のとおりです。</p>



<figure class="wp-block-table"><table><thead><tr><th>言語コード</th><th>言語</th></tr></thead><tbody><tr><td>&#8220;ja&#8221;</td><td>日本語</td></tr><tr><td>&#8220;en&#8221;</td><td>英語</td></tr><tr><td>&#8220;zh&#8221;</td><td>中国語（簡体字）</td></tr><tr><td>&#8220;ko&#8221;</td><td>韓国語</td></tr><tr><td>&#8220;fr&#8221;</td><td>フランス語</td></tr><tr><td>&#8220;de&#8221;</td><td>ドイツ語</td></tr><tr><td>&#8220;es&#8221;</td><td>スペイン語</td></tr><tr><td>&#8220;pt&#8221;</td><td>ポルトガル語</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>ソース言語を <code>"auto"</code> にすると、翻訳エンジンが自動で言語を判別してくれます。何語かわからないテキストを翻訳するときに便利ですよ。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc5">GOOGLETRANSLATE関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">英語を日本語に翻訳する</span></h3>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(&quot;Hello, how are you?&quot;, &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「こんにちは、お元気ですか？」のように返ります。第2引数が翻訳元（英語）、第3引数が翻訳先（日本語）です。</p>



<h3 class="wp-block-heading"><span id="toc7">セル参照で翻訳する</span></h3>



<p class="wp-block-paragraph">A1セルに英語のテキストが入っている場合、次のように書きます。</p>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(A1, &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">A1の内容が変わると、翻訳結果も自動で更新されます。</p>



<h3 class="wp-block-heading"><span id="toc8">ソース言語を自動検出する</span></h3>



<p class="wp-block-paragraph">何語かわからないテキストを翻訳したいときは、ソース言語に <code>"auto"</code> を指定します。</p>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(A1, &quot;auto&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">翻訳エンジンが自動で言語を判別して日本語に翻訳してくれます。</p>



<h3 class="wp-block-heading"><span id="toc9">日本語を英語に翻訳する</span></h3>



<p class="wp-block-paragraph">もちろん、日本語から英語への翻訳もできます。</p>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(&quot;お疲れ様です&quot;, &quot;ja&quot;, &quot;en&quot;)</code></pre>



<p class="wp-block-paragraph">結果は「Thank you for your hard work」のように返ります。ビジネスメールの下書きに使うと便利です。</p>



<h2 class="wp-block-heading"><span id="toc10">GOOGLETRANSLATE関数の実践的な使い方・応用例</span></h2>



<h3 class="wp-block-heading"><span id="toc11">複数行のテキストを一括翻訳する</span></h3>



<p class="wp-block-paragraph">A列に英語のテキストが並んでいるとき、B列にまとめて翻訳結果を出せます。</p>



<p class="wp-block-paragraph">B2セルに次の数式を入力して、下方向にコピーしましょう。</p>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(A2, &quot;en&quot;, &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">数十行あっても一括で翻訳できます。手作業でコピー＆ペーストする必要がなくなりますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">DETECTLANGUAGE関数と組み合わせる</span></h3>



<p class="wp-block-paragraph">DETECTLANGUAGE関数は、テキストの言語を自動検出してコードを返す関数です。</p>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数と組み合わせると、多言語が混在するデータでも適切に翻訳できます。</p>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(A2, DETECTLANGUAGE(A2), &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">A2に英語が入っていれば英語から日本語に、中国語なら中国語から日本語に翻訳されます。さまざまな言語のデータを1つの数式で処理できるのがポイントです。</p>



<h3 class="wp-block-heading"><span id="toc13">翻訳先の言語をセルで切り替える</span></h3>



<p class="wp-block-paragraph">翻訳先の言語コードをセルに入れておけば、ドロップダウンで切り替えられます。</p>



<p class="wp-block-paragraph">C1セルに言語コード（&#8221;en&#8221;や&#8221;ko&#8221;など）を入力しておき、次のように指定します。</p>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(A2, &quot;ja&quot;, C1)</code></pre>



<p class="wp-block-paragraph">C1の値を変えるだけで翻訳先が切り替わります。複数言語で資料を作りたいときに便利ですよ。</p>



<h3 class="wp-block-heading"><span id="toc14">ARRAYFORMULA関数で一括翻訳する</span></h3>



<p class="wp-block-paragraph">ARRAYFORMULA関数と組み合わせれば、1つの数式でまとめて翻訳することもできます。</p>



<pre class="wp-block-code"><code>=ARRAYFORMULA(GOOGLETRANSLATE(A2:A10, &quot;en&quot;, &quot;ja&quot;))</code></pre>



<p class="wp-block-paragraph">ただし、翻訳対象の行数が多いと処理に時間がかかる場合があります。数十行程度なら問題ありませんが、100行を超える場合は分割して処理するのがおすすめです。</p>



<h3 class="wp-block-heading"><span id="toc15">翻訳結果を固定する（値の貼り付け）</span></h3>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数の結果は翻訳エンジンの更新で変わることがあります。翻訳結果を確定させたい場合は、次の手順で値だけを貼り付けましょう。</p>



<ol class="wp-block-list"><li>翻訳結果のセルをコピーします（Ctrl + C）</li><li>右クリック →「特殊貼り付け」→「値のみ貼り付け」を選択します</li></ol>



<p class="wp-block-paragraph">これで数式が消えて、翻訳結果がテキストとして固定されます。</p>



<h2 class="wp-block-heading"><span id="toc16">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数で「思った結果にならない」ケースをまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>#VALUE! エラーが出る</td><td>言語コードが間違っている</td><td>ISO 639-1形式の2文字コード（&#8221;ja&#8221;、&#8221;en&#8221;など）を指定する</td></tr><tr><td>翻訳結果が空になる</td><td>テキストが空文字列</td><td>元のセルにテキストが入っているか確認する</td></tr><tr><td>翻訳が不自然</td><td>Google翻訳の精度による</td><td>短い文に区切ると精度が上がりやすい</td></tr><tr><td>#ERROR! が出る</td><td>一度に大量の翻訳を実行した</td><td>行数を減らして分割実行する。しばらく待って再試行する</td></tr><tr><td>結果が変わる</td><td>翻訳エンジンが更新された</td><td>確定させたい場合は値の貼り付けで固定する</td></tr><tr><td>サポート外の言語</td><td>対応していない言語コードを指定した</td><td>Google翻訳がサポートする言語かどうか確認する</td></tr></tbody></table></figure>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>大量のセルで同時にGOOGLETRANSLATE関数を使うと、一時的にエラーが出ることがあります。そのときは数分待ってからセルを再計算（Ctrl + Shift + F9）してみてください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc17">Excelとの違い</span></h2>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数は<strong>Googleスプレッドシート専用の関数</strong>です。Excelには同等の関数がありません。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Googleスプレッドシート</th><th>Excel</th></tr></thead><tbody><tr><td>翻訳関数</td><td>GOOGLETRANSLATE関数が使える</td><td>翻訳関数なし</td></tr><tr><td>翻訳方法</td><td>セルに数式を入力するだけ</td><td>アドインやMicrosoft Translatorが必要</td></tr><tr><td>費用</td><td>無料</td><td>アドインによっては有料</td></tr><tr><td>オフライン</td><td>使えない（インターネット接続が必要）</td><td>アドインによる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Excelで翻訳したい場合は、Microsoft Translatorアドインを使う方法があります。ただし、GOOGLETRANSLATE関数ほど手軽ではありません。</p>



<p class="wp-block-paragraph">スプレッドシートで翻訳した結果をExcelに持っていきたい場合は、先ほど紹介した「値の貼り付け」でテキスト化してからExcel形式で保存するとスムーズですよ。</p>



<h2 class="wp-block-heading"><span id="toc18">まとめ</span></h2>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数は、スプレッドシート上でテキストを翻訳できる便利な関数です。</p>



<p class="wp-block-paragraph">ポイントを整理します。</p>



<ul class="wp-block-list"><li>構文は <code>=GOOGLETRANSLATE(テキスト, ソース言語, ターゲット言語)</code></li><li>言語コードはISO 639-1形式の2文字コード（&#8221;ja&#8221;、&#8221;en&#8221;など）を使う</li><li>ソース言語を <code>"auto"</code> にすると自動検出してくれる</li><li>DETECTLANGUAGE関数と組み合わせると多言語データにも対応できる</li><li>翻訳結果を固定したいときは「値の貼り付け」を使う</li><li>Googleスプレッドシート専用の関数で、Excelには同等の機能がない</li><li>大量データを翻訳するときは分割処理がおすすめ</li></ul>



<p class="wp-block-paragraph">まずは <code>=GOOGLETRANSLATE("Hello", "en", "ja")</code> で翻訳を試してみてください。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc19">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-text-function/">スプレッドシートのTEXT関数の使い方｜表示形式を自由に変換</a></li><li><a href="https://mashukabu.com/spreadsheet-split-function/">スプレッドシートのSPLIT関数の使い方｜区切り文字で分割</a></li><li><a href="https://mashukabu.com/spreadsheet-concatenate-function/">スプレッドシートのCONCATENATE関数の使い方｜文字列結合</a></li><li><a href="https://mashukabu.com/spreadsheet-gemini-ai-function/">Gemini in スプレッドシートの使い方｜AI関数でデータ整理を自動化</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-googletranslate-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>スプレッドシートのDETECTLANGUAGE関数の使い方｜言語検出</title>
		<link>https://mashukabu.com/spreadsheet-detectlanguage-function/</link>
					<comments>https://mashukabu.com/spreadsheet-detectlanguage-function/#respond</comments>
		
		<dc:creator><![CDATA[まっしゅ]]></dc:creator>
		<pubDate>Sun, 22 Mar 2026 01:12:41 +0000</pubDate>
				<category><![CDATA[Googleスプレッドシート]]></category>
		<category><![CDATA[DETECTLANGUAGE]]></category>
		<category><![CDATA[GOOGLETRANSLATE]]></category>
		<category><![CDATA[Sheets独自]]></category>
		<category><![CDATA[スプレッドシート]]></category>
		<category><![CDATA[多言語]]></category>
		<category><![CDATA[言語検出]]></category>
		<guid isPermaLink="false">https://mashukabu.com/?p=4977</guid>

					<description><![CDATA[GoogleスプレッドシートのDETECTLANGUAGE関数の使い方を初心者向けに解説。言語検出の基本構文から、返される言語コード一覧、GOOGLETRANSLATE関数との連携、多言語データの仕分けまで実例付きで紹介します。]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">スプレッドシートで海外のデータを扱っていると、「この文章は何語？」と確認したくなる場面がありますよね。</p>



<p class="wp-block-paragraph">数件なら目で見て判断できますが、何十行もの多言語データが混在していると手作業では限界があります。</p>



<p class="wp-block-paragraph">そんなときに便利なのがDETECTLANGUAGE関数です。セルのテキストが何語かをサッと判定してくれます。</p>



<p class="wp-block-paragraph">この記事では、DETECTLANGUAGE関数の基本からGOOGLETRANSLATE関数との連携まで、実践的な使い方をまとめて紹介します。</p>




  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-3" checked><label class="toc-title" for="toc-checkbox-3">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">DETECTLANGUAGE関数とは？</a></li><li><a href="#toc2" tabindex="0">DETECTLANGUAGE関数の書き方（構文と引数）</a><ol><li><a href="#toc3" tabindex="0">基本構文</a></li><li><a href="#toc4" tabindex="0">引数の説明</a></li></ol></li><li><a href="#toc5" tabindex="0">DETECTLANGUAGE関数の基本的な使い方</a><ol><li><a href="#toc6" tabindex="0">テキストごとの判定結果</a></li><li><a href="#toc7" tabindex="0">主な言語コード一覧</a></li><li><a href="#toc8" tabindex="0">セル参照で判定する</a></li></ol></li><li><a href="#toc9" tabindex="0">DETECTLANGUAGE関数の実践的な使い方・応用例</a><ol><li><a href="#toc10" tabindex="0">GOOGLETRANSLATE関数と連携して自動翻訳する</a></li><li><a href="#toc11" tabindex="0">IF関数と組み合わせて言語ごとに処理を分岐する</a></li><li><a href="#toc12" tabindex="0">多言語データを言語ごとにフィルタする</a></li><li><a href="#toc13" tabindex="0">言語ごとの件数をカウントする</a></li><li><a href="#toc14" tabindex="0">多言語メール対応の振り分けルール</a></li></ol></li><li><a href="#toc15" tabindex="0">よくあるエラーと対処法</a></li><li><a href="#toc16" tabindex="0">Excelとの違い</a></li><li><a href="#toc17" tabindex="0">まとめ</a><ol><li><a href="#toc18" tabindex="0">関連記事</a></li></ol></li></ol>
    </div>
  </div>

<h2 class="wp-block-heading"><span id="toc1">DETECTLANGUAGE関数とは？</span></h2>



<p class="wp-block-paragraph">DETECTLANGUAGE関数は、<strong>指定したテキストの言語を自動検出する、Googleスプレッドシート独自の関数</strong>です。</p>



<p class="wp-block-paragraph">名前は英語の「DETECT LANGUAGE（言語を検出する）」からきています。</p>



<p class="wp-block-paragraph">テキストを渡すと、言語を表す2文字のコード（「ja」「en」など）を返します。Excelにはない、スプレッドシートならではの機能です。</p>



<p class="wp-block-paragraph">DETECTLANGUAGE関数にできることをまとめると、次のとおりです。</p>



<ul class="wp-block-list"><li>テキストの言語をISO 639-1形式のコードで返す</li><li>GOOGLETRANSLATE関数と組み合わせて自動翻訳する</li><li>多言語データを言語ごとに分類・仕分けする</li><li>IF関数と組み合わせて言語に応じた処理を分岐する</li></ul>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>NOTE</strong></p><p>DETECTLANGUAGE関数はGoogleスプレッドシート独自の関数です。Excelには同等の関数がないため、ファイルをExcel形式で保存すると動作しません。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc2">DETECTLANGUAGE関数の書き方（構文と引数）</span></h2>



<h3 class="wp-block-heading"><span id="toc3">基本構文</span></h3>



<pre class="wp-block-code"><code>=DETECTLANGUAGE(テキストまたは範囲)</code></pre>



<p class="wp-block-paragraph">カッコの中に、言語を検出したいテキストやセルを指定します。</p>



<h3 class="wp-block-heading"><span id="toc4">引数の説明</span></h3>



<figure class="wp-block-table"><table><thead><tr><th>引数</th><th>必須/任意</th><th>説明</th></tr></thead><tbody><tr><td>テキストまたは範囲</td><td>必須</td><td>言語を検出したいテキスト、セル参照、またはセル範囲</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">引数は1つだけです。省略はできません。テキストを直接入力する場合はダブルクォーテーションで囲みます。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>セル範囲を指定した場合は、範囲内の最初のセルのテキストで言語が判定されます。範囲全体を個別に判定するわけではないので注意してください。</p></blockquote>



<h2 class="wp-block-heading"><span id="toc5">DETECTLANGUAGE関数の基本的な使い方</span></h2>



<p class="wp-block-paragraph">まずはシンプルな例で動きを確認してみましょう。</p>



<h3 class="wp-block-heading"><span id="toc6">テキストごとの判定結果</span></h3>



<p class="wp-block-paragraph">さまざまな言語のテキストをDETECTLANGUAGE関数で判定すると、次のような結果になります。</p>



<figure class="wp-block-table"><table><thead><tr><th>数式</th><th>結果</th><th>意味</th></tr></thead><tbody><tr><td><code>=DETECTLANGUAGE("こんにちは")</code></td><td><strong>ja</strong></td><td>日本語</td></tr><tr><td><code>=DETECTLANGUAGE("Hello")</code></td><td><strong>en</strong></td><td>英語</td></tr><tr><td><code>=DETECTLANGUAGE("你好")</code></td><td><strong>zh</strong></td><td>中国語</td></tr><tr><td><code>=DETECTLANGUAGE("안녕하세요")</code></td><td><strong>ko</strong></td><td>韓国語</td></tr><tr><td><code>=DETECTLANGUAGE("Bonjour")</code></td><td><strong>fr</strong></td><td>フランス語</td></tr><tr><td><code>=DETECTLANGUAGE("Hallo")</code></td><td><strong>de</strong></td><td>ドイツ語</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">返ってくる値は「ISO 639-1」という国際規格の2文字コードです。</p>



<h3 class="wp-block-heading"><span id="toc7">主な言語コード一覧</span></h3>



<p class="wp-block-paragraph">よく使う言語コードをまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>言語コード</th><th>言語名</th><th>表記例</th></tr></thead><tbody><tr><td>ja</td><td>日本語</td><td>こんにちは</td></tr><tr><td>en</td><td>英語</td><td>Hello</td></tr><tr><td>zh</td><td>中国語（簡体字）</td><td>你好</td></tr><tr><td>ko</td><td>韓国語</td><td>안녕하세요</td></tr><tr><td>fr</td><td>フランス語</td><td>Bonjour</td></tr><tr><td>de</td><td>ドイツ語</td><td>Hallo</td></tr><tr><td>es</td><td>スペイン語</td><td>Hola</td></tr><tr><td>pt</td><td>ポルトガル語</td><td>Olá</td></tr><tr><td>it</td><td>イタリア語</td><td>Ciao</td></tr><tr><td>ru</td><td>ロシア語</td><td>Здравствуйте</td></tr><tr><td>ar</td><td>アラビア語</td><td>مرحبا</td></tr><tr><td>th</td><td>タイ語</td><td>สวัสดี</td></tr><tr><td>vi</td><td>ベトナム語</td><td>Xin chào</td></tr><tr><td>hi</td><td>ヒンディー語</td><td>नमस्ते</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">これらのコードは、GOOGLETRANSLATE関数の言語指定にもそのまま使えますよ。</p>



<h3 class="wp-block-heading"><span id="toc8">セル参照で判定する</span></h3>



<p class="wp-block-paragraph">セル参照を使えば、特定のセルの言語を検出できます。</p>



<pre class="wp-block-code"><code>=DETECTLANGUAGE(A1)</code></pre>



<p class="wp-block-paragraph">A1 に「東京タワー」と入っていれば「ja」を返します。「Tokyo Tower」なら「en」です。</p>



<h2 class="wp-block-heading"><span id="toc9">DETECTLANGUAGE関数の実践的な使い方・応用例</span></h2>



<h3 class="wp-block-heading"><span id="toc10">GOOGLETRANSLATE関数と連携して自動翻訳する</span></h3>



<p class="wp-block-paragraph">DETECTLANGUAGE関数の最も実用的な使い方は、GOOGLETRANSLATE関数との組み合わせです。元の言語を自動検出して翻訳してくれます。ソース言語を手動で指定する必要がなくなりますよ。</p>



<pre class="wp-block-code"><code>=GOOGLETRANSLATE(A2, DETECTLANGUAGE(A2), &quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">A2 のテキストが何語であっても、自動的に日本語に翻訳してくれます。英語・中国語・韓国語が混在したデータでも、1つの数式で対応できるのが便利です。</p>



<p class="wp-block-paragraph">GOOGLETRANSLATE関数の詳しい使い方は<a href="https://mashukabu.com/spreadsheet-googletranslate-function/">GOOGLETRANSLATE関数の記事</a>で解説しています。</p>



<blockquote class="wp-block-quote is-layout-flow wp-block-quote-is-layout-flow"><p><strong>TIP</strong></p><p>GOOGLETRANSLATE関数の第2引数に <code>"auto"</code> を指定しても言語を自動検出できます。ただし、DETECTLANGUAGE関数を使えば「検出された言語コード」を別セルに保持できるため、あとから言語ごとの集計や仕分けに活用できますよ。</p></blockquote>



<h3 class="wp-block-heading"><span id="toc11">IF関数と組み合わせて言語ごとに処理を分岐する</span></h3>



<p class="wp-block-paragraph">テキストの言語に応じてラベルを付けたい場面で使えます。</p>



<pre class="wp-block-code"><code>=IF(DETECTLANGUAGE(A2)=&quot;ja&quot;,&quot;日本語&quot;,&quot;その他&quot;)</code></pre>



<p class="wp-block-paragraph">A2 が日本語なら「日本語」、それ以外なら「その他」と表示します。</p>



<p class="wp-block-paragraph">もう少し細かく分岐させたい場合は、IFS関数やSWITCH関数を使うとスッキリ書けます。</p>



<pre class="wp-block-code"><code>=SWITCH(DETECTLANGUAGE(A2),&quot;ja&quot;,&quot;日本語&quot;,&quot;en&quot;,&quot;英語&quot;,&quot;zh&quot;,&quot;中国語&quot;,&quot;その他&quot;)</code></pre>



<p class="wp-block-paragraph">問い合わせデータの言語ごとの振り分けなどに活用できますよ。</p>



<h3 class="wp-block-heading"><span id="toc12">多言語データを言語ごとにフィルタする</span></h3>



<p class="wp-block-paragraph">FILTER関数と組み合わせると、特定の言語のデータだけを取り出せます。</p>



<pre class="wp-block-code"><code>=FILTER(A2:B20, DETECTLANGUAGE(A2:A20)=&quot;en&quot;)</code></pre>



<p class="wp-block-paragraph">A列のテキストが英語のデータだけを抽出できます。多言語の問い合わせリストやアンケートデータの整理に便利です。</p>



<h3 class="wp-block-heading"><span id="toc13">言語ごとの件数をカウントする</span></h3>



<p class="wp-block-paragraph">COUNTIF関数と組み合わせて、各言語のデータが何件あるか集計できます。</p>



<p class="wp-block-paragraph">まず、B列にDETECTLANGUAGE関数の結果を出しておきます。</p>



<pre class="wp-block-code"><code>B2: =DETECTLANGUAGE(A2)</code></pre>



<p class="wp-block-paragraph">そのうえで、言語ごとの件数をカウントします。</p>



<pre class="wp-block-code"><code>=COUNTIF(B2:B100,&quot;ja&quot;)</code></pre>



<p class="wp-block-paragraph">日本語データの件数がわかります。「en」「zh」など他の言語コードに変えれば、それぞれの件数も確認できますよ。</p>



<h3 class="wp-block-heading"><span id="toc14">多言語メール対応の振り分けルール</span></h3>



<p class="wp-block-paragraph">海外からの問い合わせメールが混在するリストで、言語に応じて担当者を自動で割り当てるケースです。</p>



<pre class="wp-block-code"><code>=SWITCH(DETECTLANGUAGE(A2),&quot;ja&quot;,&quot;田中&quot;,&quot;en&quot;,&quot;Smith&quot;,&quot;zh&quot;,&quot;王&quot;,&quot;対応不可&quot;)</code></pre>



<p class="wp-block-paragraph">A2 のテキストが日本語なら「田中」、英語なら「Smith」、中国語なら「王」と担当者名を表示します。対応言語以外は「対応不可」としてフラグを立てられます。</p>



<h2 class="wp-block-heading"><span id="toc15">よくあるエラーと対処法</span></h2>



<p class="wp-block-paragraph">DETECTLANGUAGE関数で「思った結果にならない」ケースをまとめました。</p>



<figure class="wp-block-table"><table><thead><tr><th>症状</th><th>原因</th><th>対処法</th></tr></thead><tbody><tr><td>空文字が返る</td><td>テキストが空白または数値のみ</td><td>テキストデータが入っているか確認する</td></tr><tr><td>意図しない言語コードが返る</td><td>テキストが短すぎて誤判定</td><td>3語以上の文章を入力すると精度が上がる</td></tr><tr><td>毎回結果が変わる</td><td>Googleの言語検出APIの判定が揺れる</td><td>短いテキストほど揺れやすい。文章が長いほど安定する</td></tr><tr><td>#N/A エラーが出る</td><td>Googleの言語検出サービスに一時的に接続できない</td><td>時間をおいて再度実行する</td></tr><tr><td>範囲指定で1つしか結果が出ない</td><td>範囲を渡すと先頭セルの言語のみ検出される</td><td>各セルに個別にDETECTLANGUAGE関数を入れる</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">テキストが短いと精度が下がるのが最も多いトラブルです。「OK」のような短い単語は英語にも日本語のローマ字にも見えるため、誤判定が起こりやすくなります。</p>



<p class="wp-block-paragraph">目安として、3語以上の文章を渡すと安定した結果が得られますよ。</p>



<h2 class="wp-block-heading"><span id="toc16">Excelとの違い</span></h2>



<p class="wp-block-paragraph">DETECTLANGUAGE関数はGoogleスプレッドシート独自の関数です。Excelには同等の関数がありません。</p>



<figure class="wp-block-table"><table><thead><tr><th>項目</th><th>Googleスプレッドシート</th><th>Excel</th></tr></thead><tbody><tr><td>DETECTLANGUAGE関数</td><td>使える</td><td><strong>なし</strong></td></tr><tr><td>言語検出の代替手段</td><td>―</td><td>VBAやPower Automateで外部APIを呼び出す</td></tr><tr><td>GOOGLETRANSLATE関数</td><td>使える</td><td>なし</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Excelで言語検出を行いたい場合は、VBAでGoogle翻訳APIやMicrosoft Translator APIを呼び出す方法がありますが、スプレッドシートのように数式1つで完結する手軽さはありません。</p>



<p class="wp-block-paragraph">多言語データの処理が多い場合は、この用途ではスプレッドシートのほうが便利です。</p>



<h2 class="wp-block-heading"><span id="toc17">まとめ</span></h2>



<p class="wp-block-paragraph">DETECTLANGUAGE関数は、テキストの言語を自動検出するスプレッドシート独自の関数です。</p>



<p class="wp-block-paragraph">ポイントを整理します。</p>



<ul class="wp-block-list"><li>構文は <code>=DETECTLANGUAGE(テキストまたは範囲)</code> で、引数は1つだけ</li><li>ISO 639-1形式の2文字言語コード（ja, en, zh など）を返す</li><li>GOOGLETRANSLATE関数と組み合わせると、ソース言語の手動指定が不要になる</li><li>IF関数やSWITCH関数と組み合わせて言語ごとの処理分岐ができる</li><li>FILTER関数やCOUNTIF関数で多言語データの抽出・集計にも使える</li><li>短いテキストは誤判定が起きやすいので、3語以上の文章を渡すのがコツ</li><li>Excelには同等の関数がないため、スプレッドシートならではの強みといえる</li></ul>



<p class="wp-block-paragraph">まずは <code>=DETECTLANGUAGE("こんにちは")</code> で「ja」が返ることを確認してみてください。</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<h3 class="wp-block-heading"><span id="toc18">関連記事</span></h3>



<ul class="wp-block-list"><li><a href="https://mashukabu.com/spreadsheet-googletranslate-function/">スプレッドシートのGOOGLETRANSLATE関数の使い方｜テキスト翻訳</a></li><li><a href="https://mashukabu.com/spreadsheet-gemini-ai-function/">Gemini in スプレッドシートの使い方｜AI関数でデータ整理を自動化</a></li></ul>
]]></content:encoded>
					
					<wfw:commentRss>https://mashukabu.com/spreadsheet-detectlanguage-function/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
