スプレッドシートのGCD関数の使い方|最大公約数を求めて比率を約分

スポンサーリンク

「この2つの数値の比率を、もっとシンプルに表したい」

スプレッドシートでデータ整理や資料づくりをしていると、比率を約分したい場面ってありますよね。手計算で共通の約数を探すのは地味に面倒です。

そんなときに便利なのがGCD関数。数値を指定するだけで、最大公約数を一発で求めてくれますよ。

この記事ではGCD関数の基本の書き方から、比率の約分・ロット計算・アスペクト比の算出といった実務活用パターンまで紹介します。

スプレッドシートのGCD関数とは?

GCD関数(読み方: ジーシーディー)は、指定した数値の最大公約数を返す関数です。

名前は英語の「Greatest Common Divisor(最大公約数)」の頭文字からきています。

最大公約数とは、複数の数値をすべて割り切れる最大の整数のこと。たとえば =GCD(12, 18) と書くと「6」が返ります。12と18を両方割り切れる一番大きい数が6ですね。

GCD関数にできることをまとめると、次のとおりです。

  • 2つ以上の数値の最大公約数を求める
  • 比率や分数を約分する
  • ロット数や共通単位を計算する
  • アスペクト比(画面比率)を算出する
  • LCM関数と組み合わせて検算する

NOTE

GCD関数はGoogleスプレッドシートの全バージョンで使えます。Excelとの互換性も完全なので、ファイルのやり取りでも安心ですよ。

GCD関数の書き方(構文と引数)

基本構文

=GCD(値1, [値2, ...])

カッコの中に最大公約数を求めたい数値を指定します。2つ以上の数値を指定できますよ。

引数の説明

引数必須/任意説明
値1必須最大公約数を求める最初の数値またはセル範囲
値2, …任意追加の数値またはセル範囲(最大255個まで)

セル範囲(A1:A10など)で複数の値をまとめて渡すこともできます。

GCD関数の基本的な使い方

もっともシンプルな使い方

数値を直接指定するパターンです。

=GCD(12, 18)

結果は「6」です。12と18の最大公約数ですね。

=GCD(24, 36)

結果は「12」です。24 = 12 x 2、36 = 12 x 3 なので、12が最大公約数になります。

=GCD(7, 13)

結果は「1」です。7と13は互いに素(共通の約数が1しかない)なので、最大公約数は1ですね。

セル参照を使う

01 data sample table

A1に「24」、B1に「36」が入っているとします。

=GCD(A1, B1)
02 formula gcd basic

結果は「12」です。セル参照を使えば、値を変えるだけで結果が自動更新されますよ。

03 result gcd basic

3つ以上の数値を指定する

GCD関数は3つ以上の数値にも対応しています。

=GCD(12, 18, 24)

結果は「6」です。12・18・24のすべてを割り切れる最大の整数が6になります。

特殊なケース

0を含む場合は、0以外の数値がそのまま返ります。

=GCD(5, 0)

結果は「5」です。数学的にGCD(n, 0) = n と定義されています。

小数を指定した場合は、小数点以下が切り捨てられて計算されます。

=GCD(12.9, 18.3)

この数式は =GCD(12, 18) と同じ結果で「6」を返しますよ。

GCD関数の実務活用パターン

比率を約分する

2つの数値の比率をシンプルに表すのに、GCD関数が活躍します。

たとえばA1に「150」、B1に「200」が入っているとします。

=A1/GCD(A1, B1)

結果は「3」です。

=B1/GCD(A1, B1)

結果は「4」です。

150:200の比率が3:4に約分できました。GCD(150, 200)=50なので、それぞれ50で割った結果ですね。

04 result gcd ratio

TIP

売上比率やアンケート結果の割合を資料に載せるとき、約分した比率のほうがぐっと見やすくなりますよ。

分数を約分する

分子・分母をそれぞれGCDで割れば、最も簡単な分数になります。

A1に分子「36」、B1に分母「48」が入っているとします。

=A1/GCD(A1, B1)

約分後の分子は「3」です。

=B1/GCD(A1, B1)

約分後の分母は「4」です。

36/48 が 3/4 に約分されました。

ロット数・共通単位を求める

複数商品の在庫数から、共通のロット単位を求める場面で使えます。

たとえば商品Aの在庫が120個、商品Bが180個のとき、共通のロット単位は次のように求められます。

=GCD(120, 180)

結果は「60」です。つまり60個単位なら、どちらの商品もちょうど割り切れます。出荷やセット組みの単位を決めるときに便利ですよ。

3つの商品で考える場合も同じです。商品A・B・Cの在庫が120個・180個・240個なら、こう書きます。

=GCD(120, 180, 240)

結果は「60」です。3商品とも60個単位でまとめられますね。

アスペクト比(画面比率)を計算する

モニターや画像の解像度から、アスペクト比を算出できます。

A1に横幅「1920」、B1に高さ「1080」が入っているとします。

=A1/GCD(A1, B1) & ":" & B1/GCD(A1, B1)

結果は「16:9」です。GCD(1920, 1080)=120なので、それぞれ120で割ると16:9になります。

資料やプレゼンで画面サイズの情報を整理するときに、さっと計算できますよ。

MOD関数と組み合わせて割り切れるか確認する

MOD関数(余りを返す関数)と組み合わせると、数値がGCDで割り切れるか検証できます。

=MOD(A1, GCD(A1, B1))

結果は必ず「0」になります。最大公約数で割った余りは常に0ですからね。データの検算に使ってみてください。

よくあるエラーと対処法

GCD関数で発生しやすいエラーをまとめました。

エラー原因対処法
#NUM!負の数を指定した(例: GCD(-5, 10))0以上の整数を指定する
#VALUE!引数に文字列が入っているセル参照先が数値かどうか確認する
#ERROR!構文ミス(カッコ忘れ等)数式の入力内容を見直す

負の数を指定したとき

もっとも多いエラーです。GCD関数は0以上の整数でしか使えません。

=GCD(-12, 18)

この数式は#NUM!エラーになります。ABS関数で絶対値に変換すれば回避できますよ。

=GCD(ABS(A1), ABS(B1))

引数に文字列が含まれるとき

セル範囲を指定して、その中に文字列が混ざっていると#VALUE!エラーになります。数値だけのセル範囲を指定するようにしてみてください。

GCD関数とLCM関数の違い・使い分け

GCD関数のペア関数として、LCM関数(最小公倍数)があります。セットで覚えておくと便利ですよ。

関数動作主な用途
GCD最大公約数を返す比率の約分・ロット計算・アスペクト比
LCM最小公倍数を返すスケジュールの合流点・通分・周期計算

最大公約数と最小公倍数の違い

最大公約数(GCD)は「すべての数を割り切れる最大の数」です。最小公倍数(LCM)は「すべての数で割り切れる最小の数」です。

12と18の場合で比べてみましょう。

  • GCD(12, 18) = 6: 12も18も6で割り切れる。6より大きい公約数はない
  • LCM(12, 18) = 36: 36は12でも18でも割り切れる。36より小さい公倍数はない

使い分けの目安

GCD関数を使う場面:

  • 比率を約分したい(150:200 → 3:4)
  • ロット数や共通単位を求めたい
  • アスペクト比を計算したい

LCM関数を使う場面:

  • スケジュールの合流日を求めたい(3日ごとと5日ごと → 15日後)
  • 通分の分母を求めたい
  • 複数の周期の合流点を求めたい

TIP

GCDは「縮める」計算、LCMは「合わせる」計算と覚えるとイメージしやすいですよ。詳しくはLCM関数の使い方の記事も参考にしてみてください。

GCDとLCMの関係式

2つの数a, bについて次の関係が成り立ちます。

GCD(a, b) x LCM(a, b) = a x b

この性質を使って、片方の結果から検算できます。

A1に「12」、B1に「18」が入っているとします。

=GCD(A1, B1) * LCM(A1, B1)

結果は「216」です。

=A1 * B1

こちらも「216」です。2つの結果が一致すれば、計算が正しいことを確認できますよ。

LCM関数がなくても、GCD関数だけで最小公倍数を計算する方法もあります。

=A1 * B1 / GCD(A1, B1)

この数式で =LCM(A1, B1) と同じ結果が得られます。

Excelとの違い

GCD関数はExcelとGoogleスプレッドシートで完全に同じ動作です。

項目ExcelGoogleスプレッドシート
構文=GCD(数値1, [数値2], …)=GCD(値1, [値2, …])
動作最大公約数を返す最大公約数を返す
小数の扱い小数点以下を切り捨て小数点以下を切り捨て
エラー時#NUM! / #VALUE!#NUM! / #VALUE!

引数名の表記が若干異なるだけで、機能は完全に同じです。Excelでの使い方はExcelのGCD関数の記事で詳しく解説していますよ。

まとめ

GCD関数は、指定した数値の最大公約数を求める関数です。

ポイントを整理しておきましょう。

  • 構文は =GCD(値1, [値2, ...]) で、最大255個の数値を指定できる
  • 比率の約分に便利。各値をGCDで割るだけでシンプルな比率になる
  • ロット数の計算やアスペクト比の算出にも活用できる
  • 小数は切り捨て、負の数は#NUM!エラー、0は許容される
  • LCM関数(最小公倍数)とはペア関数。GCDが「縮める」、LCMが「合わせる」計算
  • MOD関数と組み合わせれば、割り切れるかの検証もできる
  • GCD(a,b) x LCM(a,b) = a x b の関係式で相互に検算できる

まずは =GCD(12, 18) で「12と18の最大公約数 = 6」から試してみてください。

タイトルとURLをコピーしました