PollyStop
grammar

現在完了形の使い方:過去形との違いと「〜したことがある」の英語

🇺🇸 English · 🇯🇵 Japanese話者向け ·

現在完了形は、過去の出来事を「今」とつなげて話すときの形で、 have と過去分詞で作ります。日本語の「もう食べた」「行ったことがある」「三年住んでいる」は、どれも英語では I've already eaten 、 I've been to Kyoto 、 I've lived here for three years のように現在完了形になります。

日本語の三つの言い方が、英語では一つの形になる

日本語には現在完了形という文法の形はありません。そのかわり、「た」「たことがある」「ている」という別々の言い方で、同じ内容を表しています。日本人が現在完了形を難しく感じるのは、日本語では形がばらばらなのに、英語ではそれが一つにまとまっているからです。

日本語英語働き
もう昼ごはんを食べましたI've already had lunch.完了:今はもう済んでいる
まだ返事が来ていませんI haven't heard back yet.未完了:今もまだ
京都に行ったことがありますI've been to Kyoto.経験:今までに
三年前から東京に住んでいますI've lived in Tokyo for three years.継続:過去から今まで
鍵をなくしてしまいましたI've lost my key.結果:今も鍵がない

どの文にも共通するのは、話している「今」の状態に関心があることです。 I've lost my key は、鍵をなくしたせいで今困っている、という意味を含みます。過去形の I lost my key は、なくしたという過去の事実だけを述べていて、今見つかっているかどうかは分かりません。

過去のある時点を表す言葉とは一緒に使えない

日本人の英語でもっとも多い現在完了形の間違いは、 yesterday や last year のような、過去の特定の時点を表す言葉と一緒に使ってしまうことです。日本語の「去年京都に行ったことがある」は自然ですが、英語では時点を言ったら過去形にします。

間違い正しい形
I have visited Kyoto last year.I visited Kyoto last year.
I have finished the report yesterday.I finished the report yesterday.
When have you arrived?When did you arrive?
I have met him two years ago.I met him two years ago.

yesterday 、 last week 、 in 2019 、 ago 、 when I was a child のような言葉が出てきたら、過去形を使います。 when で「いつ」と聞く疑問文も、ふつうは過去形です。反対に、 ever 、 never 、 already 、 yet 、 just 、 so far 、 since 、 for のような言葉は、現在完了形と一緒に使われることが多い言葉です。

会話の流れ:現在完了形で始めて、過去形で続ける

実際の会話では、現在完了形と過去形が自然に入れ替わります。経験の有無を現在完了形で聞き、その経験について詳しく話すときは過去形に切り替えます。

  • Have you ever been to Okinawa? 沖縄に行ったことはありますか。
  • Yes, I have. I went there last summer. はい。去年の夏に行きました。
  • How was it? どうでしたか。
  • It was great. I swam every day. 最高でした。毎日泳ぎました。

last summer と時期を言ったところで、話は過去形に移っています。日本語では「行ったことがあります。去年の夏に行きました」と、同じ「た」で話を続けられるので、この切り替えを意識しにくいのです。

been と gone の違い

「行ったことがある」を英語にするとき、 gone ではなく been を使うのが基本です。

英語意味
She has been to Osaka.大阪に行ったことがある(今は戻っている)
She has gone to Osaka.大阪に行ってしまった(今はここにいない)

オフィスで同僚の居場所を聞かれて「大阪に行っています」と答えるなら、 She's gone to Osaka が合っています。自分の経験を話すなら、 I've been to Osaka twice のように been を使います。

「〜している」と期間:現在進行形ではない

日本語の「ている」に期間が付くと、英語では現在進行形ではなく現在完了形になります。ここも日本人がよく間違えるところです。

日本語間違い正しい形
東京に三年住んでいますI'm living in Tokyo for three years.I've lived in Tokyo for three years.
知り合って五年になりますWe know each other for five years.We've known each other for five years.
二十分待っていますI'm waiting for twenty minutes.I've been waiting for twenty minutes.

know のように状態を表す動詞は進行形にしないので、 have known になります。 wait のように動作が続いている場合は、 have been waiting という現在完了進行形を使うのが自然です。

「四月から」は from ではなく since

日本語の「から」は、英語では since と from に分かれます。過去のある時点から今まで続いていることを言うときは、 since と現在完了形を使います。

  • I've worked here since April. 四月からここで働いています。
  • I've been on this team since 2022. 二〇二二年からこのチームにいます。

I've worked here from April のように言うのは不自然です。 from は The new rule applies from April 1 のように、これから始まることや、 from nine to five のように始まりと終わりをセットで言うときに使います。期間の長さを言うなら for 、始まりの時点を言うなら since と覚えてください。

アメリカ英語とイギリス英語の違い

アメリカ英語の会話では、 just 、 already 、 yet と一緒に、現在完了形の代わりに過去形を使うことがよくあります。 Did you eat yet? や I just got here は、アメリカでは普通に聞く言い方です。イギリス英語では Have you eaten yet? や I've just arrived のように、現在完了形を使う傾向が強くなります。どちらも間違いではありませんが、試験や仕事のメールでは、現在完了形を使っておけば安心です。

現在完了形は、理屈を覚えるだけでなく、自分のことを話す文で使ってこそ身につきます。 PollyStop の音声チューターとの会話で、「どこに行ったことがあるか」「今の仕事をどのくらい続けているか」を英語で話してみてください。

よくある質問

現在完了形と過去形は、どう使い分ければいいですか?

今とのつながりに関心があるなら現在完了形、過去の出来事そのものを話すなら過去形です。 yesterday や last year のように過去の時点をはっきり言うときは、必ず過去形を使います。

「〜したことがある」は必ず現在完了形ですか?

今までの経験を言うときは現在完了形です。 I've been to London のように言います。ただし、いつ行ったかを言う場合は I went to London in 2019 のように過去形になります。

「ずっと〜している」に現在進行形を使ってはいけませんか?

for や since で期間を言うときは、現在進行形ではなく現在完了形を使います。 I've lived here for three years 、動作が続いているなら I've been waiting for twenty minutes のようになります。

Did you eat yet? は間違いですか?

アメリカ英語の会話ではよく使われる言い方で、間違いではありません。ただしイギリス英語や改まった文章では Have you eaten yet? のように現在完了形を使うのが一般的です。