※本ページにはアフィリエイト広告が含まれます。
※ 本記事は英語学習の参考として、現在完了(Present Perfect)を中心にまとめています。
📘 現在完了とは
現在完了(Present Perfect)は、過去に起きたことを、今の状態・結果と結びつけて伝える時制です。「いつ起きたか」よりも、今どうなっているかに焦点を当てる点が、過去形との最大の違いです。
主語 + have / has + 過去分詞
■ I have finished my work.(仕事を終えました=今は終わっている状態) ■ She has lived here for five years.(彼女は5年間ここに住んでいます=今も住んでいる)
大事なのは、現在完了は「過去」+「今」をセットで見るということ。過去形が「今と切り離した過去の一点」を表すのに対し、現在完了は「その過去が今につながっている」ことを表します。
📘 現在完了が表す3つの意味
現在完了は、大きく次の3つを表します。
- 完了・結果(〜し終えた/その結果、今こうだ) ■ I have just eaten lunch.(ちょうど昼食を食べたところです)
- 経験(今までに〜したことがある) ■ I have been to Kyoto.(京都に行ったことがあります)
- 継続(過去から今までずっと〜している) ■ We have known each other for ten years.(私たちは10年来の知り合いです)
👉 どれも「過去のことが、今の自分につながっている」という共通点があります。
📘 文の形(have / has + 過去分詞)
主語 + have / has + 過去分詞 が基本の形です。主語が三人称単数(he / she / it)のときは has を使います。
- I / You / We / They + have + 過去分詞 ■ They have arrived.(彼らは到着しました)
- He / She / It + has + 過去分詞 ■ She has arrived.(彼女は到着しました)
否定・疑問は have / has を使います。
- 否定:I haven’t finished yet.(まだ終わっていません)
- 疑問:Have you finished?(終わりましたか)
👉 過去分詞は規則動詞なら -ed(finish → finished)、不規則動詞は形が変わる(go → gone、see → seen、do → done)ので、よく使うものから覚えましょう。
📘 過去形とのちがい(最重要)
現在完了と過去形は混同しやすいので、ここを押さえましょう。
- 過去形=過去の一点(今と切り離す)。いつを表す語と相性がよい。 ■ I lost my key yesterday.(昨日、鍵をなくした=過去の事実)
- 現在完了=過去〜今のつながり(今どうなっているか)。 ■ I have lost my key.(鍵をなくした=今も見つかっていない)
👉 yesterday・ago・last 〜・just now・過去の年号 など「はっきりした過去の時」がある文では、現在完了は使えません。 その場合は過去形にします(→ くわしくは 過去形(Past Simple) 参照)。
📘 have been と have gone のちがい
経験・完了でまぎらわしい2つを区別しておきましょう。
- have been to 〜=〜に行ったことがある(今は戻っている) ■ She has been to London.(彼女はロンドンに行ったことがある=今はここにいる)
- have gone to 〜=〜に行ってしまった(今ここにいない) ■ She has gone to London.(彼女はロンドンに行ってしまった=今ここにいない)
👉 been は「経験・往復」、gone は「行ったきり」。ここはよく問われるポイントです。
📘 〔重要〕When の疑問文には現在完了を使わない
When 〜?(いつ〜?)とたずねる文は、「はっきりした過去の時」を聞いているのと同じなので、現在完了ではなく過去形を使います。入試でも頻出の要注意ポイントです。
❌ When have you finished the report? ⭕ When did you finish the report?(いつレポートを終えましたか)
👉 When は過去の一点をたずねる語。現在完了(今とのつながり)とは相性が悪い、と覚えましょう。一方 How long 〜?(どのくらい〜?)は継続をたずねるので、現在完了でOKです。
📘 since は「接続詞」としても使える
since は「〜以来」を表しますが、後ろに語句だけでなく文(主語+動詞)を続けることもできます。この場合、since に続く節は過去形にします。
- since + 語句:I have lived here since 2020.(2020年からここに住んでいます)
- since + 過去形の節:I have lived here since I was a child.(子どものころからここに住んでいます)
👉 主節は現在完了、since の節は過去形。「〜し始めた過去の時点」を文で表せると、表現の幅が広がります。
📘 よくある勘違い・注意点
❌ I have finished the report yesterday. ⭕ I finished the report yesterday.(昨日レポートを終えました)
👉 yesterday(はっきりした過去)があるので、現在完了ではなく過去形。ネイティブは “have done + yesterday” に強い違和感を覚えます。
📘 よく一緒に使われる語
- already(すでに・もう)/ yet(まだ/もう=否定・疑問で)/ just(ちょうど)
- ever(今までに)/ never(一度も〜ない)
- for(〜の間)/ since(〜以来)
■ Have you ever eaten natto?(納豆を食べたことはありますか) ■ I’ve lived here since 2020.(2020年からここに住んでいます)
🚩 ネイティブはこう感じる
① 現在完了は「今につながっている」感覚
ネイティブにとって現在完了は「過去の話」ではなく「今の話」です。だから今と無関係な過去には使いません。
- I have lost my wallet.(財布をなくした=今も困っている)
- I lost my wallet last week, but I found it.(先週なくしたが、見つかった=もう解決した過去)
👉 「今も影響が続いているか」で have done と did を選び分けます。
② アメリカ英語では過去形で済ませることも多い
「たった今〜した」を、イギリス英語は現在完了、アメリカ英語は過去形で言う傾向があります。
- I have just finished.(イギリス寄り)/ I just finished.(アメリカ寄り)
- Have you eaten yet?(英)/ Did you eat yet?(米・口語)
👉 どちらも通じます。会話では過去形+already / yet も普通に使われます。
③ 「今回が初めて/最上級」の後は現在完了
It’s the first time 〜/This is the best 〜 のような文の後ろは、現在完了が定番です。
- This is the first time I have been here.(ここに来たのは初めてです)
- It’s the best movie I have ever seen.(今まで見た中で一番の映画です)
④ How long 〜? には for / since で答える
「どのくらい〜している?」と継続をたずねる How long には、現在完了+for / since で返すのが自然です。
- How long have you lived here? — For ten years.(どのくらい住んでる? — 10年です)
- I have worked here since April.(4月からここで働いています)
👉 for は「期間の長さ」、since は「始まった起点」を表します。
📘 まとめ
- 現在完了=完了・経験・継続を「今」とつなげて表す(have / has + 過去分詞)
- 三人称単数は has/否定・疑問も have・has で
- yesterday・ago・last 〜 がある文は過去形(現在完了は不可)
- have been to(経験)と have gone to(行ったきり)を区別
- When の疑問文は過去形(現在完了は不可)/ since + 過去形の節も使える
- 〔ネイティブ〕今につながる感覚・first time/最上級の後・How long への for / since
英語を「使える」ようにしたい方へ
英文法は、実際の会話で使ってこそ身につきます。アプリで毎日少しずつ続けると、学んだ文法が自然に口から出るようになります。
スタディサプリ ENGLISH 新日常英会話
ドラマ仕立てのレッスンで、英文法を「使える英語」に。スマホで手軽に続けられます。