筋トレの記録をスプレッドシートで作るとき、最初に決めるのは1つだけです。1行に1セットを書く。この形にしておけば、週ごとの総負荷量も、種目別の最高重量も、あとから関数とピボットテーブルで取り出せます。逆に日付を横方向へ足していく形にすると、記録は溜まるのに集計だけができない表になります。ここから、そのまま写せる列構成と、作っておく集計3つ、そしてスプレッドシートでは埋まらない部分を順に書きます。
最初に決めるのは「1行1セット」
配布されている筋トレ用のシートを見ると、多くは日付を横に並べる形になっています。左端に種目名を置き、1週目・2週目……と右へ列を足していく作りです。書くぶんには自然ですが、この形には決定的な弱点があります。
列が増え続けるので、集計の式が毎回壊れます。 3か月ぶんの合計を出そうとすると、対象の列を手で指定し直すことになります。種目を1つ増やすたびに行を挿入し、書式をコピーする作業も発生します。
スプレッドシートの集計機能は、同じ意味のデータが縦に積まれていることを前提に作られています。ピボットテーブルの公式ヘルプが「列ごとに見出しを付ける必要があります」と最初に書いているのは、1行目を見出し、2行目から下をデータとして扱うためです。
なので、こう決めます。
1行に1セットぶんだけ書く — ― ベンチプレスを3セットやったら3行になります
日付も種目名も、毎行に書く — ― 同じ日の行に同じ日付が3回並んでも構いません。むしろそれが正しい形です
列は増やさない。行だけが下に伸びていく — ― 半年経っても列は9つのままです
見た目は素っ気なくなります。ただ、この形にしておくと、あとから「週ごとの合計」も「種目ごとの最高重量」も「部位ごとの配分」も、同じ1枚の表から取り出せます。見るための表は、記録用の表とは別に作るというのが基本の考え方です。
列は9つ作り、埋めるのは5つでいい
最初から全部の欄を埋めようとすると続きません。列は9つ用意しておきつつ、実際に入力するのは5つだけにします。
| 列 | 見出し | 入れるもの | 例 |
|---|---|---|---|
| A | 日付 | トレーニングした日 | 2026-08-08 |
| C | 種目名 | 種目の名前。表記は必ず固定する | ベンチプレス |
| D | セット番号 | その種目の何セット目か | 1 |
| E | 重量(kg) | 扱った重量。数値だけを入れる | 60 |
| F | 回数 | 挙げた回数。数値だけを入れる | 8 |
※ B列は次の表のとおり空けておきます。「60kg」のように単位を付けて入力するとセルが文字列になり、合計も最大値も計算できません。単位は見出し側に書いておきます
残りの4列は、作るだけ作って空のままにします。
| 列 | 見出し | 入れるもの |
|---|---|---|
| B | ワークアウト名 | その日のメニューの名前。「プッシュの日」など |
| G | セット種別 | ウォームアップ、ドロップセットなどの区別 |
| H | RPE | そのセットのきつさ。使わないなら空のまま |
| I | メモ | フォームの気づき、体調、使ったマシンの番号など |
※ この9列の並びは LiftLog が書き出す CSV の1行目(date / workout_name / exercise_name / set_number / weight / reps / tag / rpe / notes)と同じ順序にしてあります。揃えておくと、あとで書き出したCSVをそのまま下に貼り足せます
順番をアプリのCSVに合わせているのには理由があります。スプレッドシートで始めた人がのちに記録アプリへ移っても、あるいは併用しても、列の並びが同じなら過去の記録と新しい記録を1枚のシートにまとめられるからです。B列を空けたまま使うのは少し不自然に見えますが、あとで貼り付ける側の手間が消えます。
計算のための列を3つ足す
ここまでが入力する列です。J列から右は、式を入れて自動で埋まる列にします。
| 列 | 出すもの | 2行目に入れる式 |
|---|---|---|
| J | 総負荷量(重量 × 回数) | =E2*F2 |
| K | 推定1RM(Epley式) | =E2*(1+F2/30) |
| L | その週の月曜日 | =A2-WEEKDAY(A2,2)+1 |
※ 2行目に入れてから下の行へコピーします。推定1RMをBrzycki式で出したい場合は =E2*36/(37-F2) です。WEEKDAY の第2引数に 2 を渡すと月曜日が 1 になるので、日付から週の始まりを逆算できます(Google ドキュメント エディタ ヘルプ)
推定1RMのEpley式は、1985年にボイド・エプリー氏が発表した式です。重量に「1 + 回数 ÷ 30」を掛けるだけなので、セルには重量のセルと回数のセルを指定して書きます。Brzycki式は1993年にマット・ブジッキ氏が学術誌で発表した式で、重量に36を掛けて「37 − 回数」で割ります。どちらも実測値ではなく推定で、回数が多いセットほど2つの式の差が開きます。差そのものが推定の幅だと考えて、片方だけを信じないほうが安全です。
1RM計算機重量と回数から最大挙上重量を推定できます。Epley式・Brzycki式の両方と%1RM換算表つき(登録不要)集計は3つ作れば足りる
列ができたら、見るための表を作ります。作るのは3つで足ります。
週ごとの総負荷量
いちばん使うのがこれです。L列(その週の月曜日)とJ列(総負荷量)が揃っていれば、ピボットテーブルで数十秒です。
表の中のセルを1つ選ぶ
上部のメニューで「挿入」→「ピボット テーブル」をクリックする― 公式ヘルプが「列ごとに見出しを付ける必要があります」と書いているとおり、1行目の見出しは必須です
サイドパネルの「行」の横にある「追加」から「その週の月曜日」を選ぶ
「値」の横にある「追加」から「総負荷量」を選ぶ― 集計方法は合計(SUM)のままで構いません
種目別や部位別に分けたいときは「列」にも項目を足す
関数で出すこともできます。公式ヘルプに載っている構文は SUMIFS(合計範囲, 条件範囲1, 条件1, [条件範囲2, 条件2, ...]) で、条件は「条件範囲と条件」の組で何組でも足せます。
| 出したいもの | 式 | 読み方 |
|---|---|---|
| ある週の総負荷量 | =SUMIFS(J:J, L:L, N2) | N2に週の月曜日を入れておくと、その週のJ列だけを合計する |
| ある週のベンチプレスの総負荷量 | =SUMIFS(J:J, L:L, N2, C:C, "ベンチプレス") | 条件の組を足すだけで絞り込みが増える |
| ベンチプレスの最高重量 | =MAXIFS(E:E, C:C, "ベンチプレス") | C列がベンチプレスの行から、E列の最大値を返す |
| ベンチプレスの推定1RM最高値 | =MAXIFS(K:K, C:C, "ベンチプレス") | 同じ考え方でK列の最大値を見る |
※ MAXIFS の構文は MAXIFS(範囲, 条件範囲1, 条件1, [条件範囲2, 条件2, …])。種目名を式に直接書かず、別のセル(例: N3)に置いて =MAXIFS(E:E, C:C, N3) の形にしておくと、種目を打ち替えるだけで使い回せます
種目別の最高記録
上の表の下2行がそのまま使えます。種目名を縦に並べた小さな表を別に作り、その右にMAXIFSを置くと、自己ベストの一覧ができあがります。重量の最高値と、推定1RMの最高値の2列を並べておくと、重量が横ばいでも回数が伸びている期間を見落とさずに済みます。
推移のグラフ
グラフは、記録用の表から直接作らないほうがうまくいきます。1行1セットの表には全種目が混ざっているためです。ピボットテーブルで「行=日付、列=種目名、値=推定1RMの最大」という表を作り、その集計結果の範囲を選んでグラフを挿入します。
種目が多くて1つずつグラフを作るのが面倒なら、SPARKLINE関数が使えます。1つのセルの中にミニグラフを描く関数で、構文は SPARKLINE(データ, [オプション]) です。種目名を縦に並べた一覧の右隣に置くと、種目ごとの推移が一覧のまま見渡せます。
特定の種目だけを時系列で追いたいだけなら、集計を作らずフィルタで絞り込むのがいちばん速いです。1行1セットで持っていれば、種目名の列で絞るだけでその種目の履歴になります。
入力を軽くする3つの設定
作った直後のシートは、ジムで使うには重いままです。手を入れるのは3か所だけで変わります。
種目名はプルダウンにする。 手打ちだと表記がぶれます。「ベンチプレス」と「ベンチ プレス」は集計上まったく別の種目として扱われるので、MAXIFSもピボットテーブルも噛み合わなくなります。パソコンなら「挿入」→「プルダウン」、または「データ」→「データの入力規則」→「ルールを追加」から設定できます。自分がやる種目を20個ほど登録しておけば、以降は選ぶだけです。
日付は毎回打たない。 同じ日の行が続くので、1行目に入れた日付のセルをコピーして、その日のぶんの行にまとめて貼ります。打ち込むのは1日1回で済みます。
触る列を隣り合わせにしておく。 9列構成では重量(E列)と回数(F列)が隣です。スマートフォンの画面では横スクロールが起きるので、毎回触る2つが隣にあるかどうかで手数が変わります。列の順番を勝手に入れ替えないほうがいい理由の1つです。
そもそも記録する項目自体を削る話は、筋トレの記録がめんどくさい人へに分けて書いています。スプレッドシートでも考え方は同じで、埋める欄が少ないほど続きます。
スプレッドシートで埋まらない4つ
自由度と引き換えに諦めることがあります。ここを知らずに始めると、2週間で止まります。
前回の記録が出てこない。 記録アプリの入力画面は「前回: 60kg × 8回」を自動で出しますが、スプレッドシートは自分で上にスクロールして探すか、関数を組むことになります。セットの合間にこれをやるのは、思っているより負担です。VLOOKUPやXLOOKUPで直前の値を引く仕組みは作れますが、そこまで組むなら記録アプリを使うほうが早い、という判断になりがちです。
レストタイマーがない。 休憩を測る機能はないので、別のタイマーアプリと行き来します。セット完了と同時に測り始める作りにはできません。
集計はパソコンで開く前提になる。 ピボットテーブルの公式ヘルプは、iPhone と iPad 向けのページにも Android 向けのページにも「ピボット テーブルを使用するには、パソコンで sheets.google.com にアクセスしてください。」と書いています。つまり、いちばん強力な集計機能はスマートフォンのアプリでは扱えません。関数とフィルタはスマートフォンでも動くので、集計をどうしてもスマートフォンで完結させたいなら、ピボットテーブルを使わずSUMIFSとMAXIFSで組む形になります。
スマートフォンの画面に9列は収まりません。 横スクロールしているうちに、いま何行目を触っているのか分からなくなります。1行目の見出しを固定しておくと多少ましになりますが、アプリの入力画面と同じ快適さにはなりません。
裏返すと、自由度は表計算ソフトのほうが上です。 列を自分で決められるので、アプリに用意されていない指標をそのまま持てます。自分で組んだプログラムの目標セット数、種目ごとの調子の点数、使ったマシンの番号、特殊な補助種目。どれも列を1つ足すだけで記録できます。アプリ側の仕様変更に影響されないのも利点です。この使い分けはPCで使える筋トレ記録アプリにも整理してあります。
なお費用については、Excelはブラウザ版をMicrosoftアカウントで無料で使えると公式に案内されています。Googleスプレッドシートも、Googleアカウントがあればブラウザから使えます。
アプリの記録をCSVで流し込む
スプレッドシートと記録アプリは、どちらかを選ぶものではありません。入力はアプリ、集計はスプレッドシートという併用がいちばん現実的です。
多くの記録アプリはCSVの書き出しに対応していて、書き出したファイルは表計算ソフトでそのまま開けます。LiftLogの場合は、設定画面の「データのエクスポート」から「ワークアウトデータをダウンロード」を押すと liftlog-export.csv が落ちてきます。1セットが1行で、日付・ワークアウト名・種目名・セット番号・重量・回数・セット種別・RPE・メモの9列。BOM付きで書き出しているので、Excelでそのまま開いても日本語が化けません。対象は完了したワークアウトの完了したセットだけで、体重・栄養・テンプレート・AIとの会話は含まれません。画面ごとの手順はLiftLog Web版の使い方にまとめています。
この記事の9列構成は、このCSVと同じ並びにしてあります。ですので、CSVを開いて2行目から下をコピーし、自分のシートの末尾に貼るだけで統合できます。貼ったあとにJ列・K列・L列の式を下までコピーすれば、総負荷量も推定1RMも週の始まりも埋まります。
まとめ
- 表の持ち方は1行1セット。日付を横に伸ばす形にすると、集計の式が毎回壊れる
- 列は9つ作り、埋めるのは日付・種目名・セット番号・重量・回数の5つでいい
- 重量と回数は数値だけを入れる。単位を書くと文字列になって計算できない
- 計算列は総負荷量・推定1RM・その週の月曜日の3つ。ここから集計がすべて出る
- 集計は週ごとの総負荷量・種目別の最高記録・推移のグラフの3つで足りる
- 埋まらないのは前回値の表示・レストタイマー・スマホでの集計と視認性。自由度は表計算のほうが上
- 記録アプリのCSVと列の並びを揃えておけば、あとから貼り足して併用できる


