現在完了形は、今まで勉強してきた基本時制(現在形・過去形・未来形)や進行形などと考え方が全く異なり、日本人が苦手とする文法です。
しかし、現在完了形は英語の中では大切なところなので、ここでは現在完了形の基礎と基本時制(現在形・過去形・未来形)との違いをじっくり解説していきます。
まず、現在完了形の形と意味を覚えましょう。現在完了形の形は「have(has) + 過去分詞(動詞の過去分詞形)」で、意味は継続、経験、完了(結果)の3つです。
(1)継続「(ずっと)〜し続けている」
(2)経験「(今までに)〜したことがある」
(3)完了、結果「〜し終えたところです、〜してしまった」
現在完了形は1つの形で3つの意味を表しますが、まずは現在完了形の継続から解説していきます。実際に、現在完了形の継続の文を作ってみましょう。
例えば、I live in Japan.「私は、日本に住んでいます。」という現在形の文の動詞liveをhave livedという形に変えると、以下のように現在完了形の文になります。
I have lived in Japan .
ところが、これだけだと経験の「私は、日本に住んでいたことがある。」と継続の「私は、(ずっと)日本に住んでいる。」のどちらの意味か分かりません。
そこで、経験か継続のどちらの意味で用いているのかはっきりさせるために、現在完了形の継続、経験、完了にはそれぞれキーワードがあります。
そして、現在完了形の継続を表すキーワードは、継続の期間を表すfor「〜間」とsince「〜から」です。forは、後ろに何年や何ヶ月など期間をそのまま付け、for two years「2年間」というような形で現在完了形の文の最後に付けます。
よって、先ほどの現在完了形の文にfor two yearsを文の最後に付け、以下のようにすると継続の意味になります。
I have lived in Japan for two years. 「私は、2年間日本に住んでいます。」
sinceは後ろに過去のある時点を表す言葉を置き、since two years ago「2年前から」というような形で以下のように現在完了形の文の最後に付けます。
I have lived in Japan since two years ago.
「私は、2年前から日本に住んでいます。」
現在完了形の文はhave(has)の後ろにnotを付ければ否定文になり、意味は「(ずっと)〜していない」というようにある状態の現在までの継続を否定します。
よって、He has lived in Japan since last year.「彼は、昨年から日本に住んでいます。」という現在完了形[継続]の文を否定文に書き換えると、以下のようになります。
He has not lived in Japan since last year.
「彼は、昨年から日本に住んでいません。」
この現在完了形[継続]の否定文は、去年アメリカなどの他の国に引っ越して、それ以来日本には住んでいないという現在までの継続の否定を表します。
そして、has notの省略形hasn'tを用い、以下のように書いても同じ意味になります。
He hasn't lived in Japan since last year.
現在完了形の文は、have(has)を主語の前に出し、文末にクエッションマーク?を付ければ疑問文になり、意味は「(ずっと)〜し(続け)ていますか」です。
よって、He has lived in Japan since last year.「彼は、昨年から日本に住んでいます。」という現在完了形[継続]の文を疑問文に書き換えると、以下のようになります。
Has he lived in Japan since last year?
「彼は、昨年から日本に住んでいますか。」
この現在完了形[継続]の疑問文は、「日本に住んでいる」という状態が現在まで継続しているかどうかを質問しています。
答え方はYesまたはNoとhave(has)を用い、以下のようになります。
Yes, he has. 「はい、住んでいます。」
No, he hasn't. 「いいえ、住んでいません。」
そして、以下のようにHow long「どの位の間」という疑問詞を現在完了形[継続]の疑問文の先頭に付けると、継続期間を尋ねることができます。
How long has he lived in Japan?
「彼は、どの位の間日本に住んでいますか。」
答え方はforやsinceで継続期間を表し、以下のようになります。
He has lived in Japan for ten years.
「彼は、10年間日本に住んでいます。」
He has lived in Japan since last year.
「彼は、昨年から日本に住んでいます。」
ここからは、現在完了形の経験について解説していきます。
経験のキーワードでよく用いられるものは、once「1回」、twice「2回」、three times「3回」などの経験の回数を表す言葉とbefore「以前」です。3回以上の回数は、three, fourなどの数にtimes「〜回」をつけ表します(four times「4回」など)。
そして、以下のようにonceやbeforeといって経験を表すキーワードが文末に付いていると、現在完了形の文は継続ではなく経験の意味を表します。
I have lived in Japan once. 「私は、1回日本に住んでいたことがあります。」
I have lived in Japan before. 「私は、以前日本に住んでいたことがあります。」
そして、現在完了形の文で「〜へ行ったことがある」という経験を表す時には、「行く」の過去分詞goneではなくbeenを用いるので注意が必要です。
よって、「私は、以前パリに行ったことがある。」という現在完了形の経験の文は、have been (to)を用い以下のようになります。
I have been to Paris before.
現在完了形の経験の文で、have(has) goneは使わないので注意しましょう。
通常、現在完了形の否定文はhave(has)の後ろにnotを付けますが、現在完了形の経験の否定文はnotではくnever「(今までに)1度も〜ない」を付けます。
否定文の意味は「(今までに)1度も〜したことがない」となります。
よって、He has lived in Japan before.「彼は、日本に住んでいたことがある。」という現在完了形[経験]の文を否定文に書き換えると、以下のようになります。
He has never lived in Japan before.
「彼は、(今までに)1度も日本に住んだことがない。」
また、現在完了形[経験]の否定文では、He has never lived in Japan.というように文末のbeforeをとってしまう場合もあります。
通常、現在完了形の文は、have(has)を主語の前に出し、文末にクエッションマーク?を付ければ疑問文になります。
現在完了形の経験の疑問文の場合、過去分詞の前にever「今までに〜」を置き、疑問文の意味は「(今までに)〜したことがありますか」となります。
よって、They have been to England twice.「彼らは、2回イングランドに行ったことがあります。」という経験の文を疑問文に書き換えると、以下のようになります。
Have they ever been to England twice?
「彼らは、今までに2回イングランドに行ったことがありますか。」
答え方は、YesまたはNoとhave(has)を用い、以下のようになります。
Yes, they have. 「はい、あります」
No, they haven't. 「いいえ、ありません。」
しかし、「2回〜したことがありますか」、「3回〜したことがありますか」といちいち経験の回数を尋ねることは普通しません。
そこで、現在完了形の経験の疑問文では、以下のようにHow many times「何回」を文の先頭に付け、経験の回数を尋ねることができます。
How many times have they been to England?
「彼らは、何回イングランドに行ったことがありますか。」
答え方は現在完了形の経験の文に回数を付け、以下のようになります。
They have been to England twice.
「彼らは、2回イングランドに行ったことがあります。」
ここからは、現在完了形の完了について解説していきます。
現在完了形の完了のキーワードはjust「ちょうど」とalready「すでに」で、これらはhaveと過去分詞の間に置きます。以下は、現在完了形の完了の文です。
He has just finished the work.
「彼は、ちょうどその仕事を終えたところです。」
He has already finished the work.
「彼は、すでにその仕事を終えてしまいました。」
下の文は、仕事を終えた結果→今仕事がないということ(過去の動作による現在の結果)も表すので、現在完了形の完了は結果と分類されることもあります。
そして、現在完了形の完了(結果)で「行く」という動作の完了を表す時、片道で完了「行ってしまった」と往復で完了「行って(帰って)来た」があるので注意しましょう。
以下のように、「行ってしまった」という片道で完了を表す時はhave gone toを、「行って(帰って)きた」という往復で完了を表す時はhave been toを用います。
My brother has gone to the post office.
「私の弟は、郵便局へ行ってしまった(その結果今いない)。」
My brother has been to the post office.
「私の弟は、郵便局へ行ってきた(その結果今いる)。」
()内は訳す必要はありません。また、これらの表現の時には完了の意味を表していることは明らかなので、通常現在完了形の文中にjustやalreadyを付けません。
また、これらの現在完了形の文では、「行ってしまった」という完了は「その結果今いない」、「行って来た」という完了は「その結果今いる」という結果も表します。
現在完了形の文は、have(has)の後ろにnotを付ければ否定文になります。
そして、現在完了形の完了の否定文ではjustやalreadyをとり、文末にyet「まだ」を付け、意味は「まだ〜していない」となります。
よって、I have already finished the work.「私は、すでにその仕事を終えてしまった。」という現在完了形[完了]の文を否定文に書き換えると、以下のようになります。
I have not finished the work yet. 「私は、まだその仕事を終えていません。」
have notの省略形haven'tを用い、以下のように書いても同じ意味になります。
I haven't finished the work yet.
現在完了形[完了]の文は、have(has)を主語の前に出し、文末にクエッションマーク?を付ければ疑問文になります。
また、現在完了形の完了の疑問文ではjustやalreadyをとり、文末にyet「もう」を付け、意味は「もう〜してしまいましたか」となります。
よって、I have already finished the work.「私は、すでにその仕事を終えてしまった。」という現在完了形の文を疑問文に書き換えると、以下のようになります。
Have you finished the work yet?
「あなたは、もうその仕事を終えてしまいましたか。」
現在完了形[完了]の疑問文の場合、肯定文のjustやalreadyではなく文末にyet「もう」というキーワードを付けます。
最後に、現在完了形と現在形や過去形との違いについて考えてみます。まず、以下の現在形の文をみてみましょう
He lives in Japan. 「彼は、日本に住んでいます。」
この現在形の文は、彼が「今」日本に住んでいるということを表し、「過去にどこに住んでいたか」や「未来にどこに住んでいるか」については全く分かりません。
次に、以下の過去形の文をみてみましょう。
He lived in Japan last year. 「彼は、昨年日本に住んでいました。」
この文は、彼は昨年という「過去のある時点」で日本に住んでいたということを表し、彼が「今どこに住んでいるか」や「未来にどこに住んでいるか」は分かりません。
このように、現在形の文は「今」のことだけ、過去形の文は「過去のある時点」のことだけを表し、その他の時のことは分かりません。
このことから、現在形や過去形(未来形も)が表す時は、「今」や「過去のある時点」という「点」であることが分かります。
ここで、現在完了形について考えてみます。一番分かりやすいので、まずは現在完了形の継続の文をみてみましょう。
He has lived in Japan since last year. 「彼は、昨年から日本に住んでいます。」
この現在完了形の文だと、彼は日本に「昨年から今まで」ずっと住んでいるということが分かります。このように、現在完了形の文は、過去だけでもなく今だけでもなく「過去から今まで(ずっと)」と過去と現在が繋がっていることを表します。
現在形は「今」、過去形が「過去のある時点」という「点」を表すのに対し、現在完了形は過去から今まで時が繋がる「線」のようなイメージです。
次に、以下の現在完了形の経験の文をみてみましょう。
He has lived in Japan before. 「彼は、以前日本に住んでいたことがある。」
この文も、「生まれた時から今まで」の経験を表すので「生まれた時という過去のある時点」と「今」が繋がっている「線」のようなイメージになります。
現在完了形の完了(結果)は、過去形の文と混乱し易いので気をつけましょう。まず、以下の過去形の文をみて下さい。
He finished the work yesterday. 「彼は、昨日その仕事を終えた。」
この過去形の文は、昨日という「過去のある時点」で仕事を終えたというように、昨日の時点での動作しか表しません。
よって、「今」のことは分からないので、今はたくさんの仕事をしている可能性があります。あくまで、昨日仕事を終えたということしか分かりません。
次に、以下の現在完了形の完了の文をみてみましょう。
He has already finished the work. 「彼は、すでにその仕事を終えてしまった。」
この現在完了形の文は、「過去のある時点」で仕事を終えて、その結果「今」はすべき仕事がないということを表します。
よって、過去の動作が完了し、その結果として今の状態が分かります。やはり、過去のある時点と今が繋がる「線」のようなイメージになります。
過去形の文と現在完了形の完了[結果]の文は、日本語に訳すと非常に似ていますが表す意味は全く異なります。
もう1つ過去形と現在完了形[完了]の文を比べてみましょう。
以下の過去形の文は、「過去のある時点」で弟が郵便局へ行ったことだけを表し、「今」家に帰ってきているか、まだ外出中かは分かりません。
My brother went to the post office. 「私の弟は、郵便局へ行きました。」
ところが、以下の現在完了形[完了]の文は、「過去のある時点」で弟は郵便局へ行ってしまい、「今」もいないという結果も表します。
My brother has gone to the post office.
「私の弟は、郵便局へ行ってしまった。」
このように、現在完了形は過去と今が繋がる「線」ようなイメージになります。
このサイト内の画像と文章は全て複製及び転載を禁じます。 Copyright(C) 英語の文法−オンライン講座