過去のある時点まで「ずっと〜していた」。続いていた長さや、その結果を伝えるのが過去完了進行形です。
このレッスンで学ぶこと
過去完了進行形は、過去のある時点までに、ある動作がどのくらい続いていたかを表します。大事なのは「終わったかどうか」よりも、続いていた長さや、その途中の様子です。形は had been + 動詞の -ing 形で、3つの部分がそろって初めて1つの時制になります。
日本語では「バスが来たとき、1時間待っていた」「1時間前から待っていた」のように、ふつうの「〜ていた」で言えます。そのまま過去進行形にして “I was waiting for an hour when the bus came” としたくなりますが、ある時点までの長さを言うときは過去完了進行形を使います。“I had been waiting for an hour when the bus finally came.”
時間の表し方にも注意しましょう。長さ(1時間、2年間)には for を使います:for an hour、for two years。始まった時点(8時、月曜日)には since を使います:since 8 o'clock、since Monday。「1時間前から」を “since one hour ago” や “for an hour ago” とは言いません。ago は「今から〜前」という1つの時点を表すので、長さの for とは組み合わせられません。“for an hour” だけで十分です。
この時制は、過去のある時点で「なぜそういう状態だったのか」を説明するのによく使います。それより前にしばらく続いていた動作が原因です。その動作は直前に終わっていることも、まだ続いていることもあり、その影響が目に見えている、という場面です。
日本語の「彼がへとへとだったのは、ずっと走っていたからだ」「地面がぬれていたのは、雨が降っていたからだ」にあたります。“He was exhausted because he had been running.” “The ground was wet because it had been raining.” 日本語の「雨が降っていた」には主語がありませんが、英語では it が必要です。
続いていた長さや途中の様子を伝えたいときは過去完了進行形、「終わっていた」という事実や結果、量(the whole book、three chapters)を伝えたいときは過去完了形(had + 過去分詞)を使います。
know、own、believe、be などの状態動詞は、長さを言うときでもふつう -ing にしません。「何年も前から彼を知っていた」は “I had known him for years” で、“I had been knowing him” とは言いません。
形にも気をつけましょう。この時制では had been の後ろは必ず -ing 形です。had been + 過去分詞(had been closed、had been stranded)は受動態や状態を表す別の形です。否定文と疑問文は had で作ります。“They hadn't been sleeping well.” “How long had you been living there?” did は使いません。
「来たときには1時間待っていた」は、来た時点までの長さです。過去進行形ではなく had been + -ing を使います。
had been の後ろは -ing 形です。had been + 過去分詞(had been closed)は受動態という別の形になります。
否定は had に not をつけて hadn't been + -ing です。did はこの時制では使いません。
疑問文では had が主語の前に出ます。日本語のように語順をそのままにしないよう注意しましょう。
「6時間前から」をそのまま訳すと ago がつきがちですが、ago は長さの for と組み合わせられません。for six hours だけで十分です。
「バスが来たとき、1時間待っていた」のように、日本語ではふつうの「〜ていた」で長さを言えます
英語では、過去のある時点までの長さを言うとき、過去進行形や過去形ではなく had been + -ing を使います。“I had been waiting for an hour when the bus came.” had は「その時点より前から」、been + -ing は「続いていた」、for は「長さ」を表しています。
「1時間前から」「3時から」のような「〜から」
「〜から」は、長さなら for、始まった時点なら since です。「1時間前から待っていた」は “I had been waiting for an hour.” “since one hour ago” や “for an hour ago” は不自然です。「3時から」は “since three o'clock” です。
「どのくらいそこに住んでいたの?」のように、日本語の疑問文は語順が変わりません
英語では How long(「どのくらいの間」)のあとに had を主語の前に出します。“How long had you been living there?” “How long you had been living there?” は間違いです。時間の長さは How much time ではなく How long で聞くのが自然です。
💡 過去のある時点までの「〜ていた」の長さを言うときは had been + -ing。
💡 「〜から」は、長さなら for(for an hour)、始まった時点なら since(since Monday)。ago はつけません。
💡 長さや途中の様子が大事なら過去完了進行形、終わったことや結果が大事なら過去完了形。
"Sorry I'm late — when the bus finally came, I had been waiting for forty minutes!"
"That's awful. Had you been standing in the rain the whole time?"
"Yes, so by the time I got on, I was completely soaked."
"You should have taken a taxi."
練習問題 1 · 正しい文を選びましょう
Choose the correct sentence.
練習問題 2 · 正しい答えを選びましょう
Which sentence emphasizes the DURATION of an action up to a past point?
練習問題 3 · 正しい文を選びましょう
Choose the correct sentence.
練習問題 4 · 正しい否定文を選びましょう
Choose the correct negative.
練習問題 5 · 正しい疑問文を選びましょう
Choose the correct question.
練習問題 6 · 正しい文を選びましょう
Choose the correct sentence.
練習問題 7 · 正しい形を選びましょう
Which is formed correctly?
練習問題 8 · 正しい文を選びましょう
Choose the correct sentence.
練習問題 9 · 文を完成させましょう
Complete: 'She ___ (wait) for two hours when he finally arrived.' (past perfect continuous)
練習問題 10 · 文を完成させましょう
Complete: 'How long ___ (you/learn) English before you moved abroad?' (question)
練習問題 11 · グループに分けましょう
0 / 6 分類済み
練習問題 12 · よくある間違い:「〜前から」を ago で訳す
Japanese: "バスがやっと来たとき、私は1時間前から待っていた。" Which English translation is correct?
5つのクイズで、学んだことを確認しましょう。
問題 1 / 5
スコア:0/0
Choose the correct sentence.
過去完了形(Past Perfect)
過去完了形 had + 過去分詞は、過去のある時点よりさらに前の出来事を表します。日本語にはない「時の順番」の示し方と、「大過去」の誤解を整理します。
過去の習慣を表す would
「子どものころ、よく〜したものだ」を表す would。くり返した動作にしか使えないことや、used to との違い、仮定法の would との見分け方を学びます。
過去の習慣を表す used to
「以前はピアノを弾いていた」は I used to play the piano。今はもうしない過去の習慣や状態を表す used to と、didn't use to、Did you use to…? の形をまとめます。
過去進行形(Past Continuous)
過去進行形 was/were + -ing は、過去のある時点で「〜しているところだった」動作を表します。話の背景、割り込まれた動作、「〜ていた」との違いも整理します。