
まずは基礎問題で腕だめし! Let’s start!
現在完了形とは?
過去のある時点から今のことまで、1文の中でまとめて表現できる文法です。
他の時制との違い
過去形では、過去のある時点の話しかできません。
(例)I had a fever yesterday. (私は昨日、熱がありました。)

昨日は熱があったことが分かりますが、今現在どうなのか(熱があるのかないのか)は分かりませんよね。
では、「今も熱がある」ことを伝えたい時はどうすればよいのでしょうか。
(例)I had a fever yesterday. (私は昨日、熱がありました。)
I still have a fever now. (今もまだ熱があるんです。)

今まではこのように過去形の文+現在形の文の2文を使って説明していました。
では、現在完了形を使うとどうなるのでしょうか。
(例)I have had a fever since yesterday. (昨日から熱があります。)


過去形と現在形の2文に分けていた表現でも、現在完了形を使うと1文で説明できてしまうんです。

これが最初に言っていた「過去のある時点から今のことまで、1文の中でまとめて表現できる」っていうことなんだね!
現在完了形の用法は3つある
実は現在完了形には3つの用法があります。
どの用法でも、過去の状況が今現在とつながりがある場合に使えるということは変わりません。
(ひよこの例では、現在完了形の中でも継続用法というものを取り上げて説明しました。)
基本は 助動詞 have + 動詞の過去分詞形
すべての現在完了形の基本は、助動詞have + 動詞の過去分詞形。
ここで出てくるhaveは、これまでに勉強してきた一般動詞のhave(~を持っている、~がある、~を食べる)とは違います。
現在完了形で用いるhaveは助動詞です。
ただし、中学英語で習う他の助動詞(can, willなど)と違い、助動詞haveの後ろには動詞の原形ではなく動詞の過去分詞形を用います。
今回は継続用法についてくわしく勉強していきましょう。
現在完了形(継続用法)とは?
先ほど、現在完了形は、過去から現在までの状態や動作を説明する時に使うとお話ししましたね。
継続用法では、過去から現在までずっと続いていること(継続していること)について説明することができます。
他の時制との違い
まずは現在完了形(継続用法)の例文を見てみましょう。
(例)I have lived in Hawaii Island for three years. (私はハワイに3年間住んでいます。)


継続用法を使うことで、「ずっと~している」という意味を表す文を作ることができるんだね。
では、もしこの例文が過去形だったらどのような意味になるのでしょうか。
(例)I lived in ハワイ Island for three years. (私はハワイに3年間住んでいました。)


現在完了形の文では、3年前から今も継続してハワイに住んでいることが分かります。
対して過去形の文では、過去のどこかの時点で3年間ハワイに住んでいたことがあり、現在は住んでいない(もしくは分からない)ことが分かります。
期間の for と起点の since
継続用法でよく使われる表現が、期間のforと起点のsinceです。
どのくらいの期間続いているのかを表すfor(~の間)や、いつから今まで続いているのかを表すsince(~から)といった前置詞を、文末に加えることがよくあります。


よくある間違い since five years ago とは?
日本人の感覚では、よく「5年前から英語を勉強しています。」というように話すことがありますが、英語の表現ではこのように表すことはありません。
(例)× I have learned English since five years ago. (5年前から英語を勉強しています。)


基本的に「sinceとagoは共存しない」と覚えておいてくださいね。
「5年前から勉強している」ということを伝えたい時は、「5年間勉強している」と、期間に変えて伝えるとよいでしょう。
(例)○ I have learned English for five years. (5年間、英語を勉強しています。)
肯定文
肯定文とは、いわゆる普通の文のことです。書いてある意味の通りの文のことを指します。
現在完了形(継続用法)の肯定文では「ずっと~しています」という意味の文を作ることができます。
基本の語順とルール
現在完了形の文を作る時は、助動詞haveを使います。
その後ろにくるのは動詞の過去分詞形です。

それでは、肯定文の例文を見てみましょう。
- I have loved my dog for ten years. (ぼくは10年間愛犬を愛しています。)
- We have known each other since we were five years old. (私たちは5歳の頃から知り合いです。)
- Aiko has learned English for many years. (あいこは長年英語を学んでいます。)
- He has been a science teacher since 2024. (彼は2024年から理科の教師として働いています。)

たとえば1. や2. のように、主語が1人称、2人称の場合は、助動詞haveはそのままの形(haveのまま)で使います。

3. や4. のように主語が3人称単数の場合は、助動詞haveの形はhasに変わるんだね。
次は否定文について学びましょう。
否定文
否定文とは、肯定文とは逆の意味、つまり内容を否定する文のことを指します。
現在完了形(継続用法)の否定文では「(~の間)~していません」や「(~から今まで)~していません」という意味の文を作ることができます。
基本の語順とルール
文を否定の意味にするには、notを用いて、have + not + 過去分詞の語順に並べます。

それでは、他の例文も見ていきましょう。
- I have not seen my sister since yesterday. (私は昨日から妹に会っていません。)
- They have not drunk anything for a day. (彼らは1日何も飲んでいません。)
- Yuto has not spoken in German since he came back to Japan. (ゆうとは日本に帰国してからドイツ語を話していません。)
- Typhoon has not come to Japan for a while. (台風はしばらく日本に来ていません。)

たとえば1. や2. のように、主語が1人称、2人称の場合は、助動詞haveはそのままの形(haveのまま)で使います。

3. や4. のように主語が3人称単数の場合は、助動詞haveの形はhasに変わるんだね。
次は疑問文について学びましょう。
疑問文
疑問文とは、相手に尋ねたり依頼したりするときに使う文のことです。
現在完了形(継続用法)の疑問文では「ずっと~していますか?」と尋ねる文を作ることができます。
基本の語順とルール
疑問文では、他の助動詞の疑問文と同じく、助動詞haveを主語の前にもってきます。

疑問文では、他の助動詞の疑問文と同じく、助動詞haveを主語の前にもってきます。

(例)Have you been on the basketball team for two years?(あなたは2年間バスケットボールチームに所属していますか?)

(例)― Yes, I have. (はい、しています。)
― No, I have not. (いいえ、していません。)
答える時はYes/Noを使います。
Yesの後ろには主語 + haveが続きます。
それでは、他の例文も見ていきましょう。
- Have you lived in Chiba since you were a child? (子供の頃から千葉に住んでいるのですか?)
― Yes, I have. (はい、そうです。)
― No, I have not. (いいえ、違います。) - Has she taught music at junior high school for thirty years? (彼女は30年間、中学校で音楽を教えているのですか?)
― Yes, she has. (はい、そうです。)
― No, she has not. (いいえ、違います。) - Has your father used that computer since last year? (あなたのお父さんは去年からそのコンピューターを使っていますか?)
― Yes, he has. (はい、そうです。)
― No, he has not. (いいえ、違います。)
「どのくらいの期間~したことがあるか」を尋ねる疑問文
現在完了形の継続用法では、期間のforや起点のsinceを使って「(どのくらいの期間)~したことがあります。」と伝えることができます。
では、相手にどのくらいの期間したことがあるか尋ねたい時は、どのような表現を使えばよいのでしょうか。
- How long have you liked that singer? (あなたはどれくらい前からその歌手が好きですか?)
― I have liked her since 2015. (2015年からです。) - How long has he been married to Meg? (彼はメグと結婚してどれくらいになりますか?)
― For twenty years. (20年になります。)

このように、疑問文では文頭にHow longを付けることで期間を尋ねる表現にすることができます。
助動詞 have の短縮形
be動詞や一部の他の助動詞と同じように、助動詞haveも短縮して使うことができます。
- I’ve been a student at this college for four years. (私はこの大学に4年間通っています。)
- They’ve been good friends since they were born. (彼らは生まれたときから仲の良い友達です。)
- Aiko hasn’t had any pets for six months. (あいこはここ半年、ペットを飼っていません。)
まとめ

今回の重要ポイントを振り返りましょう。
【基礎固め】無料プリント
画像をクリックすると拡大表示(PDF表示)されます。