完了形

現在完了

要点

have + 過去分詞

文法の意味

現在完了を使うと、過去の経験・始まった状態・終えた動作を、今につながる情報として伝えられる

経験・継続・完了や結果のどれかを文脈と副詞から判断し、明確な過去の時点を述べる過去形と分けます。

使い方・使い分け

過去と今のつながりを3つの意味に分ける

一緒に使う語で経験・継続・完了/結果を見分けます。

経験
過去から今までにした経験を表す — I have been to Paris.
継続
過去に始まった状態が今も続くことを表す — She has lived here for years.
完了・結果
終えたことや、その結果が今にあることを表す — I have finished my homework.

過去の時点か今とのつながりかで、過去形と現在完了を選ぶ

完了した出来事の時を具体的に述べるなら過去形、時ではなく今とのつながりを表すなら現在完了を使います。

過去形
yesterday / last week など、完了した過去の時点を示す
現在完了
ever / before / for / since などで、過去と現在のつながりを示す

been to で経験、gone to で今いない結果を表す

同じ「行く」でも、経験か結果かで使い分けます。

have been to
行って戻った経験を表す — She has been to London.
have gone to
行った結果、今ここにいないことを表す — She has gone to London.

文法の形

have / has の後ろは過去分詞。用法によって一緒に使う語が変わります。

現在完了の形
主語 + have / has + 過去分詞

I have seen that movie.

経験
Have / Has + 主語 + ever + 過去分詞?

Have you ever eaten sushi?

継続
have / has + 過去分詞 + for / since ...

She has lived here for 10 years.

完了
have / has + just / already + 過去分詞

I have just finished my homework.

文法のルール

  1. have / has の後ろは過去分詞。原形や過去形は使わない。

    よくある間違い

    I have see that movie.

    基本の形

    I have seen that movie.

    現在完了は have / has + 過去分詞で作ります。原形の see や過去形の went ではなく、過去分詞の seen / gone を使います。

  2. 三人称単数は has。

    よくある間違い

    She have finished her work.

    基本の形

    She has finished her work.

    She は三人称単数なので has を使います。have は I / you / we / they のときに使います。

  3. 完了した出来事の時を yesterday などで具体的に述べるときは、過去形を使う。

    補足:since yesterday のように、現在まで続く期間の起点を示す yesterday は現在完了と使える。

    よくある間違い

    I have visited Tokyo yesterday.

    基本の形

    I visited Tokyo yesterday.

    yesterday のような明確な過去の時点を表す語があるときは、現在完了ではなく過去形を使います。

  4. 過去から今まで続くことは現在完了で表す。

    よくある間違い

    I live here for 5 years.

    基本の形

    I have lived here for 5 years.

    for 5 years は「5年前から今まで」という期間です。過去から今まで続いていることは、現在完了 have lived で表します。

  5. yet は否定文・疑問文で文末に置く。肯定文の「もう」は already。

    よくある間違い

    I have yet finished my homework.

    基本の形

    I haven't finished my homework yet.

    yet は否定文・疑問文で「まだ / もう」を表す副詞で、文末に置きます。肯定文の「もう〜した」は already を使います。

  6. have been to は行って戻った経験、have gone to は行ったまま今ここにいない結果を表す。

    よくある間違い

    He has gone to Paris.:パリに行ったことがあると伝えたい場合

    基本の形

    He has been to Paris.

    「〜に行ったことがある」と経験を伝えたいときは have been to を使います。have gone to は「〜に行ってしまって今ここにいない」という結果を表します。

10秒チェック

1問だけ解く

I/You/We/They の後にはどんな形が続きますか。