モチタン辞典 › 読みもの › 英文法 › 過去完了・進行形の違い

過去完了と過去進行形の違いと使い分け

過去完了と過去進行形の違いと使い分け

過去完了形(had done)と過去進行形(was doing)の決定的な違いは、「すでに終わった過去の事象」か「その瞬間にまさに起きていた動作」かという点です。

日本語訳はいずれも「〜していた」となりやすいため混同されがちですが、過去完了形は過去の基準時より前の完了・経験を、過去進行形は過去のある一瞬を切り取った動作の最中を表します。

過去完了・過去進行形・過去完了進行形の比較表

英語の過去の時制でつまずきやすいのが、過去進行形(was/were doing)、過去完了形(had done)、そして過去完了進行形(had been doing)の3つの使い分けです。

日本語ではどれも「〜していた」と訳せてしまう場面が多いため、それぞれの文法形式と焦点の当て方の違いを整理しておく必要があります。

まずは3つの時制の基本形、核となる意味、時間軸上の捉え方をまとめた比較表を確認しましょう。

表は横にスクロールできます →

時制基本形核となるイメージ日本語の目安焦点
過去進行形was / were + -ing過去のある一瞬の動作(点)(その時)〜していたその瞬間に動作が進行中だったこと
過去完了形had + 過去分詞基準点より前の完了・結果(点・線)(その時までに)〜してしまっていた / 〜したことがあった基準点より前にすでに動作が完了していたこと
過去完了進行形had been + -ing基準点まで続いていた動作の継続(線)(その時までずっと)〜し続けていた基準点までの期間、動作が途切れず行われていたこと

過去進行形は「過去の特定の瞬間」にカメラを向け、その時に何が行われていたかを切り取ります。一方で過去完了形は「過去の基準点」を定め、それより前に起きた出来事や完了した事実に着目します。そして過去完了進行形は、「過去の基準点まで一定の期間ずっと動作が続いていた」というプロセスの長さに焦点を当てます。

2つの時制に絞って比較したいときは、過去完了進行形と過去進行形の解説も参考になります。

時間軸図解とカメラワークで掴むイメージ

3つの時制の違いを感覚的に理解するには、「時間軸(タイムライン)」と「カメラワーク」の比喩が役立ちます。

時間軸で見る「点」と「線」の違い

英語の時制を時間軸上で表すと、意識がどこに向いているかが明確になります。

スナップ写真とビデオ録画のカメラワーク

ネイティブスピーカーがそれぞれの時制を使うとき、頭の中では異なる映像が再生されています。

過去進行形は「スナップ写真(静止画)」です。シャッターを切ったまさにその瞬間、人物が腕を振っている途中、雨粒が空中に浮いている途中を静止画として捉えます。

そのため、When I looked outside, it was raining.(外を見たとき、雨が降っていた)のように、見た瞬間の情景描写に用いられます。

過去完了形は「出来事の報告書」です。過去の基準点に立った話し手が、「それ以前に何が起きたか」を振り返って確認します。動作の最中を描写するのではなく、「会議はすでに始まっていた」「鍵を家に忘れていた」という事実の確定を伝えます。

過去完了進行形は「巻き戻し再生されたビデオ録画」です。過去の基準点に到達するまでのプロセスを、時間をかけて撮影した映像のように捉えます。動作の労力や疲労、継続期間の長さに対する感情が込められることが多くなります。

3つの時制の時間軸とカメラワーク
📷過去進行形

スナップ写真。過去の一瞬に動作が進行途中だった情景を切り取る

📄過去完了形

出来事の報告書。過去の基準点より前に完了した事実や結果を確認する

🎥過去完了進行形

ビデオ録画。基準点まで動作が一定期間続いていたプロセスを捉える

時間軸上の位置づけと頭に思い浮かべる映像の違いを確認できます。

次の疑問過去完了と過去完了進行形のニュアンスの差をさらに深掘りしたいなら、過去完了と過去完了進行形の違いで動作の継続感を整理できます。

同一動詞で比べる3つの時制の明確な違い

文脈によるニュアンスの差を明確にするために、同じ動詞を用いた例文でそれぞれの時制を比較してみましょう。ここでは日常会話でも頻出する wait(待つ)、rain(雨が降る)、study(勉強する)を取り上げます。

1. wait(待つ)の比較

2. rain(雨が降る)の比較

3. study(勉強する)の比較

waitを用いた3つの時制のニュアンス差

過去進行形

  • 駅に着いた瞬間、待っている姿を描写
  • 期間には触れず、その瞬間の様子を示す
  • Yuka was waiting for him.

過去完了形

  • 駅に到着する前に立ち去る動作が完了
  • 2人の動作に時間的な前後関係がある
  • Yuka had already left.

過去完了進行形

  • 到着するまで2時間待ち続けた長さに焦点
  • 疲労や怒りなどの感情が伝わる
  • Yuka had been waiting for two hours.

同じ動詞でも時制によって焦点や状況の伝わり方が異なります。

具体的な文での使われ方をさらに確認したいときは、過去進行形の使い方の例文集をあわせてご覧ください。

次の疑問特に判断が難しい過去完了進行形を例文とセットで復習したいときは、過去完了進行形の使い方と例文が役に立ちます。

見分け方のシグナル語と状態動詞のルール

英文法問題や読解で時制を素早く判断するためには、文中に含まれるキーワード(シグナル語)と動詞の種類(状態動詞か動作動詞か)に注目することが重要です。

文脈を決定づけるシグナル語一覧

時制共起しやすい代表的な語句文脈の特徴
過去進行形when(〜したとき), while(〜している間), at that time, at that moment過去の特定の瞬間に同時並行していた動作
過去完了形already, yet, before, by the time, never, twice / three times過去の基準点より前の完了・経験・回数
過去完了進行形for + 期間, since + 過去の起点, how long, all morning / all day過去の基準点まで切れ目なく続いていた期間

「how many times(回数)」と「how long(期間)」の決定的な違い

資格試験や入試問題で頻出する判別基準が「回数」と「期間」の違いです。

動作が何回起きたかという「回数」を数える表現(once, twice, three times, how many times, several times など)は、過去完了進行形には使えません。動作が途中で何度も区切られて完了しているため、過去完了形を用います。

一方、「どれくらいの長さ続いていたか」という期間を尋ねる・述べる表現(how long, for two weeks など)は、動作動詞であれば過去完了進行形と極めて相性が良くなります。

状態動詞は過去完了進行形にできない例外ルール

「過去の基準点までずっと状態が続いていた」と言いたい場合でも、その動詞が「状態動詞」である場合は進行形にできません。そのため、意味は継続であっても過去完了形(had + 過去分詞)を使用します。

主な状態動詞には以下のようなものがあります。

例えば「彼らは結婚する前、10年間お互いを知っていた」を表す場合、動詞 know は状態動詞なので進行形にできません。

なお、live(住む)や work(働く)は状態的性質と動作的性質の両面を持つため、過去完了形(had lived)でも過去完了進行形(had been living)でも継続を表せます。

過去完了形を使うと「長期的で安定した定住・勤務」、過去完了進行形を使うと「一時的な滞在・精力的な活動のプロセス」というニュアンスが加わります。

過去完了・進行形の違いのイメージ

否定文・疑問文の作り方と語順の整理

過去進行形、過去完了形、過去完了進行形の否定文・疑問文の構造を正しく把握しておくと、英作文やリスニングでの理解がスムーズになります。助動詞や be 動詞の位置に注目して整理しましょう。

否定文の作り方

時制語順のルール例文
過去進行形主語 + was / were + not + -ingHe was not (wasn't) sleeping when I called.
(私が電話したとき、彼は眠っていなかった。)
過去完了形主語 + had + not + 過去分詞The train had not (hadn't) arrived yet at that time.
(その時、電車はまだ到着していなかった。)
過去完了進行形主語 + had + not + been + -ingWe had not (hadn't) been waiting long before the bus came.
(バスが来るまで、私たちはそれほど長く待っていなかった。)

否定の not は、常に先頭の助動詞(または be 動詞)の直後に置かれます。過去完了進行形では had と been の間に not が挟まる点に注意してください。had been not -ing としないよう気をつけましょう。

疑問文の作り方

時制語順のルール例文
過去進行形Was / Were + 主語 + -ing ...?Were you playing tennis when the storm started?
(嵐が始まったとき、テニスをしていたのですか?)
過去完了形Had + 主語 + 過去分詞 ...?Had she seen the movie before you invited her?
(あなたが誘う前に、彼女はその映画を見たことがありましたか?)
過去完了進行形Had + 主語 + been + -ing ...?Had they been arguing until the manager showed up?
(マネージャーが現れるまで、彼らは言い争いを続けていたのですか?)

疑問詞(What, Where, How long など)を用いる疑問文では、疑問詞を文頭に置き、その直後に上記の疑問文の語順を続けます。

次の疑問過去進行形の語順に慣れてきたら、文構造で迷いやすい過去進行形の受動態の作り方もあわせて確認しておくと安心です。

迷わず選べる3秒判定フローチャート

テストの空欄補充や英会話でどの時制を使うべきか迷ったときは、以下の判定ステップを順番に辿ることで正しい時制へ最短で到達できます。

時制判定のYes/No分岐手順

  1. ステップ1(過去の基準点があるか?)
    文中に過去の特定の時点(when S + 過去形、yesterday at 3、before S + 過去形 など)が存在するか確認します。
    → No の場合:単純な過去形(did)や現在完了形(have done)を検討します。
    → Yes の場合:ステップ2へ進みます。
  2. ステップ2(その基準点より「前」の出来事か、その瞬間「同時」か?)
    → 「同時(その瞬間まさに途中)」の場合:過去進行形(was/were doing)を選択します。
    例: When he called, I was cooking.(電話が鳴ったその瞬間に料理中だった)
    → 「基準点より前」の場合:ステップ3へ進みます。
  3. ステップ3(基準点まで「動作の継続」があるか?)
    文中に for や since、all day などがあり、基準点までずっと続いていた文脈か確認します。
    → No(完了・経験・結果・回数):過去完了形(had done)を選択します。
    例: I had finished the work before noon.(正午より前に仕事を終えていた)
    → Yes(基準点までの継続):ステップ4へ進みます。
  4. ステップ4(その動詞は状態動詞か?)
    know, have, belong などの進行形にできない動詞かどうかをチェックします。
    → Yes(状態動詞):過去完了形(had done)を選択します。
    例: We had known each other for five years.(5年間知り合いだった)
    → No(動作動詞):過去完了進行形(had been doing)を選択します。
    例: He had been running for an hour.(1時間走り続けていた)

試験問題での消去法テクニック

空欄補充問題では、選択肢の消去法が非常に有効です。

時制判定の4ステップフロー
1基準点を確認

過去の特定時点が文中にあるか確認する

2前か同時か判定

その瞬間同時なら過去進行形、前なら次へ

3継続の有無確認

基準点までの継続がなければ過去完了形

4動詞の種類確認

状態動詞なら過去完了、動作動詞なら完了進行

基準点の有無や継続、動詞の種類を順にチェックして判別します。

理解度を深める実践問題と詳しい解説

学んだ知識を定着させるために、実際の文脈に合わせた空欄補充問題に挑戦してみましょう。それぞれの文脈とシグナル語に着目して解いてみてください。

問題

次の文の空欄に入る最も適切なものを、選択肢(A)〜(D)の中から1つ選びなさい。

第1問
When I opened the front door, my mother (   ) dinner in the kitchen.
(A) had cooked
(B) was cooking
(C) had been cooked
(D) has cooked

第2問
Ken was out of breath when he reached the summit because he (   ) for three hours without rest.
(A) was climbing
(B) has climbed
(C) had been climbing
(D) is climbing

第3問
By the time Ms. Davis joined our department, I (   ) there for more than six years.
(A) had worked
(B) was working
(C) have worked
(D) am working

第4問
Before the concert started yesterday, the pianist (   ) that complex piece four times.
(A) was practicing
(B) had been practicing
(C) had practiced
(D) is practicing

第5問
We (   ) each other since our childhood when we met again in New York last year.
(A) had known
(B) had been knowing
(C) were knowing
(D) have known

解答と解説

第1問の解答: (B) was cooking
日本語訳: 私が玄関のドアを開けたとき、母は台所で夕食を作っているところだった。
解説: 玄関を開けた「その瞬間」に母が料理をしている最中だったという情景を描写しています。

過去のある一瞬における動作の進行を表すため、過去進行形の (B) が正解です。(A) だとドアを開けた時点ですでに料理を作り終えていたことになり文脈と合いません。

第2問の解答: (C) had been climbing
日本語訳: ケンが山頂に到達したとき、3時間休まず登り続けていたため息が切れていた。


解説: 山頂に到達したという過去の基準点(reached)の直前まで、「3時間休まず登り続けていた(for three hours)」という動作が継続していました。

その結果として息が切れていた(was out of breath)という状態に繋がっているため、動作の継続プロセスを強調する過去完了進行形の (C) が正解です。

第3問の解答: (A) had worked
日本語訳: デイビスさんが私たちの部署に配属された時までに、私はそこで6年以上働いていた。
解説: 過去の基準点(joined)より前に始まった状態が基準点まで及んでいたことを表します。

work は過去完了形でも過去完了進行形でも継続を表せますが、選択肢の中で文法的に適合するのは過去完了形の (A) のみです。(C) の現在完了形は過去の基準点(By the time Ms. Davis joined)と一緒には使えません。

第4問の解答: (C) had practiced
日本語訳: 昨日コンサートが始まる前に、そのピアニストはその難曲を4回練習していた。
解説: 文末に four times(4回)という回数表現があります。

回数を表す語句は完了進行形とは併用できず、完了形を用います。過去の基準点(started)より前の経験・実績であるため、過去完了形の (C) が正解です。(B) の過去完了進行形は回数表現があるため不適切です。

第5問の解答: (A) had known
日本語訳: 昨年ニューヨークで再会したとき、私たちは幼少期からお互いを知っている仲だった。
解説: 過去の基準点(when we met again)までの継続(since our childhood)を表しています。

動詞 know は「知り合いである」という心理的状態を表す状態動詞であるため、進行形(-ing)にできません。したがって過去完了進行形の (B) ではなく、過去完了形の (A) が正解となります。

続けて読む

英文法の疑問をすべて見る

理解度チェック

Q1. 過去の基準点までの継続を表す際、状態動詞に使う時制はどれ?

  1. 過去進行形
  2. 過去完了形
  3. 過去完了進行形
  4. 現在完了進行形
答えを見る

正解: B. 過去完了形
状態動詞は進行形にできないため、基準点までの継続を表す場合でも過去完了形を使います。

Q2. 過去完了進行形が使えない表現として正しいものはどれ?

  1. for two weeks
  2. all morning
  3. how long
  4. three times
答えを見る

正解: D. three times
動作が区切られて完了していることを示す回数表現は、過去完了進行形には使えません。

Q3. 空欄に入る最も適切な英文を選びなさい。When I woke up, the rain (   ).

  1. had stopped
  2. was stopping
  3. had been stopping
  4. has stopped
答えを見る

正解: A. had stopped
目が覚める前の時点で雨がやんでいた事実を表すため、過去完了形が適切です。

Nathan英語の文法は、話して身につけよう。会話アプリ「モチスピ」英語を話して練習できる会話アプリ。話すたびに、発音・文法・自然さをその場で直してもらえます。無料で試す

よくある質問

Q. 過去進行形と過去完了進行形の違いは?
過去進行形は「過去のある瞬間にまさに動作中だったこと」を写真のように表します。一方、過去完了進行形は「過去の基準点まで一定の期間ずっと動作が続いていたこと」を時間の幅(線)として表します。
Q. 過去完了と過去進行形の違いは何ですか?
過去完了形は「過去の基準点より前に起きた出来事や、すでに終わった完了・結果」を表します。過去進行形は「過去のその時点で動作が進行中であり、まだ終わっていなかったこと」を表します。
Q. forやsinceがあれば必ず過去完了進行形?
必ずしもそうではありません。knowやbelongなどの状態動詞は進行形にできないため、forやsinceがあっても過去完了形を用います。また回数を表す語がある場合も過去完了形になります。
Q. 過去形と過去完了形はどう使い分ける?
出来事が起きた順番どおりに文を並べる場合は過去形で十分です。しかし、過去の基準点よりも前に起きた事象であることを明示し、時間的な前後関係を明確にしたい場合に過去完了形を使います。
Q. when節の中で過去完了進行形は使えますか?
使えます。たとえば「彼から連絡が来たとき、私は3時間運転し続けていた」という文では、主節に過去完了進行形を用い、when節を過去の基準点(過去形)として設定します。

2026年9月25日更新・モチタン辞典編集部

関係する文法過去進行形の使い方過去完了形の使い方