英語の「現在完了形」は、「過去」の出来事(action)が「今」につながっているときに使用される。形は「have/has + 動詞の過去分詞形」。
英語のネイティブの感覚はこれだけ。日本の文法書に説明してある「完了」「結果」「経験」「継続」などの意味の違いを覚える必要は全くない。例文を挙げながら詳しく説明する。
このコラムでは、初心者の皆さま向けの基本から上級者向けの発展まで、現在完了形を使いこなすために必要なことのみご説明する。このコラムで説明する現在完了形の主な例文一覧は以下のとおり。
I have lost my cell phone. (私は携帯電話をなくして今もない。) |
I have been to London twice. (私はロンドンに2回行ったことがある。) |
I have known her for 30 years. (私は彼女と知り合ってから30年になる。) |
Have you ever been to France? (かつてフランスに行ったことがあるか?) |
How long have you been in Japan? (日本に来てからどれくらい?) |
It’s (It is) the first time he has been to Germany. (彼がドイツに訪れるのはこれが初めてだ。) |
I have got a new bike. = I have a new bile. (新しい自転車を持っている。) |
また、「過去形」「現在完了進行形」「過去完了形」と「現在完了形」との違いも詳しく説明する。
目次
1. 英語の現在完了形|【基本】ネイティブ感覚と意味
英語のネイティブ・スピーカーが持つ「現在完了形」に対する感覚(ニュアンス)は、「過去」の出来事(action)が「今」につながっている感じ。この感覚(ニュアンス)を持つことができれば現在完了形は克服できる。
現在完了形の「形」は「have/has + 動詞の過去分詞形」であり、「have/has」は現在形である。したがって、あくまで「現在(今)」の状況を伝えるときに使用されることを忘れてはならない。
1.1. 「I have lost my cell phone.」(携帯電話をなくした)
上の例文の「I have lost my cell phone.」(私は携帯電話をなくした。)は、過去のある時点で「携帯電話をなくした」ことと、「現在(今)」もその状態が続いていること、つまり「現在(今)」も携帯電話をなくしたままの状態であることを意味している。
注意したいのは、この例文は「携帯電話は今もない」という「今の状況」がメインのメッセージ(最も伝えたいこと)であり、過去に「携帯電話をなくした」ことがメインのメッセージではない。
上の例文の意味に類似した例文の「平叙文」「否定文」「疑問文」「受動態」を紹介する。
例文 | 解説 |
I have cleaned my shoes. (私は靴を磨いた。) |
過去のある時点で靴を磨いた結果、今靴がきれいな状態であることを表している。(平叙文) |
He hasn’t finished his homework. (彼は宿題を終えていない。) |
過去にまだ宿題を終えていないので、今その状態が続いていることを表している。(否定文) |
Have you started to learn English? (あなたは英語を学ぶことを始めたか?) |
過去のある時点で英語の学習を始めて、今も続けているかどうかを聞いている。(疑問文) |
The PC has been repaired. (PCは修理された。) |
過去のある時点でPCが修理された結果、今もその状態であることを表している。(受動態) |
ちなみに、日本の文法書ではこれらの現在完了形のことを「完了・結果」を表す現在完了形とよんでいるが、ネイティブはそのような区別はしていない。
1.2. 「I have been to London twice.」(私はロンドンに2回行ったことがある)
上の例文の「I have been to London twice.」(私はロンドンに2回行ったことがある。)は、「生まれたとき」から「今」まで続いている「人生」という期間の中で、「ロンドンに行った」という出来事(action)が2回あったことを意味している。
注意したいのは、この例文は、あくまで「人生で2回ロンドンに行ったことがある」という現在(今)の状況がメインのメッセージ(最も伝えたいこと)であり、過去に「2回ロンドンに行った」事実を伝えることがメインのメッセージではない。
上の例文の意味に類似した例文の「平叙文」「否定文」「疑問文」「受動態」を紹介する。
例文 | 解説 |
I have done it before. (私はそれを以前やったことがある。) |
人生で「それ」をやったことがあるという「今」の状態を表している。(平叙文) |
I have never had a car. (私は車を持ったことがない。) |
人生で車を持ったことがないという「今」の状態を表している。(否定文) |
Have you ever tried Sushi? (あなたは寿司を食べたことがあるか?) |
人生で寿司を食べたことがあるかどうかという「今」の状態を聞いている。(疑問文) |
I have been contacted by an alien. (私は宇宙人からコンタクトされたことがある。) |
人生で宇宙人からコンタクトがあったことがあるという「今」の状態を表している。(受動態) |
ちなみに、日本の文法書ではこれらの現在完了形のことを「経験」を表す現在完了形とよんでいるが、ネイティブはそのような区別はしていない。
1.3. 「I have known her for 30 years.」(私は彼女と知り合ってから30年になる)
上の例文の「I have known her for 30 years.」(私は彼女と知り合ってから30年になる。)は、今から30年前に「彼女と知り合った」ことと、「現在(今)」もその出来事が続いていること、つまり「現在(今)」も彼女を知っている状態であることを意味している。
注意したいのは、この例文は「彼女を30年間知っている」という今の状況がメインのメッセージ(最も伝えたいこと)であり、30年前に「彼女に知り合った」という過去の事実がメインのメッセージではない。
上の例文の意味に類似した例文の「平叙文」「否定文」「疑問文」「受動態」を紹介する。
例文 | 解説 |
She has studied English for 3 years. (彼女は3年間英語の勉強をしている。) |
彼女は3年間ずっと英語を勉強しており、「今」も勉強している。(平叙文) |
It hasn’t rained for 3 weeks. (3週間雨が降っていない。) |
3週間前からずっと雨が降っておらず、「今」も降っていないことを表している。(否定文) |
How long have you lived in this house? (この家に住んでどれくらい経ちますか?) |
「今」、「この家」に住んでどれくらい経った状況なのかを聞いている。今も住んでいる。(疑問文) |
This building has not been used for many years. (このビルは長い間使われていない。) |
「このビル」が長い間使われていないという「今」の状況を表している。(否定の受動態) |
ちなみに、日本の文法書ではこれらの現在完了形のことを「継続」を表す現在完了形とよんでいるが、ネイティブはそのような区別はしていない。
2. 英語の現在完了形|【基本】よく使う表現方法
現在完了形と一緒によく使用される単語や、よく使用される現在完了形を使った表現を紹介する。
2.1. 「just」「already」「yet」と現在完了形
「just」(たった今)、「already」(すでに)、「yet」(まだ)は現在完了形と一緒によく使われる。それぞれ例文を紹介する。
「just」
He has just arrived.
(彼はたった今到着した。)
The movie has just started.
(その映画はたった今始まった。)
The train has just left.
(その電車はたった今出た(出発した)。)
上記の例文のように、「just」は「直前」(たった今/今さっき)のニュアンスをあらわし、通常「have/has」と「動詞の過去分詞形」の間に置かれることに注意してほしい。
「already」
He has already arrived.
(彼はすでに到着している。)
The movie has already started.
(その映画はすでに始まっている。)
The train has already left.
(その電車はすでに出た(出発した)。)
上記の例文のように、「already」は「予想より早い」(すでに)のニュアンスをあらわし、通常「have/has」と「動詞の過去分詞形」の間に置かれる。
「yet」
He hasn’t (has not) arrived yet.
(彼はまだ到着していない。)
The movie hasn’t (has not) started yet.
(その映画はまだ始まっていない。)
The train hasn’t (has not) left yet.
(その電車はまだ出ていない(出発していない)。)
上記の例文のように「yet」は現在完了形の「否定文」と「疑問文」と一緒によく使用される。「yet」は「何かが起こる予想」(まだ)のニュアンスをあらわし、通常文の最後に置かれることに注意してほしい。
2.2. 「for」「since」と現在完了形
「for」(〜の間)と「since」(〜から)も現在完了形と一緒によく使われる。それぞれ例文を紹介する。
「for」
She has been in London for three years.
(彼女は3年間ロンドンにいる。(今もいる))
I haven’t (have not) seen him for five days.
(私は5日間彼に会っていない。)
上記の例文のように、「for」は「期間」(〜の間)をあらわし、「second(秒)」「minute(分)」「hour(時間)」「day(日)」「week(週)」「month(月)」「year(年)」と使われるほか、「for a long time(長い間)」や「for ages(かなり長い間)」のような使い方もある。
「since」
She has been in London since June.
(彼女は6月からロンドンにいる。(今もいる))
I haven’t (have not) seen him since lunch time.
(私は昼飯どきから彼に会っていない。)
It’s been (It has been) three years since I came to Italy.
(私がイタリアに来てから3年になる。)
上記の例文のように、「since」は「何かが起こった過去の起点」(〜から今まで)をあらわし、「10 o’clock(時刻)」「Monday(曜日)」「August 14th(日付)」「July(月)」「2020(年)」と使われるほか、「since lunchtime(昼飯どきから)」や「since I was born(生まれてから)」のような使い方もある。
2.3. 「Have you ever … ?」
「(かつて)〜したことがあるか?」と質問する際には「Have you (ever) … ?」が提携表現である。必ず使えるようにしておきたい。「ever」(かつて)は入れなくてもよい。回答例と一緒に例文を紹介する。
Have you ever been to France?
(かつてフランスに行ったことがあるか?)
→ No, I haven’t
→ No, I’ve (I have) never been there.
(いや、行ったことはない。)
→ Yes, I have been there three times.
(はい、3回ある。)
Have you read this book?
(この本は読んだ?)
→ No, I haven’t.
(いや、ない。)
→ Yes, I have read it.
(はい、ある。)
2.4. 「How long have you …?」
「どれくらいの期間〜しているの?」と質問する際には「How long have you … ?」が提携表現である。必ず使えるようにしておきたい。回答例と一緒に例文を紹介する。
How long have you been in Japan?
(どれくらいの期間日本にいるの? → 日本に来てからどれくらい?)
→ I have been in Japan since 2019.
(2019年から日本にいる。)
→ I have been in Japan for 2 years.
(2年日本にいる。)
How long have you known her?
(どれくらいの期間彼女を知っているの? → 彼女を知ってからどれくらい?)
→ I have known her for a long time.
(長い間彼女を知っている。)
→ I have known her since I was a child.
(子どもの頃から彼女を知っている。)
2.5. 「It is the first time … have happened」
「…が〜するのは始めてだ」と表現する際には「It is the first time … have happened」が提携表現である。必ず使えるようにしておきたい。回答例と一緒に例文を紹介する。
It’s (It is) the first time he has been to Germany.
(彼がドイツに訪れるのはこれが初めてだ。)
この例文は、全く同じことを表現する下記の文に書き換えることができる。
He hasn’t been to Germany before.
He has never been to Germany before.
(彼は以前ドイツに訪れたことがない。)
2.6. 「have got」=「have」
「have got」は「have」と全く同じ意味で使われることが多い。例文を紹介する。
I have got a new bike.
= I have a new bile.
(新しい自転車を持っている。)
She hasn’t got any money.
= She doesn’t have any money.
(彼女はお金を持っていない。)
Have you got any questions?
= Do you have any questions?
(何か質問はあるか?)
なお、過去形のとき、過去形の疑問文のとき、それから「食べる」という意味のときの「have」の場合など、「have got」にできない場合もある。
3. 英語の現在完了形|【基本】過去形との違い
「現在完了形」と「過去形」の違いを説明する。
3.1.「現在完了形」と「過去形」の意味の違い
「現在完了形」は、「過去」の出来事(action)が「今」につながっているときに使用されることを説明してきた。一方で「過去形」は、「過去」の出来事(action)だけを表現する。
例えば、下の例文「I lost my cell phone.」(私は携帯電話をなくした。)は、単に「携帯をなくした」という過去の事実だけを伝えており、「現在(今)」その携帯は、なくしたままなのか、それともその後に見つかったのかはわからない。
なお、現在完了形が「携帯電話は今もない」という今の状態がメインのメッセージ(最も伝えたいこと)なのに対し、過去形は「携帯電話をなくした」という過去に終了した事柄がメインのメッセージ(最も伝えたいこと)になる。
現在完了形 | 過去形 |
I have lived in France for 3 years. (私はフランスに3年住んでいる。) ※3年前から今も住んでいる。 |
I lived in France for 3 years, but I live in Tokyo now. (私はフランスに3年住んだが、今は東京に住んでいる。) ※過去に3年間フランスに住んでいたという終了した事柄を表す。 |
He hasn’t called me yet. (彼はまだ私に電話をくれていない。) ※今もまだ電話をくれない。 |
He didn’t call me, so I went to see him. (彼は私に電話をくれなかったので、私は彼に会いに行った。) ※彼が電話をくれなかったという過去に終了した事柄を表す。 |
Have you ever been to Spain? (あなたはスペインに行ったことがあるか?) ※今までの人生で行ったことがあるかを聞いている。 |
Did you go to Spain last year? (あなたは去年スペインに行ったか?) ※去年スペインに行ったかどうかの終了した事柄について聞いている。 |
My car has been repaired. (私の車は修理された。) ※今も修理された状態が続いている。 |
My car was repaired yesterday, but it broke down again today. (私の車は昨日修理されたが、今日また壊れた。) ※昨日修理されたという終了した事柄を表す。 |
3.2.「現在完了形」と「過去形」と「時を示すことば」
現在完了形は、「yesterday」(昨日)や「two days ago」(2日前)などの、過去の特定の時を示すことばとは一緒に使用することができない。これらの「過去の特定の時を示すことば」は過去形とは一緒に使うことができる。下の例文をみてほしい。
過去形の「I lost my cell phone.」は、過去のある特定の時に「携帯電話をなくした」という終了した事柄を表すので「yesterday」(昨日)と一緒に使うことができる。一方で、現在完了形の「I have lost my cell phone.」は、過去のある時点で携帯電話をなくした状態が今の続いているという「今の状況」を表しているので「yesterday」をつけることはできない。
「yesterday」のほかにも「過去のある特定の時」を表すことばは下記のように色々ある。
現在完了形 | 過去形 |
He has gone home. (彼は家に行った。) ※「彼」は家に行ってしまって今はいないという「今の状況」を表す。 |
He went home ten minutes ago. (彼は10分前に家に行った。) ※「彼」が家に行ったという、10分前に終了した事柄を表す。 |
We haven’t met yet. (我々はまだ会っていない。) ※「我々」は今まで会っていないという「今の状況」を表す。 |
We didn’t meet last week. (我々は先週会わなかった。) ※「我々」は先週会わなかったという、先週に終了した事柄を表す。 |
Have you seen John? (あなたはジョンを見たか?) ※過去のある時点から今までに「John」を見たかどうかの「今の状況」を聞いている。 |
Did you see John on Sunday? (日曜日にジョンを見たか?) ※日曜日に「John」を見たかどうかという終了した事柄について聞いている。 |
I have been infected with flu. (私はインフルエンザにかかっている。) ※過去のある時点でインフルエンザにかかって、その状態が今も続いていることを表す。 |
I was infected with flu last month, but now I’m fine. (私は先月インフルエンザにかかったが、今は大丈夫。) ※先月にインフルエンザにかかったという終了した事柄を表す。 |
なお、既に説明したように、現在完了形は過去のある時点から今までの「期間」を示すことば(「for」(〜の間)と「since」(〜から))とは一緒に使用することができる。
4. 英語の現在完了形|【発展】現在完了進行形との違い
「現在完了進行形」の「形」は「have/has + been + 動詞の現在分詞形(〜ing)」であり、「過去のある時点から今まで続いてきた出来事(action)」を表す。
「現在完了形と意味の点では何が違うの?」と思うのは当然だ。その違いを説明する。
4.1. 現在完了進行形は直前までの出来事(action)を表す
「現在完了進行形」は基本、直前までの出来事(action)を表し、今その出来事は起こっていないことを表す。一方で「現在完了形」は、「過去」の出来事(action)が「今」につながっている状況を表す。下の例をみてほしい。
現在完了形の「I have repaired my car.」(私は車を修理した)は、過去のある時点で修理して、その状態が今も続いている状況、つまり修理が完了していることがメインのメッセージである。
一方で、現在完了進行形の「I have been repairing my car.」(私は車を修理していた)は、修理が完了したかどうかに意識はなく(完了しているかどうかはわからない)、直前まで修理していたこと(今はしていない)がメインのメッセージである。
4.2. 「期間を表すことば」がつくとほぼ同じ意味
「現在完了進行形」は、「for」や「since」などの「期間を表すことば」と一緒に使われると、上記とは異なる意味になる。
I have been repairing my car for 3 hours.
(私は3時間車を修理している。)
「for 3 hours」を付けずに、単に「I have been repairing my car.」であれば、「私は車を修理していた。」という意味になり、直前まで修理していて、今は修理していないことを表現するが、「for 3 hours」という期間を表すことばが付くと、「3時間ずっと、今も修理している」ことを意味する。
このような「期間を表すことば」がついた「現在完了進行形」は「現在完了形」と意味の差はほとんどないと思ってよい。下の例文をみてほしい。
現在完了形の「He has studied hard since last year.」と現在完了進行形の「He has been studying hard since last year.」は、日本語に訳すと両方とも「彼は昨年から一生懸命勉強している」と同じ訳になり、ネイティブの感覚からもそれらの意味にそれほど差はない。現在完了進行形の方が若干「生き生き」とした(臨場感が若干高い)感じがする程度である。
なお「期間を表すことば」は、「for」「since」のほかに「all day」などもある。また、「How long has it been raining?」(どれくらいの間雨が降っているの?(今も降っている))の「How long」も「期間を表すことば」である。
5. 英語の現在完了形|【発展】過去完了形との違い
「過去完了形」の「形」は「had + 動詞の過去分詞形」であり、「過去の過去(C)から、過去のある時点(B)まで続いてきた出来事(action)」を表す。
下の例文をみてほしい。「現在完了形」では、「I am not hungry.」(「今」お腹が減っていない)の理由は「I have just had sandwich.」((過去のある時点から今までの間に)サンドイッチを食べた)からだ。その状態が「今まで」続いているので「今」お腹が減っていないのだ。
一方で「過去完了形」では、「I was not hungry.」(「過去の時点で」お腹が減っていない)の理由は「I had just had sandwich.」((過去の過去から過去までの間に)サンドイッチを食べた)からだ。その状態が「過去の時点まで」続いているので「過去」ではお腹が減っていないのだ。
「現在完了形」は日本語にはない文法なので、日本人には非常に理解しにくい。しかし、ここで説明したことを理解できれば「現在完了形」は卒業だと思っていい。ただし【基本】は理解できるだけではなく、自分でも使えるようにする必要がある。自由に使えるようになるためには繰り返しトレーニングするしかない。
『英語独学完全マニュアル』
独学で効率的に習得する科学的学習法の全て(全79ページ)
英語は独学が基本です。しかし、「自分の学習方法が正しいかどうか…」不安に思っていませんか?本書は、英語の学習方法についてお悩みの皆さまに、第二言語習得研究と脳科学(神経科学)研究の知見に基づいた真に効率的な英語学習法をご紹介する解説書です。
無料eBookの主な内容
- 単語・文法・発音の効率的な基礎力強化方法
- インプット(読む・聞く)能力向上のための英語脳作りトレーニング法
- アウトプット(話す・書く)能力向上のためのリハーサル・トレーニング法
- 学習計画の立て方と効率性を上げるための学習習慣
そろそろ本気で英語を習得したいとお考えの方におすすめです。また、「英会話スクールに通っているけど思うように上達しない…」「TOEICで高得点を取ったけど話せない…」などでお悩みの皆さまも是非ご一読ください。