現在完了形

A2 Present perfect simple 25 / 50

要点

現在完了形は過去と今をつなぎます:have/has + 過去分詞。経験、最近の出来事、過去に始まって今も続いていることを表すときに使います。yesterday や last week のような、過去の一時点を表す語とは一緒に使いません。

規則

現在完了形は have / has + 過去分詞(動詞の「第3形」)で作ります。

  • 規則動詞は、過去分詞が -ed で終わります。これは過去形と同じです(work -> worked、live -> lived)。
  • 不規則動詞は、第3形を覚える必要があります(go -> went -> gone、see -> saw -> seen)。

現在完了形には、主に4つの使い方があります:

用法意味例
経験人生のいつかに何かが起きた(または起きなかった)ということ。正確な時期は問題ではない。I have visited Rome. / I have never tried sushi.
最近の出来事今に近く感じられる、終わった出来事。just、already、yet がよく使われる。She has just left.
今までのこと過去に始まり、今も続いていること。for と since を使う。We have known each other for years.
過去の動作と現在の結果何かが起きて、その結果が今も見えるということ。I have lost my keys.(今は持っていないという意味)

過去形との大きな違い: 文に yesterday, last week, in 2019, two days ago, when I was a child のような過去の一時点を表す語があれば、現在完了形ではなく過去形を使います。

誤り正しい
I have seen him yesterday.I saw him yesterday.
She has called me last week.She called me last week.

since の後に過去形が来るのは普通: 期間の起点は、その期間が始まった出来事を表す節全体で示されることがあります。その節は 過去形 になりますが、主動詞は現在完了形のままです:We have shared an office since the team moved upstairs. この過去形は期間の起点を示しているだけなので、主動詞を過去形に変えることはありません。

注(《米》と《英》の違い):アメリカ英語では、イギリス英語が現在完了形を使う場面でしばしば過去形を使います。例えば Did you eat yet?(《米》)と Have you eaten yet?(《英》)。どちらも通じます。

語形と文型

肯定文: 主語 + have/has + 過去分詞

主語have/has分詞
I / you / we / theyhavefinishedthe work.
he / she / ithasfinishedthe work.

否定文: 主語 + have not / has not + 分詞。短縮形:haven’t、hasn’t。

主語haven’t/hasn’t分詞
I / you / we / theyhaven’tseenthe film.
he / she / ithasn’tseenthe film.

疑問文: Have/Has + 主語 + 分詞?

Have/Has主語分詞
Haveyoutriedit?
Hasshecalledback?

短い答え方:Yes, I have. / No, I haven’t. - Yes, she has. / No, she hasn’t.

肯定文における have/has の短縮形:I’ve、you’ve、we’ve、they’ve、he’s、she’s、it’s。

不規則動詞の過去分詞:入門リスト

基本の語過去形過去分詞
bewas/werebeen
gowentgone
seesawseen
dodiddone
makemademade
havehadhad
taketooktaken
writewrotewritten
eatateeaten
meetmetmet

been と gone:

文意味
He has gone to the shop.彼はまだ出かけている(今、店にいる)。
He has been to the shop.彼は行って戻ってきた。

例文

English注
Have you ever been to Spain?経験:ever は人生の中のいつでも、という意味。
I’ve never tried Thai food.起きなかった経験。
She’s just finished her homework.Just はほんの少し前、という意味。
Have you done it yet?疑問文の中の Yet は、予定されている動作についてたずねる。
He hasn’t called me back yet.否定文の中の Yet は、今までに起きていない、という意味。
We’ve lived here for ten years.For + 期間:今も当てはまる。
They’ve known each other since 2010.Since + 起点:今も当てはまる。
I’ve lost my phone, so I can’t call you.はっきりした現在の結果を伴う、過去の動作。

よくある間違い

  • I have seen him yesterday. -> I saw him yesterday.:過去の一時点を表す語には過去形が必要。
  • She have finished. -> She has finished.:he/she/it には has を使う。
  • I have went to London. -> I have gone / been to London.:過去形の went ではなく、分詞(gone/been)を使う。
  • I live here for five years. -> I’ve lived here for five years.:「今までのこと」には現在形ではなく現在完了形が必要。
  • I’ve been there since two weeks. -> I’ve been there for two weeks.:for + 期間、since + 起点。

ヒント

  • 現在完了形の目印になる語:ever, never, just, already, yet, so far, for, since。
  • 過去形の目印になる語:yesterday、ago、last(week/year)、in 2019、when…。これらを見たら、時制を切り替える。
  • for は「how long?」に答える(for two days)。since は「from when?」に答える(since Monday、since we moved in)。
  • gone は「まだ出かけている」という意味、been は「行って戻ってきた」という意味。人物を思い浮かべてみましょう:今そこにいるか、いないか?