Googleスプレッドシート翻訳完全ガイド(関数・ツール)

皆さんこんにちは、シンガポールで働くデジタルマーケターのキャメです。本日は「Googleスプレッドシートで関数を利用して、翻訳をする方法」をご紹介します。

私は仕事ではエクセルではなく、Googleスプレッドシートを使っているのですが、英語の文章を日本語に翻訳・レビューしたり、日本語の資料を英語圏の人が内容を理解できるように英訳することがよくあります。

Googleスプレッドシートでは翻訳に関する関数を利用することができ、翻訳関数を使えば、スプレッドシート上で一気に原稿を翻訳(英訳・和訳)することができます。

翻訳に関する作業効率化でお悩みの方は、ぜひ一度本記事をご一読ください。

Googleスプレッドシートで関数を使った翻訳

MicrosoftのエクセルやGoogleのスプレッドシートには関数という便利な機能があります。足し算をしてくれるsum関数、平均を求めるAVERAGE関数など、関数には様々な種類があります。

Googleスプレッドシートでは関数を使って翻訳する方法が2つあります。

1つ目はgoogletranslate関数という、Googleスプレッドシートに元々備わっている関数を利用する方法です。

もう1つはスクリプトエディタという機能を活用して、新たに構築したtranslate関数を使う方法です。これはGoogleスプレッドシートに元々備わっている関数ではなく、 Google Apps ScriptというGoogleが開発・提供しているプログラミング言語を使って、新たに導入した翻訳用の関数です。

どちらも長所と短所があり、利用するまでの手間や翻訳の精度が大きく異なります。まずは両者の特徴を確認するために、サンプルのスプレッドシートで実際に両方の関数を使って和訳した文章を見てみましょう。

Googleスプレッドシート翻訳サンプルファイル

サンプルの文章はJapan Timesという日本に関するニュースを英語で発信するWebサイトから引用しています。

A列、B列、C列には下記設定されています。

A列(英文):翻訳したい英文を入力
B列(googletranslate関数英訳):A列に入力された英文をgoogletranslate関数で和訳して出力
C列(translate関数和訳※スクリプトエディタで導入):A列に入力された英文をtranslate関数で和訳して出力

英語の文章をA列に入力すると、関数が自動で日本語の文章に翻訳しB列やC列に出力してくれます。

A2(英文)
The government plans to encourage firms to let their employees choose to work four days a week instead of five, aiming to improve the balance between work and life for people who have family-care responsibilities or need more time off to acquire new skills.
B2(googletranslate関数和訳)
政府は、家族の責任を持つ人々のための仕事と人生のバランスを向上させることを目指し、新しいスキルを身につけるためにもっと多くの時間を必要とすることを目指して、従業員に週4日に働くことを企業に奨励することを計画しています。
C2(translate関数和訳※スクリプトエディタで導入)
政府は、家族の世話をしたり、新しいスキルを習得するためにより多くの休暇が必要な人々の仕事と生活のバランスを改善することを目指して、従業員が週5日ではなく週4日働くことを選択できるように企業を奨励する予定です。

実際に出力された翻訳を見ていただくと、googletranslate関数を使った和訳とtranslate関数を使った和訳ではtranslate関数の方がより正確で自然な翻訳になっています。

もちろん、両方ともシステムによる翻訳のため、完全に自然な文章になっているかというとそうではありません。実際にビジネスや学業で人に見せるものとして利用する際には、手直しが必要です。ただ、内容の把握やベースとなる文章の作成には大いに役に立ちます。

2つの関数の特徴をまとめると、googletranslate関数はGoogleスプレッドシートに元々備わっているためすぐに利用できるが翻訳の質が低い、translate関数はGoogle Apps Scriptを利用して手動で導入する手間がかかりますが、googletranslate関数よりも翻訳の質が高いというメリットがあります。

導入すると言っても、所定のコードをコピー&ペーストして数クリックするだけで導入できるため、作業自体は1分もあれば終わります。

どちらを使うかはどの程度の質の翻訳が求められているかにより決まりますので、本記事でご紹介する内容をベースに適宜お好みの方法をお選びください。それでは、次にそれぞれの関数の構文や使い方をご紹介します。

googletranslate関数の構文・使い方(標準関数)

まずはgoogletranslate関数の構文や使い方をご紹介します。

googletranslate関数の構文
構文
GOOGLETRANSLATE(テキスト, “ソース言語”, “ターゲット言語”)

テキスト – 翻訳するテキスト
テキストの値は二重引用符(“)で囲むか、適切なテキストを含むセルへの参照にする必要があります

ソース言語 – [省略可 – デフォルトは “auto”] – ソース言語を2文字の言語コードで指定します
(例: 英語は “en”、日本語は “ja”、言語を自動的に検出する場合は “auto”)。
ソース言語を省略する場合は、ターゲット言語も省略する必要があります。

ターゲット言語 – [省略可 – デフォルトはシステムの言語] – ターゲット言語を2文字の言語コードで指定します

関数
=GOOGLETRANSLATE(A2, "en", "ja")
… A2のセルを英語から日本語に翻訳

=GOOGLETRANSLATE(“Hello”)
…「Hello」をシステムの言語(日本語)に翻訳
※ソース言語とターゲット言語を省略した書き方

ポイントをどのセルを、どの言語から、どの言語に翻訳するのかを書く、ということです。

最初の値に翻訳したい文章、次のソース言語には翻訳元の文章の言語を示す言語コード、ターゲット言語には翻訳先の言語を示す言語コードが入ります。テキストは翻訳したい文章をそのまま入力するか、もしくはセルを指定する形になります。

ソース言語は翻訳元の文章の言語コードを入れます。この場合の言語コードは各言語をアルファベット2文字で表したものです。例えば、英語ならen、日本語ならjpになります。ソース言語は省略することは可能ですが、万が一の翻訳をミスを防ぐため、書いておくことがおすすめです。ターゲット言語はソース言語と同じように、翻訳先の言語の言語コードを入れます。

それでは実際にサンプルファイルで書かれている関数を見てみましょう。

A2の英語の文章を和訳したB2には「=googletranslate (A2,”en”,”ja”)」と書かれています。

A2は翻訳したい文章が入っているセルです。次の”en”は翻訳元の言語、この場合は英語を、次の”ja”は翻訳したい言語、この場合は日本語を指しています。こう書くことにより、「A2のセルの内容を英語から日本語に翻訳してください」という関数になります。

B3にも同様の内容が書かれており、「=googletranslate (A3,”en”,”ja”)」と入力されています。こう書くことにより、A3の英語をB3で同じようにgoogletranslate関数で翻訳して出力することができます。

また、“ja”の部分を変更することにより、他の言語の文章にも翻訳をすることができます。例えば、jaをfr、フランス語に変えてみます。すると、このように英語からフランス語に翻訳されました。

元々の文章が日本語で英語に翻訳したい場合は、jaとenを交換するだけで対応できます。

B2で一度関数を入力しておけば、B2をコピーしてB3以下にペースト(貼り付け)、またはB2のセルの右下の青い四角を下の方向にクリックアンドドラッグすれば、同じ内容を二度入力する必要はなく、一気にB2の関数を対象のセルだけ変更した上で適用することができます。

関数を利用する際のポイントはゼロから入力すると入力ミスが発生するため、インターネットで紹介されている関数をコピーして、一部をカスタマイズして使うのがおすすめです。サンプルファイルには正常に動作するgoogletranslate関数が設定されているため、ぜひご活用ください。

以上がgoogletranslate関数を使った方法です。

translate関数の機能・使い方(Google Apps Script)

次にご紹介するのはtranslate関数を使った方法です。こちらはGoogleスプレッドシートに標準で備わっている機能ではなく、スクリプトエディタという開発ツールを使って、自分で関数を定義、導入する必要があります。

関数を導入するというと難しく聞こえるかもしれませんが、プログラミングの知識はいらず、コピペと数クリックさえあれば関数自体は導入できるため、手間もそこまでかかりません。やり方を知っていれば1分程度で終わります。

まずは利用するための導入手順を見てみましょう。

STEP.1
スクリプトエディタを開く
メニューバーから「ツール -> スクリプト エディタ」を選択
STEP.2
所定のコードの貼り付け
下記コードをコピペして貼り付け
スクリプトエディタ貼り付け用コード
function translate(originalValue, translateFrom, translateTo) {
if ( originalValue.length > 0 ) {
return LanguageApp.translate(originalValue, translateFrom, translateTo);
} else {
return '';
}
}
STEP.3
プロジェクトの保存
「プロジェクトを保存」をクリック

まずはGoogleスプレッドシートを開き、メニューバーの「ツール」からスクリプトエディタを起動します。スクリプトエディタを起動すると、関数のプログラムが入力できますので、そこで事前に用意したコードをコピペで貼り付けてください。

貼り付けて頂いたら、「保存」を押します。これだけで翻訳をするためのtranslate関数が導入できます。

本記事はプログラミングの授業ではないため、細かなコード解説は省略しますが、気になる方は関数を作る言語であるGoogle App Scriptや利用しているLanguageAppクラスについて調べてみてください。

ここまでの手順で関数を導入したら、後はgoogletranslate関数と同様に関数を使って翻訳していくだけです。今回定義したtranslate関数はgoogletranslate関数と同じように使うことができます。


translate関数の構文
構文
TRANSLATE(テキスト, “ソース言語”, “ターゲット言語”)

テキスト – 翻訳するテキスト
テキストの値は二重引用符(“)で囲むか、適切なテキストを含むセルへの参照にする必要があります

ソース言語 – ソース言語を 2 文字の言語コードで指定します
(例: 英語は “en”、日本語は “ja”)。

ターゲット言語 – [デフォルトはシステムの言語] – ターゲット言語を 2 文字の言語コードで指定します
ソース言語、ターゲットの言語の省略は不可

利用するためにはスクリプトエディタを活用して、翻訳関数を定義する必要があります


=translate(A2, “en”, “ja”)
… A2のセルを英語から日本語に翻訳

translate関数とgoogletranslate関数の構文の構造は似ており、「どちらも翻訳したい文章(テキスト)」、「ソース言語(翻訳元の言語)」、「ターゲット言語(翻訳先の言語)」を指定します。

ただ、translate関数は「ソース言語」と「ターゲット言語」の省略できません。指定しないとエラーになるため、スペルを確認した上で入力するようにしましょう。

translate関数とgoogletranslate関数は使い方は全く同じですが、翻訳で使う仕組みが異なっているます。同じ文章を翻訳しても差が出るのは、裏側の仕組みが違うためです。

それではサンプルファイルで実際のコードを見てみましょう。A2には翻訳する英語の文章が入力されており、C2にtranlslate関数を用いた構文が入力されています。

関数
=translate(A2,"en","ja")

こう書くことにより、「A2のセルの内容を英語から日本語に翻訳してください」という関数になり、自動的に関数が英文を英語を日本語に翻訳してくれます。関数をC3以降のセルにも展開する場合は、google translate関数と同様にコピー&ペーストやクリックアンドドラッグで簡単にできます。

以上がtranslate関数を使った翻訳方法です。スプレッドシートに標準搭載されているgoogletranslate関数と異なり、スクリプトエディタで導入することにより初めて利用になることが重要なポイントです。

次にgoogletranslate関数とtranslate関数の使い分けについて解説します。

googletranslate関数とtranslate関数の使い分け

​​改めて同じ英文を対象に両関数を用いて出力された翻訳を比べてみると、translate関数のほうが自然な日本語になります。

そのため、基本的には文章をスプレッドシートで翻訳する際はスクリプトエディタを導入してtranslate関数を使っていただくのがお勧めです。

ただ、そこまでするのが手間だったり、単語のようなシンプルなものの翻訳の場合はgoogletranslate関数を使っても、翻訳はあまり差がありません。ぜひ、必要に応じて使い分けください。

まとめ

以上がGoogleスプレッドシートでの関数を使った翻訳です。いかがでしたか。日常の勉強やビジネスで必要になった際にぜひ試してみてください。

もちろん、ツールを使って出てきた翻訳は、だいたいの内容を掴むためには十分ですが、自然な文章とは限らず、おかしな文章が出てくるときもあります。

他の方に見せる際は、ツールと使って翻訳したため完璧でないことを添えたり、手直しして頂くと、誤解を防げるかと思います。

今後も本ブログではマーケティングやビジネスで役に立つ情報を発信してまいります。マーケティングでお悩みのことがございましたら、お気軽にお問い合わせください。