「そうだ、かけ算九九の表でも作ってみるか!」
そんな軽い気持ちで始められる、シンプルだけど意外とハマる暇つぶしです。
もちろん、1×1から順番に入力していくのもアリですが、
せっかくならExcelらしく、一気に仕上げてみましょう。
今回の記事では、使用するのはExcelの「関数」のみ!
かけ算九九の表(9×9)を爆速で作成する方法をいくつかご紹介します!
手入力は最小限で済ませられる方法もあります。
コピー&ペーストの手間も、かなり抑えられるかもしれません。
関数を使いこなして、爆速でかけ算九九表を作り上げてみましょう!
これができると、普段の作業にも応用できる関数の理解が深まります。
今回のミッション
現在の状態とゴール
- 現在の状態: 何も入力されていない、まっさらなExcelシート。
- 目指すゴール: そのシート上に関数だけを使い、下図のような9行9列のかけ算九九の表を完成させる。

ルール:関数以外使用禁止
VBA(マクロ)や、電卓での計算結果の手入力などは使用しません。
セルに入力する「数式(関数)」だけで、この九九表の作成を目指します。
(※方法によっては、数式入力の準備として最小限の数字入力やコピー&ペースト操作を含む場合があります…それはOK!)
データの準備
準備するもの
- 空白のExcelシート
- 新しいブックを開くか、既存のブックに新しいシートを追加するだけで準備OKです!
方法1:基本!行番号と列番号を掛ける方法
考えかた
まずは、Excelの基本機能である「複合参照」を使って九九表を作る方法です。
行見出し(1~9)と列見出し(1~9)をあらかじめ入力します。
それぞれの値を掛け合わせる数式を1つだけ作ります。
その数式をコピーすることで、かけ算九九表を完成させます。
手順
準備:見出しの入力
まず、A1セルからA9セルまで、縦に1から9までの数字を入力します。
同様に、B1セルからI1セルまで、横に2から9までの数字を入力します。

数式入力
次に、九九表の左上のセル、つまり B2セル に以下の数式を入力します。
=$A2*B$1

数式コピー
続いて、B2セルを選択し、フィルハンドル(セルの右下にある小さい■)を掴んで、
I9セル までドラッグして数式をコピーします。
B2からI9までを一度にドラッグしてコピーすることはできません。
Excelでは、横方向と縦方向を同時にまとめてコピーする操作が制限されているため、
横(B2〜I2)→縦(B2〜I9)の順に2段階でコピーする必要があります。
まず、横方向にコピー
B2セルのフィルハンドルを掴んで、右方向にI列まで(B2→I2)ドラッグします。
これで数式が横にコピーされます。

次に、縦方向にコピー
今コピーした範囲(B2~I2)をそのまま選択し、再びフィルハンドルを掴んで、
下方向に9行目まで(B2~I9)ドラッグします。

この2段階で操作することで、B2セルの数式をB2からI9までコピーできます。
または、B2セルをコピーし、B2からI9までの範囲を選択して貼り付けます。

これだけで、A1:I9の範囲にかけ算九九の表が完成します。

解説
入力した数式 =$A2*B$1
の $A2
や B$1
がポイントです。
これは「複合参照」と呼ばれます。
$A2
: $
が列(A)についているので、「列はA列に固定、行は相対的に変化する」という意味です。
下にコピーすると $A3
, $A4
… と行番号が変わりますが、横にコピーしても $A2
のままです。

B$1
: $
が行(1)についているので、「行は1行目に固定、列は相対的に変化する」という意味です。
横にコピーすると C$1
, D$1
… と列番号が変わりますが、下にコピーしても B$1
のままです。

この仕組みにより、例えば E5 セルにコピーされた数式は自動的に =$A5*E$1
となります。
なので、「A5セルの値(5)」と「E1セルの値(5)」が掛け合わされ、
結果「25」が表示されるわけです。

メリット&デメリット
- メリット:
- Excelの基本的な機能である「複合参照」の仕組みを理解するのに役立つ。
- Excelのどのバージョンでも使える。
- デメリット:
- 関数のみ、というルールからは少し外れ、
事前にA列と1行目に数字を手入力する必要がある。 - 数式のコピー&ペーストの手間がかかる。
- 関数のみ、というルールからは少し外れ、
方法2:ROW関数とCOLUMN関数を使う方法
考えかた
次に紹介するのは、セルの「行番号」と「列番号」を直接取得できる関数、ROW
関数 と COLUMN関数
を使う方法です。 この方法なら、事前の数字入力は不要です!
手順
数式入力
九九表を作成したい範囲の左上のセル、例えば A1セル に以下の数式を入力します。 =ROW(A1)*COLUMN(A1)

数式コピー
A1セルを選択し、フィルハンドルを掴んで、I9セル までドラッグして数式をコピーします。
※方法1と同様のやり方です。
まず、I列まで。

次に、9行目まで。

または、A1セルをコピーし、A1からI9までの範囲を選択して貼り付けます。

完成!

A1:I9の範囲にかけ算九九の表が表示されます。
解説
ROW(A1)
: この関数は、指定されたセル(この場合はA1)の 行番号 を返します。
A1セルの行番号は「1」です。
この数式を下にコピーすると、ROW(A2)
となり「2」、ROW(A3)
となり「3」… を返します。COLUMN(A1)
: こちらは、指定されたセル(A1)の 列番号 を返します。
A1セルの列番号は「1」です。
この数式を右にコピーすると、COLUMN(B1)
となり「2」、COLUMN(C1)
となり「3」… を返します。
つまり、コピーされた先の各セルで、そのセルの行番号 * そのセルの列番号
が計算されます。
その結果、かけ算九九の表が出来上がるのです。
例えば、C3セルでは ROW(C3)
(結果:3) と COLUMN(C3)
(結果:3) が掛け合わされ、
「9」が表示されます。

メリット&デメリット
- メリット:
- 事前の手入力が一切不要で、関数だけで完結する。
- ROW関数、COLUMN関数も古くからあるため、
ほとんどのExcelバージョンで利用可能。
- デメリット:
- 方法1と同様に、数式を9×9の範囲にコピーする手間がかかる。
方法3:SEQUENCE関数で一撃! (Excel 365 / 2021以降)
考えかた
最新のExcel(Microsoft 365 または Excel 2021)をお使いであれば、
この方法が最も簡単で爆速です。
新しい関数 SEQUENCE()
と「スピル」という機能を使って、たった1つのセルに数式を入力するだけで、九九表全体を自動生成します。
手順
数式入力
九九表を表示させたい左上のセル、例えば A1セル に以下の数式を入力し、[Enter]を押すだけです!=SEQUENCE(9)*SEQUENCE(1,9)

( SEQUENCE(1,9)
の部分は SEQUENCE(,9)
と書いても同じ結果になります)
完成!
数式を入力したA1セルから、I9セルまでの範囲に、
自動的にかけ算九九の値が展開(スピル)されます。
コピー&ペーストは不要です!
解説
この動作は、SEQUENCE
関数と「スピル」というExcelの新しい仕組みによるものです。
SEQUENCE(9)
: この関数は、1から始まる連続した数値を「縦方向」に9個生成します。SEQUENCE(1, 9)
: こちらは、1から始まる連続した数値を「横方向」に9個生成します。- スピル: この数式が返す 9×9 の配列の結果を、数式が入力されたセル(A1)を起点として、隣接する空のセルに自動的に展開して表示します。これが「スピル」です。
メリット&デメリット
- メリット:
- 圧倒的に速い! 1つのセルに数式を入力するだけでかけ算九九表が完成する。
- コピー&ペーストの手間が一切ない。
- 数式の意味が比較的理解しやすい。(9個の連続数と9個の連続数を掛ける)
- デメリット:
- Microsoft 365 または Excel 2021 以降のバージョンが必要。
- 数式を入力したセル以外にも結果が自動的に展開される仕様に、
違和感を覚える可能性がある。
(スピル範囲に他のデータがあると#スピ
ル
! エラーになる)

方法4:配列定数で直接指定する方法 (応用)
考えかた
SEQUENCE
関数が使えない古いバージョンのExcelでも、
数式内に直接数値のリスト(配列定数)を書き込むことで、配列計算を行うことができます。
①Microsoft 365 / Excel 2021 以降ではスピル機能と組み合わせます。
②それ以前のバージョンでは「配列数式」として入力することで実現します。
手順① (Microsoft 365 / Excel 2021 以降 の場合 – スピル利用)
数式入力
九九表を表示させたい左上のセル、例えば A1セル に以下の数式を入力し、[Enter]を押します。 ={1;2;3;4;5;6;7;8;9}*{1,2,3,4,5,6,7,8,9}

方法3と同様に、A1:I9の範囲に九九表が自動的にスピルで展開されます。

手順② (Excel 2019 以前の場合 – 配列数式)
範囲選択
まず、九九表を作成したいセル範囲、つまり A1セルからI9セルまでを選択 します。

数式入力
次に、A1:I9が選択された状態で、数式バーに以下の数式を入力します。
まだ[Enter]は押さないでください!
={1;2;3;4;5;6;7;8;9}*{1,2,3,4,5,6,7,8,9}

確定 (重要!)
[Enter]の代わりに、[Ctrl] と [Shift] を押しながら [Enter] を押します。
([Ctrl] + [Shift] + [Enter])

完成!
選択していたA1:I9の範囲すべてに九九表が表示されます。
数式バーを見ると、入力した数式が { }
(波括弧) で囲まれているはずです。

これが配列数式として入力された印です。
解説
{1;2;3;4;5;6;7;8;9}
: これは「配列定数」と呼ばれるものです。
縦方向の数値リストを直接数式内に書き込んでいます。セミコロン;
が縦の区切りです。{1,2,3,4,5,6,7,8,9}
: こちらは横方向の数値リストを表す配列定数です。カンマ,
が横の区切りです。- Excel 365/2021: 配列定数同士の掛け算によって生成された 9×9 の配列をスピル機能で自動展開します。
- Excel 2019以前: スピル機能がないため、「配列数式」という入力方法を使います。
メリット&デメリット
- メリット:
SEQUENCE
関数が使えない環境でも、配列計算を実現できる。- 配列定数の書き方(
{}
や;
,
の使い方)を学ぶことができる。
- デメリット:
- 配列定数を
{1;2;...}
のように手入力するのが少し面倒。 - Excel 2019以前のバージョンでは、配列数式の入力方法 ([Ctrl] + [Shift] + [Enter]) を知らないと正しく計算されない。
また、配列数式は後から一部だけ修正することができない。
- 配列定数を
まとめ
この記事では、Excelの関数だけを使って「かけ算九九」の表を作成する、
4つの方法をご紹介しました。
- 複合参照 (
$A2*B$1
): 基本的な参照方法。事前入力が必要。 - ROW/COLUMN関数: セルの行番号・列番号を利用。事前入力不要。コピーが必要。
- SEQUENCE関数 (
SEQUENCE()*SEQUENCE()
): 最新Excelならこれ!入力一発で完成(爆速)。 - 配列定数 (
{...}*{...}
): SEQUENCE代替。旧Excelでは配列数式の知識が必要。
Excelのバージョンや、操作の慣れ具合によって最適な方法は異なります。
特に最新のExcelをお使いであれば SEQUENCE
関数を使う方法が圧倒的に効率的です。
今回のテクニックが、皆さんのExcel作業を少しでも楽にするヒントになれば幸いです!