過去から今までのつながりを表す
have + 過去分詞
have / has + 過去分詞で経験・継続・完了を表し、過去形と使い分けます。
説明
現在完了形は、過去と現在のつながりを表します。
「3回ロンドンに行ったことがある」「もう宿題を終えた」「ずっとここに住んでいます」のように、経験・完了・継続を現在の視点から伝えたいときに使います。
形は have / has + です。
まず形を押さえ、経験・継続・完了/結果のどれで現在につながるかを分けて見ます。
最後に、yesterday のような明確な過去時点があるときは過去形を選ぶ、という見分け方まで扱います。
| 用法 | 現在とのつながり | よく使う語 | 例 |
|---|---|---|---|
| 経験 | 過去の体験が今の経験として残る | ever / never / before | I have been to Paris. |
| 継続 | 過去から今まで続いている | for / since / How long | She has lived here for years. |
| 完了・結果 | 終わったことや結果が今に関係する | just / already / yet | I have finished my homework. |
今回のゴール
- 現在完了(have / has + 過去分詞)の肯定文・否定文・疑問文が作れるようになる
- 経験用法で「〜したことがある/ない」が言えるようになる
- 継続用法で「ずっと〜している」や「どのくらい続いているか」が言えるようになる
- 完了・結果用法で「〜し終えた・その結果が今に残る」が言えるようになり、been to と gone to の使い分けを理解する
- 過去形と現在完了の使い分けを理解する
現在完了(have / has + 過去分詞)の肯定文・否定文・疑問文が作れるようになる
現在完了は、過去の出来事が現在とつながっていることを表す形です。
「have / has + 過去分詞」で作ります。主語が三人称単数(he / she / it など)のときは has、それ以外は have を使います。
have / has の後は動詞の原形や過去形ではなく、過去分詞を使います。
He's は He is の短縮形でもあります。現在完了では He's lived ... のように、後ろに過去分詞が来ることで見分けます。
例文
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 は継続時間を尋ねます。
例文
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?
東京にどのくらい住んでいますか?
完了・結果用法で「〜し終えた・その結果が今に残る」が言えるようになり、been to と gone to の使い分けを理解する
完了・結果の用法は「〜し終えた」「その結果として今こうなっている」を表します。just(ちょうど)や already(もう)と一緒に使うことが多いです。
yet は否定文・疑問文で文末に置きます(例: I haven't finished yet.)
例文
I have just finished my homework.
私はちょうど宿題を終えたところです。
She has already left home.
彼女はもう家を出ました。
I haven't finished my homework yet.
私はまだ宿題を終えていません。
過去形と現在完了の使い分けを理解する
過去形は過去の一時点での出来事を表し、いつ起こったかが明確(yesterday / last week など)です。現在完了は過去の出来事が現在とつながっており、いつ起こったかは重要ではありません。yesterday や last week のような明確な過去の時点を示す語とは、ふつう一緒に使いません。
| 形 | 中心 | 一緒に使いやすい語 |
|---|---|---|
| 過去形 | 過去の一時点の出来事 | yesterday / last week など |
| 現在完了 | 過去から今へのつながり | ever / before / for / since など |
例文
I went to Tokyo yesterday.
私は昨日東京に行きました。
I have been to Tokyo before.
私は以前東京に行ったことがあります。
I have lost my umbrella.
私は傘をなくしてしまいました。
間違えやすいポイント
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年前から今まで」という期間です。過去から今まで続いていることは、現在完了 have lived で表します。
I have yet finished my homework.
I haven't finished my homework yet.
yet は否定文・疑問文で「まだ / もう」を表す副詞で、文末に置きます。肯定文の「もう〜した」は already を使います。
He has gone to Paris.(パリに行ったことがあると伝えたいとき)
He has been to Paris.
「〜に行ったことがある」と経験を伝えたいときは have been to を使います。have gone to は「〜に行ってしまって今ここにいない」という結果を表します。
まとめ
- 現在完了(have / has + 過去分詞)の肯定文・否定文・疑問文が作れるようになる
- 経験用法で「〜したことがある/ない」が言えるようになる
- 継続用法で「ずっと〜している」や「どのくらい続いているか」が言えるようになる
- 完了・結果用法で「〜し終えた・その結果が今に残る」が言えるようになり、been to と gone to の使い分けを理解する
- 過去形と現在完了の使い分けを理解する