現在完了と過去形の違いとは?yesterday/agoと使えない理由を5分で解説

現在完了と過去形の違いとは?yesterday/agoと使えない理由を5分で解説

現在完了と過去形、どう違うの?

生徒: この前「現在完了」ってちょっとだけ聞いたんですけど、正直…よくわからなかったです。

先生: ええ、それ普通ですよ。むしろ「現在完了わかる!」って人のほうが珍しいかも。

生徒: よかった…。なんか、「〜したことがある」とか言うけど、「行った」ってだけなら過去形でいいんじゃないかって…。

先生: その感覚、すごく大事。実はね、現在完了って「過去形との違い」を押さえると、一気にわかりやすくなるんです。

生徒: やっぱそこなんですね!

先生: そうだね。たとえば、「京都に行った」って言いたいとき―― “I went to Kyoto” なのか、”I have been to Kyoto” なのか。

生徒: そうそう!それ、いつも迷うんです!

先生: では、ちょっと比べてみようか。

A: I went to Kyoto last year. B: I have been to Kyoto.

この2つ、文としてはどっちも「京都に行った」なんだけど、何が違うと思う?

生徒: うーん…Aのほうは “last year” がある?

先生: そう、それがヒント。

実はね、現在完了って「いつ」っていうハッキリした過去の時点と一緒に使えないんです。これがめちゃくちゃ大事。

ここが最重要ルール

現在完了は、特定の過去の時点を示す言葉と絶対に一緒に使えない

一緒に使えない言葉

  • yesterday (昨日)
  • last week / last year (先週/去年)
  • ago (〜前)
  • in 2020 (2020年に)
  • this morning (今朝) ※もう午後の場合

全部ダメな例

  • I have been to Kyoto last year. ❌
  • I have seen him yesterday. ❌
  • He has finished it two hours ago. ❌
  • I have lived here in 2010. ❌

こう直す

  • I went to Kyoto last year. ✓
  • I saw him yesterday. ✓
  • He finished it two hours ago. ✓
  • I lived here in 2010. ✓


生徒: そうだんだ。それでは、「いつ」って言いたくなったら、過去形…?

先生: そうそう!だって「last year」はもう終わってるでしょ?それって今と関係ない「過去の箱」に入ってる感じ。

生徒: なるほど…では、「今」と関係あるのが現在完了?

先生: そのとおり!現在完了ってね、ざっくり言えば…

「過去のこと」なんだけど、「今」に影響がある・つながってる

っていうニュアンスがあるの。

現在完了って、どんなときに使うの?

先生: 大きく3つあるんだ。ちょっと順番に見てみよう。

① 経験:「〜したことがある」

先生: これは一番よく使うかな。

Have you ever been to Kyoto? (京都に行ったことある?)

「いつかは言わないけど、今の自分がその経験を持ってる」っていう聞き方。

I have been to Kyoto twice. (2回行ったことあるよ)

生徒: では、「去年行った」は過去形?

先生: そう!

I went to Kyoto last year. (去年行った)

「いつか?」を言いたいなら過去形。「行った経験があるか?」を言いたいなら現在完了。


② 完了・結果:「〜し終えた」

先生: たとえば…

Have you finished your homework? (宿題、もう終わった?)

これは「今、終わってるかどうか」がポイント。今の状態を聞いてるんだよね。

I have already finished it. (もう終わったよ)

「5時に終わった」って具体的な時刻を言いたいなら…

I finished it at 5 p.m. (過去形)


③ 継続:「ずっと〜している」

I have lived here for five years. (5年間ずっとここに住んでる)

She has studied English since 2020. (2020年から今も勉強してる)

生徒: これ、「今もまだ続いてる」ってのがポイントですよね?

先生: そう!逆に「もう住んでない」なら過去形。

I lived here for 5 years. (昔5年住んでた、今は違う)

生徒: あ、ちょっと待って。”for” と “since” って何が違うんですか?

先生: ああ、いいとこ気づいた!

  • for = 期間(5年間、3日間、2週間)
  • since = いつから(2020年から、月曜から、去年から)

for は「どのくらい」、since は「いつから」って覚えとくといいよ。

ちょっと練習してみようか

先生: 次の日本語を英語にしてみて。時制も考えてね。

  1. 私は昨日京都に行きました。
  2. 私は京都に行ったことがあります。
  3. 彼は宿題をもう終えました。(今も終わってる)
  4. 彼は昨夜宿題を終えました。
  5. 私はここに3年間住んでいます。(今も)
  6. 私は2010年にここに住んでいました。(今は違う)

生徒: えっと…(考える)

  1. I went to Kyoto yesterday.
  2. I have been to Kyoto.
  3. He has already finished his homework.
  4. He finished his homework last night.
  5. I have lived here for three years.
  6. I lived here in 2010.

先生: バッチリ!すごくいいです。特に1と4で「yesterday と last night があるから過去形」ってちゃんとわかってるね。

よく出る表現まとめておこう

先生: 会話でよく使う現在完了の表現も覚えとくと便利だよ。

  • Have you ever ~? (〜したことある?)
  • I have never ~. (〜したことない)
  • I have just ~. (ちょうど今〜したとこ)
  • I have already ~. (もう〜したよ)
  • I haven’t ~ yet. (まだ〜してない)
  • Have you ~ yet? (もう〜した?)

生徒: これは覚えておきたいですね!

先生: 特に会話ではよく使うから。

それと、迷ったときは「いつって言いたいかどうか」で判断するといいよ。 言いたいなら過去形、言わないなら現在完了って感じで。

生徒: わかりました!「いつ」がキーワードですね。

先生: そう。まずは「経験」と「継続」から慣れていくといいよ。 あとは使いながら覚えていけば大丈夫。