B2 · 中上級 TOEIC 605–780 IELTS 5.5–6.5 時制とアスペクト

過去完了進行形

過去完了進行形(had been + -ing)を学び、過去の出来事の前に続いていた動作の期間を強調しよう。

シェア: コピーしました!

過去完了進行形とは?基本の意味と使うタイミング

過去完了進行形(Past Perfect Continuous、別名:過去完了進行相)は、「過去のある時点よりも前に始まった動作が、その過去の時点まで(あるいはその直前まで)続いていたこと」を表す時制です。英語では "had been + 動詞のing形" という形を使います。

日本語には「過去完了進行形」に完全に対応する文法形式がありません。日本語では「〜していた」という表現だけで、過去のどの時点を基準にしているのか、どれくらいの期間続いていたのかを厳密に区別しません。そのため、日本人学習者は過去完了進行形と過去進行形、過去完了形の違いを感覚的に掴みにくいというつまずきポイントがあります。

この時制のポイントは次の2つです。

  • 過去の基準点(reference point)が必要:「〜した時」「〜するまで」のような、過去のある1点を示す表現が文中(または文脈)に必要
  • 継続期間や原因・結果のニュアンス:基準点までの「継続時間」や、その動作が基準点での出来事の「原因」になっていることを強調する

なぜこの文法が重要かというと、英語のニュース記事、小説、ビジネスメールなどで「過去のある出来事の背景」を説明する際に非常によく使われるからです。この時制を正確に理解することで、英文の時間関係をより立体的に読み解けるようになります。

過去完了進行形の形(公式)と作り方

基本の形

文の種類 形(公式) 例文
肯定文 主語 + had been + 動詞ing She had been waiting for an hour.
否定文 主語 + had not (hadn't) been + 動詞ing She hadn't been waiting long.
疑問文 Had + 主語 + been + 動詞ing ~? Had she been waiting long?
疑問詞疑問文 疑問詞 + had + 主語 + been + 動詞ing ~? How long had she been waiting?

had been はどの主語(I, you, he, she, it, we, they)でも形が変わりません。日本人学習者がよく混乱する be動詞の人称変化(am/is/are, was/were)を気にする必要がないのは、この時制の覚えやすいポイントです。

動詞ing形の作り方(復習)

ルール 動詞の原形 ing形
基本はそのまま+ing work working
eで終わる語はeを取って+ing write writing
短母音+子音字で終わる語は子音字を重ねる run running
ieで終わる語はyに変えて+ing lie lying

例文で見る基本形

  • 肯定文:They had been living in Osaka for ten years before they moved to Tokyo.
     (彼らは東京に引っ越す前、10年間大阪に住んでいた。)
  • 否定文:He hadn't been feeling well for a few days before he finally saw a doctor.
     (彼は数日体調が優れなかった末に、ようやく医者に診てもらった。)
  • 疑問文:Had you been studying English before you got this job?
     (この仕事に就く前、あなたは英語を勉強していたのですか?)

過去完了進行形の主な用法と例文

用法1:過去のある時点まで続いていた動作の継続期間を強調する

過去の基準点(〜した時、〜するまで)に至るまで、ある動作がどれくらいの期間続いていたかを強調する用法です。for(〜の間)や how long(どれくらいの間)とセットでよく使われます。

  • I had been working at that company for five years when it went bankrupt.
     (その会社が倒産した時、私はそこで5年間働いていた。)
  • How long had they been dating before they got married?
     (彼らは結婚する前、どれくらいの間付き合っていたのですか?)

用法2:過去の出来事の「原因」を説明する

過去のある結果(多くは過去形で表される)の原因が、それ以前から続いていた動作にあったことを示します。

  • The ground was wet because it had been raining all night.
     (一晩中雨が降り続いていたので、地面は濡れていた。)
  • She was exhausted because she had been running for two hours.
     (彼女は2時間走り続けていたので、疲れ果てていた。)

用法3:過去のある時点の直前まで続いていた動作(結果が今も見える/感じられる)

過去のある瞬間に、それまで続いていた動作の「痕跡」や「余韻」が残っている状況を描写します。過去完了形(had + 過去分詞)が「完了・結果」を表すのに対し、過去完了進行形は「その動作自体が続いていた様子」に焦点を当てます。

  • His hands were shaking because he had been typing for hours.
     (彼が何時間もタイピングし続けていたので、手が震えていた。)
  • The kids were covered in mud. They had been playing in the garden.
     (子どもたちは泥だらけだった。庭で遊び続けていたのだ。)

用法4:2つの過去の出来事の時間的な前後関係を明確にする

過去完了進行形は、文中のもう一つの過去形の動詞よりも「さらに前」から続いていたことを明示するのに使われます。ストーリーテリングや報告文で、時系列を正確に伝えたいときに便利です。

  • When the police arrived, the man had been shouting for several minutes.
     (警察が到着した時、その男は数分間叫び続けていた。)
  • By the time she called me back, I had been sleeping for hours.
     (彼女が私に折り返し電話をくれた頃には、私は何時間も眠っていた。)

過去完了進行形と紛らわしい時制との比較

日本人学習者が最も混同しやすいのが、「過去進行形」「過去完了形」「現在完了進行形」との違いです。以下の表で整理しましょう。

時制 焦点 例文
過去進行形 was/were + ing 過去のある時点で進行中だった動作(基準点は1つ) I was studying when she called. (彼女が電話してきた時、私は勉強していた=その瞬間の状況)
過去完了進行形 had been + ing 過去のある時点より前から、その時点まで続いていた動作の継続 I had been studying for two hours when she called. (彼女が電話してきた時までに、私は2時間勉強し続けていた=継続の長さと原因)
過去完了形 had + 過去分詞 過去のある時点より前に完了・終了していた動作や出来事 I had finished studying when she called. (彼女が電話してきた時には、勉強は終わっていた=完了)
現在完了進行形 have/has been + ing 過去から現在まで続いている動作の継続 I have been studying for two hours. (私は2時間勉強し続けている=今も継続中)

学習のポイント:過去完了進行形と過去完了形の違いは、「動作そのものの継続」に焦点があるか、「動作の完了・結果」に焦点があるかです。例えば "I had read the book"(その本を読み終えていた=完了)と "I had been reading the book"(その本を読み続けていた=継続中だった、まだ読み終わっていない可能性もある)では、ニュアンスが異なります。ネイティブの感覚では、進行形が付くと「動作の途中経過・プロセス」が強調されるとイメージすると理解しやすくなります。

日本人学習者がよく間違えるポイント

❌ 誤り ⭕ 正しい表現 なぜ間違いなのか
I had been know him for years. I had known him for years. know, love, believe, want, need などの状態動詞(stative verbs)は原則として進行形にしない。日本語の「知っていた」という継続的なニュアンスにつられて、ついing形にしてしまうミスが非常に多い。
She had been arrived when I called. She had arrived when I called. / She had already left when I called. arrive, leave, start, finish のような瞬間的に完了する動詞(動作動詞でも一瞬で終わるもの)は、継続のイメージを表す進行形と相性が悪い。完了を表したい場合は過去完了形(had + 過去分詞)を使う。
Yesterday, I had been study English for two hours. Yesterday, I studied English for two hours. / By the time she arrived, I had been studying English for two hours. 過去完了進行形は「単独の過去の出来事」には使わない。必ず「もう一つの過去の基準点」が必要。基準点がない場合はただの過去形で十分。
I have been studying before she called. I had been studying before she called. 現在完了進行形(have been)と過去完了進行形(had been)の混同。文全体が過去の話(called)なら、それより前の継続は had been を使う。「時制の一致」の感覚が日本語にはないため、うっかり have を使ってしまうミスが多い。
He had been study English for 3 years when he moved to the US.(動詞の活用ミス) He had been studying English for 3 years when he moved to the US. been の後ろは必ず動詞のing形。過去分詞や原形と混同しないよう注意。
I had been go there many times before that day. I had gone there many times before that day. 「回数・経験」を表す場合は継続ではなく完了(had + 過去分詞)を使う。「〜したことがあった」という反復の経験は進行形にしない。

学習のポイント:日本語の「ずっと〜していた」という表現を英語にする時、条件反射的に had been + ing にしてしまう学習者が多いですが、動詞が状態動詞(know, believe, love, have=所有の意味 など)の場合は進行形にできないというルールを必ず思い出しましょう。これは現在完了進行形・過去進行形すべてに共通する重要な注意点です。

日常会話・ライティングで使える自然な例文

  • We had been talking on the phone for almost an hour before we realized it was already midnight.
     (私たちはもう夜中だと気づく前、ほぼ1時間電話で話し続けていた。)
  • My father had been working as an engineer for twenty years before he retired last spring.
     (父は去年の春に退職する前、20年間エンジニアとして働き続けていた。)
  • Had you been waiting long before the train finally arrived?
     (電車がようやく到着するまで、あなたは長い間待っていたのですか?)
  • The company had been losing money for months before the CEO decided to cut costs.
     (CEOがコスト削減を決断する前、その会社は何か月も損失を出し続けていた。)
  • I was so tired at the party because I had been cooking since early morning.
     (朝早くから料理をし続けていたので、パーティーの時は本当に疲れていた。)
  • She hadn't been sleeping well for weeks, so her doctor suggested she take a short vacation.
     (彼女は何週間もよく眠れていなかったので、医者は短い休暇を取るよう勧めた。)
  • By the time the firefighters arrived, the fire had been burning for over an hour.
     (消防士たちが到着する頃には、火は1時間以上燃え続けていた。)

まとめ:過去完了進行形の核心ルール

  • :had been + 動詞ing(主語による変化なし)
  • 意味の核心:過去のある基準点より前に始まり、その基準点まで(あるいは直前まで)続いていた動作の「継続」を表す
  • 必ず過去の基準点が必要:when, before, by the time などとセットで使われることが多い
  • 原因・結果のニュアンス:多くの場合、後ろに続く過去形の出来事の「原因」を説明する働きを持つ
  • 状態動詞(know, believe, love など)には使えない:継続の意味でも過去完了形(had + 過去分詞)を使う
  • 過去完了形との違い:過去完了形は「完了・結果」、過去完了進行形は「動作の継続・プロセス」に焦点がある
  • 現在完了進行形との違い:基準点が「今」なら現在完了進行形(have been)、基準点が「過去のある時点」なら過去完了進行形(had been)

この時制は一見複雑に見えますが、「基準点となる過去の出来事」を先に見つけ、その手前でどれくらいの継続があったかを意識するだけで、驚くほどすっきりと理解できます。英字新聞や小説を読むときに had been + ing の形を見かけたら、「あ、これはもっと前から続いていたことを説明しているんだな」と意識してみましょう。

シェア: コピーしました!

過去完了進行形 — 練習問題 2

英文法トピック過去完了進行形を10問の選択式問題で練習しましょう。合格するには少なくとも70%を正解する必要があります。

10 問 合格スコア: 70% テスト 2 /10 回答済み

テストの受け方

  • 各問題をよく読み、最も適切な答えを選んでください。
  • このテストに制限時間はありません — ご自身のペースで進められます。
  • クリック テストを提出 終わったらスコアと詳しい解説を確認しましょう。

ログインして結果を保存する

ログインせずにこのテストを受けることもできますが、結果は保存されません。 ログイン 進捗を記録しましょう。

  1. 1

    The forest floor was thick with leaves as it ______ for days.

  2. 2

    He ______ for a job for six months before he was hired.

  3. 3

    They discovered that the accountant ______ the books to hide the losses.

  4. 4

    They ______ in that house for ten years before they decided to sell it.

  5. 5

    The detective ______ the case for a year before he found a clue.

  6. 6

    The volcano ______ quietly for centuries before the eruption.

  7. 7

    I ______ a headache all day, so I went to bed early.

  8. 8

    The children's faces were covered in chocolate because they ______ the cake secretly.

  9. 9

    My fingers were sore because I ______ the guitar for hours.

  10. 10

    She ______ for the bus for half an hour when it finally came.