過去完了形とは — 過去の「もっと前」を表す形を根本から

現在完了形で、have + 過去分詞という形が「過去と現在をつなぐ」働きをすることを学びました。今回はその完了形の感覚を、過去進行形のときと同じように、過去へスライドさせます。

時制の全体マップで位置を確認しましょう。

単純形 進行形 完了形
現在 現在形 現在進行形 現在完了形
過去 過去形 過去進行形 過去完了形 ← この記事
未来 未来形 未来進行形 未来完了形

完了形の列を、現在から過去へ一段下ろした位置にいるのが過去完了形です。

過去進行形のときと、論理は同じです。現在進行形が「今この一点で進行中」を切り取るなら、過去進行形は「あのとき進行中だった」を切り取りました。同じように、現在完了形が「過去から現在へのつながり」を表すなら——

過去完了形は、「もっと前の過去から、過去のある時点へのつながり」を表す形です。

「軸足」が、現在から過去のある時点へとずれただけ。現在完了の理屈をそっくり過去に平行移動したのが過去完了形——これが基本のイメージです。

ただし、過去完了形には独特の主役があります。過去のある出来事を語っているときに、それより前に起きた出来事を表す——これが過去完了の中心的な役目です。

「彼が着いたとき、私はもう食事を終えていた」

「彼が着いた」が過去のある時点。「食事を終えていた」はそれより前に完了していた——この二段階の過去を区別するために、過去完了形が登場します。

←————————————————————————→ 時間軸
    ↑                ↑
食事を終えていた   彼が着いた
(過去完了)      (過去形)
   もっと前         過去の時点

過去のある一点を基準に、それより前に起きたことを別の形(had + 過去分詞)で表すことで、二つの過去が前後関係を持って整理されます。日本語の「〜していた」「〜してしまっていた」が、これに当たります。

この「過去の前後関係を作る」用法は、本記事の用法1で詳しく扱います。本丸はそこです。まずは過去完了形そのものを、根っこから見ていきましょう。

過去完了形とは何か — 「過去の基準点」から見て、さらに前

形は現在完了の have が had になっただけ

過去完了形の形は、had + 動詞の過去分詞 です。

現在完了形の have / has を、過去形の had に変えるだけ。それ以外は何も変わりません。過去分詞のつけ方も、否定・疑問の作り方も、現在完了でやったことがそのまま使えます。主語による形の変化もありません(I も he も had で同じ)。

意味も同じ理屈で導けます。現在完了は have が「今、〜を持っている」という現在の足場を作っていました。過去完了はその have が had になることで、足場が過去のある時点に移ります。

パーツ 現在完了 過去完了
助動詞 have / has(現在) had(過去)
過去分詞 完了した動作 完了した動作
全体の意味 過去の動作を、今抱えている 過去の動作を、過去のある時点で抱えていた

「過去のある時点で、もうその動作を完了させていた」——これが過去完了形の核心です。

必ず「過去の基準点」とセットで使う

ここが過去完了形の独特なところです。現在完了は「今」という基準点が話し手と聞き手の間で共有されていたので、単独で使えました(I have lost my key. と言えば「今」を基準に過去を見ている)。

ところが過去完了形は、「過去のどの時点を基準にしているか」を文脈で示す必要があります。基準点なしに過去完了だけ出てきても、「いつから見て前なのか」が分からないからです。

基準点の示し方は、主に三つあります。

「過去の基準点」の示し方
過去形の文で示す When he arrived, I had already eaten.
時を表す節(when, before, by the time など) By the time he arrived, I had eaten.
文脈の流れ(物語の中で) She opened the box. Someone had hidden a note inside.

一つめが過去完了の典型パターンです。「彼が着いた(過去の基準点)」「私はすでに食べ終えていた(それより前の過去=過去完了)」——過去形と過去完了形のペアで、過去の二時点の前後関係が作られます。

過去進行形との設計上の双子関係

過去完了形は、現在完了形を過去にスライドさせた形——という設計は、過去進行形と完全に同じ構造です。完了形と進行形を比較してみてください。

現在 過去
進行形 am/is/are + -ing was/were + -ing
完了形 have/has + 過去分詞 had + 過去分詞

どちらも「現在の助動詞を過去形に変えるだけ」のスライドです。意味のうえでも、「現在から見て進行中」が「過去から見て進行中」になる(過去進行形)、「現在から見て完了」が「過去から見て完了」になる(過去完了形)——理屈はそっくり同じ。過去進行形のとき身につけた「進行形のイメージを過去にずらす」という発想が、ここでも使えます。

過去進行形が「過去のある時点で進行中だった動作」を、過去形と組み合わさって「背景+出来事」の立体を作ったように——過去完了形は「過去のある時点で完了していた動作」を、過去形と組み合わさって「もっと前+過去の基準点」の前後関係を作ります。

完了形の縦の系列

進行形に縦の列があったように、完了形にも縦の列があります。

時制 意味
現在完了形 have / has + 過去分詞 過去から現在へのつながり
過去完了形 had + 過去分詞 もっと前から、過去のある時点へのつながり
未来完了形 will have + 過去分詞 未来のある時点までに完了しているつながり

助動詞の形を変えれば、完了のイメージをどの時点にも置けます。過去完了形を理解すれば、未来完了形も自動的に手に入る、と言っていいくらいです。

形のおさらい — had + 過去分詞

過去完了形の形は、had + 動詞の過去分詞 です。既習の二つの要素を組み合わせるだけなので、新しく覚えることはほぼありません。

この二つが分かっていれば、過去完了形の形は完成です。

主語による変化なし

過去完了形の最大のラクなところは、主語に関係なく had で統一できることです。現在完了形では三単現で has になりましたが、過去完了の had は誰が主語でも had のままです。

主語
I / you / he / she / it / we / they had + 過去分詞
  • I had finished my homework.
  • She had finished her homework.
  • They had finished their homework.

すべて had。主語による使い分けを意識しなくていい分、現在完了より一段とシンプルになっています。

肯定・否定・疑問

否定は had の後ろに not、疑問は had を主語の前に出します。現在完了の have / has と同じ操作で、do / did は使いません。

肯定 had + 過去分詞 I had finished my homework.
否定 had + not + 過去分詞 I hadn’t finished my homework.
疑問 Had + 主語 + 過去分詞? Had you finished your homework?

短縮形は I’d / you’d / he’d / she’d / we’d / they’d。否定は hadn’t です。答え方も had で受けます。

  • Had you finished? — Yes, I had. / No, I hadn’t.

短縮形 I’d は、I had だけでなく I would の短縮形でもあります。He’d done it. の ’d が had(過去完了)か would(仮定法など)かは、後ろの形で見分けます。had なら過去分詞(done)、would なら原形(do)が続きます。ここでは done が過去分詞なので had と判断できる、というわけです。

過去分詞(おさらい)

過去分詞の作り方は現在完了形と完全に同じです。詳細は現在完了形の記事に譲りますが、要点だけ再掲します。

種類 過去形と過去分詞の関係
規則動詞 同じ形(-ed) play - played - played
不規則:3形同じ 三つとも同じ put - put - put
不規則:過去形=過去分詞 過去形と過去分詞が同形 have - had - had
不規則:3形違う 三つとも違う go - went - gone

形は以上です。本記事の核心はここから先——4つの用法、とりわけ用法1の「過去の前後関係」です。

過去完了形は「いつ・なぜ」使うのか — 4つの用法

過去完了形の用法は、現在完了形のスライド版(継続・経験・完了)に加えて、過去完了独自の主役がもう一つあります。

用法 表すもの
過去の前後関係(本丸) 過去のある時点より、さらに前に起きた出来事
継続 過去のある時点まで、ずっと続いていたこと
経験 過去のある時点までに、〜したことがあった
完了 過去のある時点までに、もう完了していた

用法1が、過去完了形のいちばんの主役です。順に見ていきましょう。

用法1:過去の前後関係 — 「もっと前の過去」を語る(本丸)

過去のある出来事を語っているときに、それより前に起きた別の出来事を、別の形で区別して表す——これが過去完了形の中心的な使い方です。

  • When he arrived, I had already eaten.(彼が着いたとき、私はもう食べ終えていた)
  • She realized that she had left her wallet at home.(彼女は財布を家に置いてきたことに気づいた)
  • The train had already left when we got to the station.(駅に着いたとき、電車はもう出ていた)

各文には過去の二つの出来事があり、形で区別されています。

出来事 時間軸の位置 使う形
後の出来事(過去の基準点) 過去のある時点 過去形
先の出来事(基準より前) もっと前 過去完了形

「彼が着いた(過去の基準点)」より前に「食べ終えていた(過去完了)」。「気づいた(過去の基準点)」より前に「財布を置いてきた(過去完了)」。過去の二時点が、形の違いで前後関係を持って整理されているわけです。

←———————————————————→ 時間軸
   ↑               ↑
過去完了形         過去形
(もっと前)    (過去の基準点)

「大過去」という呼び方

このように「過去のある時点より、さらに前」を表す用法を、日本の伝統的な文法では大過去と呼びます。

過去のさらに過去——それを示すために、過去形より「もう一段奥」にある形(過去完了)を使う、というイメージから来た用語です。本記事では「過去の前後関係」「もっと前の過去」と自然な言葉で説明しますが、参考書などで「大過去」という用語に出会ったときに「あ、これのことか」と気づけるようにしておくと便利です。

過去形だけで足りる場合との違い

過去の出来事が複数あっても、必ずしも過去完了が必要なわけではありません。出来事が順番に起きていることが文脈で明確なら、すべて過去形で並べるのが自然です。

  • I woke up, made coffee, and read the newspaper.(起きて、コーヒーを淹れ、新聞を読んだ)

これは過去形の用法3「連続した出来事」で扱ったとおりで、時系列で進む物語なら過去形だけで十分です。

過去完了が出るのは、順番が一目で分からないときや、前後関係をはっきり示したいときです。

  • I had already eaten when he arrived.
  • 「彼が着いた」より「食べ終えた」のほうが先、という前後関係を明示するために had を使う

「彼が着いたとき、すでに食べ終えていた」のような場合、過去形だけで I ate when he arrived. と言うと「彼が着いた、そのとき食べた」のように同時のニュアンスになりかねません。前後関係をはっきり示したいときに過去完了が活躍する、という分担です。

用法2:継続(過去のある時点まで続いていた)

現在完了の継続用法(過去から現在まで続く)を、過去にスライドしたものです。「過去のある時点まで、ずっと〜していた」という、より前から基準点までの継続を表します。

  • He had lived in Tokyo for ten years when he moved to Osaka.(大阪に引っ越したとき、彼は10年間東京に住んでいた)
  • She had worked at the company for five years before she quit.(彼女は会社を辞めるまで5年間そこで働いていた)
  • We had known each other for a long time when we started dating.(付き合い始めたとき、私たちはもう長い付き合いだった)

現在完了の継続用法と同じく、for(期間)や since(起点)と相性が良い用法です。違いは、ゴールが「今」ではなく「過去のある時点」になっていることだけ。状態動詞(live, know, work など)と組み合わさるのも現在完了の継続用法と同じです。

用法3:経験(過去のある時点までに〜したことがあった)

現在完了の経験用法(今までにしたことがある)を過去にスライドしたものです。「過去のある時点までに、〜した経験があった」を表します。

  • I had never been to Paris before that trip.(その旅行までは、パリに行ったことがなかった)
  • She had read the book twice by then.(そのときまでに、彼女はその本を2回読んでいた)
  • He had met her several times before the meeting.(その会議の前に、彼は彼女と何度か会ったことがあった)

ever, never, before, by then などが目印になるのも、現在完了の経験用法とまったく同じです。「今までの経験」が「あのときまでの経験」にずれただけ、と理解してください。

用法4:完了(過去のある時点までに完了していた)

現在完了の完了用法(過去の動作の結果が今に及ぶ)を過去にスライドしたものです。「過去のある時点までに、もう動作が完了していた/その影響を抱えていた」を表します。

  • By the time he called, I had already finished the report.(彼が電話してきたときには、もうレポートを終えていた)
  • The movie had just started when we entered the theater.(映画館に入ったとき、映画はちょうど始まったところだった)
  • She had already left when I arrived.(私が着いたとき、彼女はもう出発していた)

just, already, by the time などが目印になるのも、現在完了の完了用法と同じ。「今」が「過去のある時点」に置き換わっているだけです。

4用法の共通点 — すべて「過去の基準点から見た過去」

ここまでの4用法に共通するのは、過去のある時点を基準にして、それより前を表しているという点です。

用法 過去の基準点との関係
過去の前後関係 基準点より前に起きた出来事
継続 基準点まで続いていた
経験 基準点までに経験していた
完了 基準点までに完了していた

現在完了が「現在」を基準にしていたのに対し、過去完了は「過去のある時点」を基準にする——基準点がずれているだけ、というのが過去完了形の全体構造です。だから現在完了形を理解していれば、過去完了形は形を変えてスライドさせるだけで身につきます。

つまずきポイント

落とし穴1:過去形だけで足りるのに過去完了を使ってしまう

過去完了形を学んだあと、過去の出来事を語るときに何でも過去完了にしようとするミスです。セクション4で触れたとおり、時系列が明確なら過去形だけで十分で、過去完了は不要です。

  • 不自然:I had woken up, had made coffee, and had read the newspaper.
  • 自然:I woke up, made coffee, and read the newspaper.

過去完了が出るのは、順序が一目で分からないときや、前後関係を強調したいときだけです。出来事が順番に並んでいる物語の語りでは、過去形を並べるのが自然です。

判断の問いはシンプルです——「この前後関係は、過去形だけで読み手に伝わるか?」 文脈で順序が明らかなら過去形、明らかでないなら過去完了を投入する。

落とし穴2:過去の基準点なしで過去完了を使う

過去完了形は「過去のある基準点から見て、さらに前」を表す形でした。だから基準点がない文脈では使えません

  • 不自然:I had eaten breakfast.(基準点がなく、いつから見て前なのか不明)
  • 自然:I had eaten breakfast when he called.(he called が基準点)
  • 自然:I had eaten breakfast by 9 AM.(by 9 AM が基準点)

「過去のことを丁寧に言いたい」という理由で過去完了を選ぶのは間違いです。基準点(過去形の文、by + 時刻、by the time + 節など)とセットで初めて、過去完了形は意味を持ちます。

落とし穴3:「大過去」というだけで反射的に過去完了にする

「過去のさらに過去だから過去完了」と機械的に判断してしまうミスです。実際には、時系列が明確で誤解の余地がなければ、過去のさらに過去でも過去形のままでOKです。

  • 自然:Before he arrived, I ate breakfast.(before があるので順序明確、過去形でOK)
  • 自然:Before he arrived, I had eaten breakfast.(過去完了でも正しい。前後関係を強調)

before や after のように順序を示す語があると、もう順序は明らかなので過去形だけで通じます。過去完了に「しなければならない」場面は、思っているより少ないのが実情です。

落とし穴4:仮定法・時制の一致の had + 過去分詞と混同する

過去完了形の形(had + 過去分詞)は、ほかの文法事項でも登場します。

  • 仮定法過去完了:If I had known, I would have helped.(知っていたら、助けたのに)
  • 時制の一致:He said he had finished.(彼は終えたと言った)

これらは形は過去完了と同じですが、表しているものが違います。

用法 表すもの
過去完了形 had + 過去分詞 過去の基準点より前の出来事
仮定法過去完了 had + 過去分詞 過去に反する仮定(実際にはそうではなかった)
時制の一致 had + 過去分詞 過去の主節に合わせて、その前の出来事を一段ずらす

文脈で見分けることになりますが、本記事で扱うのはあくまで「過去の基準点より前の出来事」を表す過去完了形だけです。仮定法と時制の一致は、形は同じでも別の文法ルールに従うので、それぞれ仮定法・時制の一致の記事で扱います。

落とし穴5:’d の見分けがつかない

セクション3で触れたとおり、短縮形 I’d は I hadI would の二通りに使われます。He’d done it. の ’d がどちらかを判断するには、後ろの動詞の形を見ます。

’d の正体 後ろの形
had(過去完了) 過去分詞 He’d done it.(He had done it.)
would(仮定法など) 原形 He’d do it.(He would do it.)

He’d done it. は done が過去分詞なので had、He’d do it. は do が原形なので would——「’d の後ろが過去分詞か原形か」が見分けの決め手です。

読むときも書くときも、’d を使うときは後ろの動詞の形と整合しているか意識しましょう。

まとめ早見表

過去完了形の4つの用法

用法 表すもの 例文 目印になる語
過去の前後関係(本丸) 過去の基準点より前の出来事 When he arrived, I had already eaten. when, by the time
継続 過去の基準点まで続いていた He had lived there for ten years when he moved. for, since
経験 過去の基準点までの経験 I had never been to Paris before that trip. ever, never, before, by then
完了 過去の基準点までに完了 She had already left when I arrived. just, already, by the time

形の作り方

肯定 had + 過去分詞 She had finished.
否定 had + not + 過去分詞 She hadn’t finished.
疑問 Had + 主語 + 過去分詞? Had she finished?

主語による変化なし(誰が主語でも had)。短縮形:I’d / you’d / he’d / she’d / we’d / they’d、否定は hadn’t。

’d の見分け方

’d の正体 後ろの形
had(過去完了) 過去分詞 He’d done it.
would(仮定法など) 原形 He’d do it.

完了形の縦の系列

時制 意味
現在完了形 have / has + 過去分詞 過去から現在へのつながり
過去完了形 had + 過去分詞 もっと前から、過去の基準点へのつながり
未来完了形 will have + 過去分詞 未来の時点までに完了している

現在完了 vs 過去完了 — 基準点がずれているだけ

現在完了 過去完了
基準点 現在 過去のある時点
助動詞 have / has had
用法の構造 継続・経験・完了 過去の前後関係 + 継続・経験・完了

つまずきチェックリスト

こんなとき 正しくは
過去の話を全部過去完了にしたくなる 時系列が明確なら過去形でOK
過去完了を単独で使いたくなる 過去の基準点(過去形の文、by 〜 など)とセットで
「過去のさらに過去」だから反射的に過去完了 before / after があれば過去形でも順序は通じる
仮定法の had+過去分詞と混同する 文脈で判断、深掘りは仮定法の記事へ
’d が had か would か分からない 後ろが過去分詞なら had、原形なら would

判断に迷ったら、過去完了の中心イメージに戻ってください——過去のある基準点から見て、さらに前を表す。基準点がない、または順序が文脈で明らかなら、過去完了は不要です。

次に読むとよい記事

過去完了形までで、時制シリーズの主要な形(単純・進行・完了の3系列 × 現在・過去)がほぼそろいました。ここから先は、時制を土台にした発展的な文法へ進む段階です。

  • 現在完了形 — 過去完了形の親にあたる形です。「基準点が現在か過去か」の違いを意識して、両方をセットで理解したいときに。
  • 仮定法(作成予定)— If I had known, I would have helped. のような「過去に反する仮定」では、過去完了形と同じ形(had + 過去分詞)が登場します。形は同じでも別の文法ルールに従う領域です。
  • 時制の一致(作成予定)— He said he had finished. のように、主節が過去のとき従属節の時制が一段ずれるルールです。ここでも過去完了形(had + 過去分詞)が活躍します。
  • 過去進行形 — 過去完了形と同じく「現在の形を過去にスライドさせる」設計の形です。スライドの考え方を別の系列で確認したいときに。
  • 助動詞(作成予定)— have + 過去分詞という構造は、助動詞 + 原形(will go, can go)の親戚です。完了形を理解した今、助動詞の世界へ進むのは自然な流れです。