現在完了形(have + 過去分詞)
have / has + 過去分詞で経験・継続・完了を表し、過去形と使い分けます。
説明
現在完了形は、過去と現在のつながりを表します。
「3回ロンドンに行ったことがある」「もう宿題を終えた」「ずっとここに住んでいます」のように、経験・完了・継続を現在の視点から伝えたいときに使います。
形は have / has + です。
| 用法 | 意味 |
|---|---|
| 経験 | 〜したことがある |
| 継続 | (ずっと)〜し続けている |
| 完了・結果 | 〜し終えた/〜したところ |
今回のゴール
- 現在完了(have + 過去分詞)で過去から今につながることが言えるようになる
- 現在完了で経験(〜したことがある)が言えるようになる
- for / since や How long で「ずっと〜」が言えるようになる
- 完了用法(just / already / yet / 結果)と been / gone の使い分けを覚える
- 過去形と現在完了の使い分け(今とのつながり)を覚える
現在完了(have + 過去分詞)で過去から今につながることが言えるようになる
現在完了は、過去の出来事が現在とつながっていることを表す形です。
「have / has + 過去分詞」で作ります。主語が三人称単数(he / she / it など)のときは has、それ以外は have を使います。
have / has の後は動詞の原形や過去形ではなく、過去分詞を使います。
例文
I have been to Paris twice.
私はパリに2回行ったことがあります。
She has lived in Tokyo for 10 years.
彼女は東京に10年間住んでいます。
Have you ever eaten sushi?
寿司を食べたことはありますか?
Yes, I have.
はい、あります。
No, I haven't.
いいえ、ありません。
現在完了で経験(〜したことがある)が言えるようになる
経験の用法は「〜したことがある」と過去の体験を表します。
ever(今までに)や never(一度も〜ない)と一緒に使うことが多い形です。
「いつしたか」より、「経験があるかどうか」に注目します。
例文
I have never been abroad.
私は海外に行ったことがありません。
Have you ever visited Kyoto?
京都を訪れたことはありますか?
Yes, I have.
はい、あります。
No, I have never visited Kyoto.
いいえ、一度も訪れたことがありません。
for / since や How long で「ずっと〜」が言えるようになる
for / since や How long で「ずっと〜」と過去から現在まで続いている状態を表します。
for は期間、since は起点を示し、How long は継続時間を尋ねます。
例文
He has worked here since 2015.
彼は2015年からここで働いています。
We have known each other for five years.
私たちは知り合って5年になります。
「どのくらい〜していますか?」と期間を尋ねるときは How long have you + 過去分詞 ...? を使います。答えには for(〜の間)や since(〜以来)を使います。
例文
How long have you lived in Tokyo?
東京にどのくらい住んでいますか?
完了用法(just / already / yet / 結果)と been / gone の使い分けを覚える
完了・結果の用法は「〜し終えた」「その結果として今こうなっている」を表します。just(ちょうど)や already(もう)と一緒に使うことが多いです。
yet は否定文・疑問文で文末に置きます(例: I haven't finished yet.)
例文
I have just finished my homework.
私はちょうど宿題を終えたところです。
She has already left home.
彼女はもう家を出ました。
過去形と現在完了の使い分け(今とのつながり)を覚える
過去形は過去の一時点での出来事を表し、いつ起こったかが明確(yesterday / last week など)です。現在完了は過去の出来事が現在とつながっており、いつ起こったかは重要ではありません。yesterday や last week のような明確な過去の時点を示す語とは、ふつう一緒に使いません。
例文
I went to Tokyo yesterday.
私は昨日東京に行きました。
I have been to Tokyo before.
私は以前東京に行ったことがあります。
I have lived here for 5 years.
私はここに5年間住んでいます。
間違えやすいポイント
I have see that movie.
I have seen that movie.
現在完了は have / has + 過去分詞で作ります。原形(see)や過去形(went)ではなく、過去分詞(seen / gone)を使います。
She have finished her work.
She has finished her work.
She は三人称単数なので has を使います。have は I / you / we / they のときに使います。
I have visited Tokyo yesterday.
I visited Tokyo yesterday.
yesterday のような明確な過去の時点を表す語があるときは、現在完了ではなく過去形を使います。
I live here for 5 years.
I have lived here for 5 years.
for 5 years は「5年前から今まで」という過去から現在までのつながりを表す表現です。現在形 live は今の習慣・状態だけを表すので「過去から続いている」というつながりが伝わりません。「過去のある時点で住み始めて → 今も住んでいる」を1つの形でまとめるのが現在完了 have lived の役割です。
I have yet finished my homework.
I haven't finished my homework yet.
yet は否定文・疑問文で「まだ / もう」を表す副詞で、文末に置きます。肯定文の「もう〜した」は already を動詞の前に置きます(I have already finished my homework.)。
He has gone to Paris.(パリに行ったことがあると伝えたいとき)
He has been to Paris.
「〜に行ったことがある」と経験を伝えたいときは have been to を使います。have gone to は「〜に行ってしまって今ここにいない」という結果の意味なので、伝えたい内容に合わせて使い分けます。
まとめ
- 現在完了(have + 過去分詞)で過去から今につながることが言えるようになる
- 現在完了で経験(〜したことがある)が言えるようになる
- for / since や How long で「ずっと〜」が言えるようになる
- 完了用法(just / already / yet / 結果)と been / gone の使い分けを覚える
- 過去形と現在完了の使い分け(今とのつながり)を覚える