現在完了と過去形の違い|用法・使い分けを例文でわかりやすく解説

「電車の切符をなくした」を英語にすると、I’ve lost my ticket.I lost my ticket. のどちらが正しいのでしょうか。じつは、どちらもあり得ます。違いは「今とのつながりがあるかどうか」です。

この記事では、現在完了〈have+過去分詞〉の完了・結果/経験/継続という3つの用法を整理したうえで、現在完了と過去形の違い(用法)と使い分けを、例文でわかりやすく解説します。

✅ この記事でわかること

  • 現在完了と過去形の違い(ひと目でわかる早見表)
  • 現在完了の3用法(完了・結果/経験/継続)と形
  • ever・never・for・since・ago の使い方
  • yesterday・ago が付くと過去形になる、つまずきポイント

目次

現在完了と過去形の違い(早わかり)

まず結論から。判断のポイントは「過去の一点で完結しているか」「今とのつながりがあるか」です。

現在完了〈have/has+過去分詞〉過去形
時間の視点過去と現在を結びつける(今もそう)過去の一点で完結
表す意味完了・結果/経験/継続過去に起きた事実
相性のよい語ever, never, for, since, yetyesterday, last week, 〜ago, when …?
使えない語yesterday, last week, 〜ago, when …?
I’ve lost my ticket.(今も見つからない)I lost my phone yesterday.(昨日の事実)

(16) I’ve lost my train ticket.(電車の切符をなくした=今も見つかっていない。)

(18) I lost my phone yesterday.(昨日電話をなくした。)

以下、現在完了の形と3用法を確認してから、使い分けを詳しく見ていきます。


現在完了形とは|have+過去分詞の3つの意味

have / has + 過去分詞の形を現在完了形といいます。過去と現在を結びつけ、「完了・結果」「経験」「継続」の3つの意味を表します。

過去分詞は、規則動詞では過去形と同じ(-ed)ですが、不規則動詞は暗記が必要です。

原形過去形過去分詞
playplayedplayed
buyboughtbought
seesawseen
bewas/werebeen

主語が3人称単数なら has を使います。否定は haven’t / hasn’t、疑問は have / has を主語の前に出します。

(1) We have been to Australia.(私たちはオーストラリアに行ったことがある。)

(2) She hasn’t finished her homework yet.(彼女はまだ宿題を終えていない。)

(3) Have you finished the report? — Yes, I have.(報告書は終わった? — うん。)


経験用法|「〜したことがある」ever / never

〜したことがある」という経験を表すときは、ever(今までに)・never(一度も〜ない)をよく使います。

(4) Have you ever been to a tropical island?(熱帯の島に行ったことはある?)

(5) I’ve never eaten an oyster.(牡蠣を食べたことは一度もない。)


継続用法|「ずっと〜している」How long / for / since

現在完了の継続用法は、「(過去から今まで)ずっと〜している」という状態の継続を表します。現在形が「今の状態」を表すのに対し、現在完了は「過去から今まで続く状態」を表すのがポイントです。期間をたずねるときは How long を使います。

(6) Mark and Lisa have been married for 8 years.(マークとリサは結婚して8年になる。)

(7) I’ve known Paul for a long time.(ポールとは長い付き合いだ。)

(8) How long have you been in this city?(この街にはどのくらいいるの?)

動作の継続を強調するときは〈have/has been + -ing〉(現在完了進行形)を使います。

(9) I have been learning the piano for two years.(私は2年間ピアノを習っている。)

(10) How long have you been working here?(ここではどのくらい働いているの?)


for / since / ago の使い分け

継続用法では、for(〜の間)と since(〜から)を使います。for のあとは期間の長さ(for three days)、since のあとは起点となる時(since Monday)です。

(11) Emma has been in London for 4 months.(エマは4か月間ロンドンにいる。)

(12) We’ve been waiting since noon.(正午からずっと待っている。)

一方、ago(〜前に)は「今から〜前に」という意味で、過去形とのみ使い、現在完了とは使えません。

(13) Ben left 20 minutes ago.(ベンは20分前に出た。)

for と ago を対比すると、視点の違いがはっきりします。

(14) Sara arrived two days ago.(過去形)(サラは2日前に着いた。)

(15) He has been here for two days.(現在完了)(彼は2日間ここにいる。)


完了・結果用法|「〜してしまった」

現在完了の完了・結果用法は、「〜してしまった(その結果、今こうだ)」と、現在の状況とのつながりを含みます。

(16) I’ve lost my train ticket.(電車の切符をなくした=今も見つかっていない。)

(17) We have sold our house.(私たちは家を売ってしまった。)


つまずきポイント:現在完了と過去形の使い分け(yesterday・agoに注意)

完了用法は単純過去形とほぼ同じ意味になることもあります。しかし、過去の一点を示す副詞(yesterday, last week, 〜ago, when …?)があるときは、必ず過去形を使い、現在完了は使えません。

場面正しい形
今とのつながりを表す現在完了I’ve lost my ticket.(今も見つからない)
yesterday など過去の一点がある過去形のみI lost my phone yesterday.
when …? で過去の時点を問う過去形のみWhen did you sell …?

(18) I lost my phone yesterday.(× I have lost … yesterday)(昨日電話をなくした。)

(19) When did you sell your house?(× When have you sold …?)(いつ家を売ったの?)


ミニ確認問題

問題(クリックで解答)

  • 現在完了形にしなさい:I( see )this movie.
  • 現在完了形の疑問文に:you / ever / be / to Kyoto
  • 現在完了形に:She( live )here for ten years.
  • for / since / ago から選ぶ:I’ve lived here( )2015.
  • 現在完了 or 過去形:I( have lost / lost )my keys yesterday.
  • 現在完了 or 過去形:When( have you arrived / did you arrive )?

解答

  • I have seen this movie. / 2. Have you ever been to Kyoto? / 3. She has lived here for ten years. / 4. since(起点となる時) / 5. lost(yesterday があるので過去形) / 6. did you arrive(when で過去の時点を問うので過去形)

まとめ

  • 現在完了は〈have/has + 過去分詞〉で、「完了・結果/経験/継続」の3用法を表す
  • 現在完了は過去と現在を結びつける、過去形は過去の一点で完結する
  • 経験は ever/never、継続は for(期間)/ since(起点) が目印
  • ago は過去形専用。現在完了とは使えない
  • yesterday・last week・〜ago・when …? があるときは必ず過去形

📘 この単元は『超速東大英文法』Unit21で、解説動画・暗記用例文シートつきで学べます。

演習問題と暗記用例文シートは公式LINEで無料配布中。→ ▶ 公式LINEで友だち追加して例文シートを受け取る

英文法を中学基礎から東大レベルまで一気にやり直す全体像は → 英文法やり直し 総まとめ(ハブ)


関連記事

前へ → Unit20 句動詞と語法/次へ → Unit22 受動態・it・疑問文 関連 → Unit28 現在完了4用法・未来完了・have been to

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次