現在完了・過去完了・未来完了の用法と違いを例文でわかりやすく解説

時制

英語の現在完了は英語学習者が必ずつまずくポイントです。

参考書では現在完了を継続経験・完了(結果)の3つの用法に分けて説明しますが、「この文はどの用法?」と迷ってしまい、なかなかスッキリ理解できません。

それは当然で、ネイティブはそんな分類を意識して使い分けてはいないからです。

大切なのは文法用語を暗記することではなく、時制の流れとイメージをつかむことです。現在完了の本質は、過去の行為や出来事が、現在という基準点に影響を及ぼすことにあります。

そしてこのイメージは過去完了や未来完了でも同じです。

つまり完了形とは、基準となる時制から見てそれまでに起きた行為や出来事がその基準点に影響を及ぼしているということを表す形です。

この記事では、3つの完了形に共通する継続・経験・完了用法を説明し、現在完了・過去完了・未来完了の根幹となるイメージが共通であることを例文と図を用いて解説します

<strong>くろねこ</strong>
くろねこ

つまり何の役に立つの?

<strong>おさかな</strong>
おさかな

完了形のイメージがつかめれば、用法の違いも時制の違いも理解できるよ!

※ このブログでは、学習上の便宜として完了形も未来形も時制の1つとして扱います。

英語の完了形とは

完了形は「have + 過去分詞」の形で作られます。

ある時点(現在・過去・未来)から見てそれ以前に起こった出来事や状態が、その時点にまで影響を及ぼしていることを表す形です。

この共通のイメージから、その時点までに

  • 継続していること
  • 経験したこと
  • 何かを完了した結果

を表現するために用いられます。

つまり、ある時点までの時間の流れの中で起きた特定の動作や出来事の結果、その時点でこうなっているということを表します。

この点がある時点に起きた事実そのものや、変わらない習慣を表す単純時制(現在形・過去形・未来形)との大きな違いです。

現在完了・過去完了・未来完了の違い

現在完了は、過去の出来事を現在という基準点と結び付けて表します

I have studied English since this morning.
(私は今朝から勉強している。)

▸ 過去(今日の朝)から始めた勉強が今も続いている

過去の明確な一時点を表す語句(when, yesterday など)は時間的な流れを断ち切ってしまうため、基本的には現在完了形と一緒には使いません

一方で過去完了形は「had + 過去分詞」の形で表され、過去のある基準点より前に起きたことを基準点と結び付けて表します。

現在から見るとどちらも過去にあたるため、従属接続詞(when, before など)で前後関係を明確にする必要があります。

I had studied English before I ate lunch at noon.
(お昼ご飯を食べるまで英語を勉強していた。)

▸ お昼ごはんを食べた過去の一時点まで、勉強が続いていた

未来完了形は「will + 現在完了」の形で表されます。

現在より先のある未来の時点までに動作が完了していることを表します。文脈によっては、続いているだろうという推量のニュアンスが含まれることがあるのがポイントです。

未来完了は未来の話を扱うため、前置詞句や従属接続詞を使っていつの話なのかを明確にする必要があります。

I will have studied English for at least 2 hours by the time I eat dinner.
(私が夕食を食べる頃には、少なくとも2時間英語を勉強しているだろう。)

▸ 晩ごはんを食べる時点で、勉強時間が2時間以上になっている

<strong>くろねこ</strong>
くろねこ

現在・過去・未来に関係なく、過去の出来事がつながっていることがポイントだね!

<strong>おさかな</strong>
おさかな

口語では未来完了形よりも未来形の方が使われる傾向にあるよ

大過去と過去完了の違い

過去完了形には、他の完了形にはない大過去という用法があります。

過去完了は過去の一時点から見てそれより前に起きた動作や出来事が、その時点まで影響していることを表します。一方、大過去はその時点より前にすでに動作や出来事が完了していたことを強調する場合を指します。

この説明だけ聞くと難しく聞こえますが、実際には大過去は文法上の便宜的な呼び名にすぎません。英語の会話や文章の中で「これは大過去」「これは通常の過去完了」と厳密に分けられるわけではないのです。

ある時点より前に起きた出来事がその時点に影響を及ぼしているというイメージが大切なことに変わりはありません。

She had left the office before I arrived.
(私が到着したとき、彼女はすでにオフィスを出ていた。)

▸ 通常の過去完了

▸ 大過去

この文は、「私が到着した時には彼女がすでにいなかった(通常の過去完了)」とも、「到着という基準点より前にすでに出発が完了していた(大過去)」とも解釈できます。つまり、区別は曖昧なのです。

そのため、大過去だからどうという訳ではなく、単純に出来事の前後関係をわかりやすくするために過去完了形が使われているという解釈で問題ありません。

I realized I had lost my wallet when I got home.
(家に帰ったとき、私は財布を失くしていたことに気付いた。)

<strong>くろねこ</strong>
くろねこ

2通りの解釈ができるってことだね

<strong>おさかな</strong>
おさかな

そもそも口語では after や before を使って過去形の文章どうしをつなげば前後関係は十分伝わるんだけどね

完了形の継続用法

完了形の継続用法は、過去に始まった動作や状態がある時点(現在・過去・未来)まで途切れることなく続いていることを表します。

進行形はある時点に限った一時的な継続を表しますが、完了形は過去から現在までの比較的長い継続を表す点が違います。

時間的な変化を伴わないため基本的に進行形にすることができない状態動詞は、現在完了形の継続用法とは相性が良いことが特徴です。

I have lived in Tokyo for 10 years.
(私は10年間東京に住んでいる。)

▸ 10年前に住み始めた状態がずっと続いてる

I had lived in Tokyo for 10 years before I moved to Osaka.
(大阪に引っ越す前、私は10年間東京に住んでいた。)

▸ 大阪に引っ越した過去の時点まで10年間東京に住んでいた

By next year, I will have lived in Tokyo for 10 years.
(来年までに、私は東京に10年間住んでいることになる。)

▸ このまま住み続ければ、1年後の今頃には10年住んでいることになる

<strong>くろねこ</strong>
くろねこ

過去完了形のように過去の出来事を並べる場合は従属接続詞で前後関係をはっきりさせる必要があるよ!詳しくは時制の一致の記事を見てね!

for と since の違い・使い分け

完了形の継続用法では、期間を表す語句 forsince が頻繁に使われます。

for は動作や状態が続いている期間を説明する場合に使われます。つまり、どれくらい続いているかを表します。一方で since は状態を継続し始めた起点です。これは、いつから続いているかを表します。

そのため、for はthree weeks や two years など時間の長さを表す名詞とともに用いられ、since は Monday や 2015 などのある一時点を示す名詞と一緒に使われます。

She has studied English for three hours.
(彼女は3時間英語を勉強している。)

She has studied English since this morning.
(彼女は今朝から英語を勉強している。)

また大きな違いとして、for は前置詞であるため名詞しかとることができません

一方で since は、前置詞として名詞をとるだけでなく接続詞として節を導くこともできます。この場合、「誰が何をしてから続いているのか」のように出来事として詳しく説明することができます。

She has studied English since she got up this morning.
(彼女は今朝起きてからずっと英語を勉強している。)

<strong>おさかな</strong>
おさかな

過去に始まった時点から動作がずっと続いているから、since 節は基本的に過去形になるよ!

recently, lately, these days の違い

現在完了の継続用法でよく使われる時間的な広がりを表す語句は for と since だけではありません。recently, lately はどちらも「最近」という意味を持ち、ある程度の期間にわたっての継続を表すことができます。

recently にはついこの間というニュアンスがあり、ある出来事が比較的近い過去に起きたことを説明します。そのため現在完了形で使われることもありますが、主に過去形で使用されます

一方で、lately は形容詞 late(遅い)を副詞にした形です。late の最上級 latest が(世に出たのが)一番遅い = 最新であることを表すように、過去から現在までの時間的な広がりを含むことが特徴です。そのため、lately は基本的に現在完了形・現在完了進行形でしか使われません

また、「最近」を意味する語句には these days もありますが、those days が意味する「あの頃 / 当時」という過去と比較して、指示代名詞 these が現在という対象を指すため、基本的には現在形・現在進行形と使われることが多いのがポイントです。

I saw him recently.
(最近、彼に会った。)

▸ 「ついこの間」という完結した出来事を表している

I have seen him a lot lately.
(ここ最近、彼によく会っている。)

▸ 「過去から今まで、繰り返し会っている」という継続性を強調している

I see him a lot these days.
(最近、彼によく会う。)

▸ 直近の傾向を表している

<strong>おさかな</strong>
おさかな

ちなみに、フォーマルな場面では these days の代わりに nowadays を使うよ

完了形の経験用法

完了形の経験用法は、ある時点(現在・過去・未来)までに「~したことがある」ことを表します。

She has taken TOEIC twice.
(彼女はこれまでに2回 TOEIC を受けたことがある。)

She had taken TOEIC twice before graduating from college.
(彼女は大学を卒業する前に、TOEIC を2回受けたことがあった。)

By the end of this year, she will have taken TOEIC twice.
(今年の終わりまでに、彼女は TOEIC を2回受けていることになる。)

<strong>おさかな</strong>
おさかな

どれもその時までの経験を話していて、それがいつの話なのかは重要じゃないことがポイントだね

<strong>くろねこ</strong>
くろねこ

いつを明確にするときは単純時制(現在・過去・未来形)を使うよ!

ever と never の違い

現在完了形の経験用法では、「これまでに」を意味する ever と never がよく用いられます

ever は主に疑問文で使われ、これまでに一度でも経験があるかどうかを尋ねる役割を持ちます。一方の never は肯定文の形で用いられ、これまでに一度も経験がないという否定を強調します。

つまり、ever が「一度でも」という可能性を含んでいるのに対し、never は「一度もない」という完全な否定を示す点が大きな違いです。

Have you ever seen a shooting star?
(あなたは流れ星を見たことがありますか?)

I have never seen a shooting star.
(私は一度も流れ星を見たことがありません。)

<strong>おさかな</strong>
おさかな

ちなみに not ever で never と同じ意味になるよ

完了形の完了・結果用法

完了形には、過去に始まったある動作がちょうど終わったことを表す用法(完了)と、その動作の結果がある時点まで残っていることを表す用法(結果)があります。

学校文法ではこれらを区別して説明しますが、実際には結果は完了の延長線上にあると考えられます。そのため厳密に分ける必要はなく、どちらも過去の出来事が基準となる時点に影響を与えているという共通のイメージで説明することができます。

I have finished my homework.
(私は宿題をちょうど終えたところだ。)

I had finished my homework before my friend called me.
(友達が電話してきたとき、私は宿題をちょうど終えていた。)

By the time you come, I will have finished my homework.
(あなたが来るまでに、私は宿題をちょうど終えているだろう。)

<strong>おさかな</strong>
おさかな

完了形はどの用法でも過去の出来事がある時点まで続いているイメージがあることがわかったね

<strong>くろねこ</strong>
くろねこ

どの用法かよりも、その中心にある共通のニュアンスが大事ってことだね

yet と already の違い

完了形の完了・結果用法でよく使われる副詞に「すでに」「もう」を意味する already と yet があります。

基本的な使い分けとして、肯定文では already を過去分詞の直前に置いて「すでに〜した」ことを表します。一方、否定文では yet を文末に置いて「まだ〜していない」ことを表します。

I have already eaten lunch.
(私はもうお昼ごはんを食べた。)

I haven’t eaten lunch yet.
(私はまだお昼ごはんを食べていない。)

疑問文ではどちらも使えますが、ニュアンスに違いがあります。yet は「もう〜しましたか」と中立的に尋ねるのに対し、already は「もうそんなに早く?」と驚きや意外さを含んで尋ねる場合に使われます。

Have you eaten lunch already?
(もうお昼ごはん食べたの?)

Have you eaten lunch yet?
(もうお昼ごはん食べた?)

完了形 まとめ

英語の完了形には現在完了・過去完了・未来完了がありますが、時制(現在・過去・未来)や用法(継続・経験・完了)に関わらず、どれも基本となる過去の出来事がその時点に影響を及ぼしているという考え方は共通です。

現在という基準は、今まさにこの瞬間であるため特に補足する語句は不要ですが、過去完了や未来完了は現在から見てどの時点なのかを前置詞句や従属接続詞で示す必要があります。

過去完了形の大過去は、過去の時点より前の出来事が続いているのではなく、既に完了していることを表します。ただし基本となる考え方は同じで、あくまで前後関係を明らかにするために過去完了形が用いられています。

それぞれの用法にはともによく使われる語句がいくつかあり、そのニュアンスの違いに気を付ける必要があります

継続用法で使われる語句
for, since, recently, lately

経験用法で使われる語
ever, never

完了・結果用法で使われる語句
yet, already

<strong>くろねこ</strong>
くろねこ

ある一時点で完結せず、時間的な広がりがあるのが完了形の特徴だね

<strong>おさかな</strong>
おさかな

I hope you’ve mastered the perfect tense.

▾時制の表現 まとめページ▾

▾英文法一覧はこちら▾

コメント