現在完了進行形とは

今日は、現在完了進行形の勉強です。現在完了形は習ったけど、今度は現在完了進行形? 名前だけでもややこしい!って思いますよね。 しかも現在完了形の継続用法と現在完了進行形は日本語にすると意味は同じなんですよ!う~ん!???

have been playing the piano for two hours.  わたしは二時間前からピアノを弾き続けています。

これが現在完了進行形です。

Have been は have+過去分詞で、現在完了形。 been playing は be  +動詞ingの be   が過去分詞beenになっているだけなので、進行形です。現在完了進行形って、現在完了形と進行形がひとつになった形なんですね。意味も、「わたしは二時間前からピアノを弾き続けています」ですから、二時間前からずっと、という現在完了時制と、弾き続けているという進行形の意味をあわせもっています。

でも、ちょっと待って⁇ 「わたしは二時間前からピアノを弾き続けています」だったら、現在完了形の継続用法でいいんじゃない⁇と思いませんか?

現在完了形とどう違う?

現在完了形を思い出してみましょう。こんな説明をしましたよね。【現在完了形継続用法は、ずっと~している という日本語が適しています。現在までずっとしていることを表し、今もしているということを言っているのです。

I have lived in Nara since ten years ago.  私は10年前から、奈良に住んでいます。

これは 今も住んでいることをも表します。

疑問文 Has she lived in Nara for a long time?  は 「彼女は長い間、奈良に住んでいますか?」ですね。⁈ ずっと~している という意味なら、現在完了進行形も同じなんじゃありませんか?

ところが、実は日本語では、おなじだけれど、英語ではちょっと違うのです。どうちがうのか? それは、、、、状態が継続するときには、現在完了形。動作が継続するときには、現在完了進行形、と使い分けるのです。??? なんで?と思いますよね。そんな使い分けしなくても、どっちでもいいんじゃない?

進行形のルール

そこで、進行形のルールをここで確認しましょう。 じつは、英語では、状態が継続するときは、進行形にはできないんです。進行形にできるのは、動作が継続するときだけなんです。

I have lived in Nara since ten years ago.   私は10年前から奈良に住んでいる。

これは動作ではなく、住んでいるという状態の継続をあらわしていますよね。だから、現在完了形を使うのが正しく、私は2時間前からピアノを弾き続けています。というのは、状態ではではなく動作の継続を表しているので、現在完了進行形を使うのが正しいのです。 I have played the piano for two hours. はダメで、◎ I have been playing the piano for two hours. が正しいということなんです。状態の継続か動作の継続かで、現在完了形と現在完了進行形を使い分けなければいけないので、慣れていて感覚的に使い分けのできるネイティブと違って私たち日本人には、少々ハードルが高いかも知れませんね。実は、進行形にすることのできる動詞しか、現在完了進行形にもできないのです。

進行形にできない動詞・できる動詞

進行形にできない動詞があるんですよ。それは、状態を表す動詞です。like  love   know   see   hear   smell     have believe   などの動詞は、進行形にすることができません。進行形っていうのは、その動きが完結に向かって動いているということも表わすんです。好きだ 愛する 知っている 見える 聞こえる においがする もっている 信じている というような状態は、完結に向かうことはないので、原則として、進行形で使われないのですよ。

ところが、動作を表す動詞 play  practice  enjoy  paint  discuss   rain study    eat、  これらの動作はいつでも止めることができるでしょう? いつでも止められる動作は進行形で表せます。だから、いつでも止められる動作は現在完了進行形にもなるんです。

現在完了進行形のかたち

進行形の性質がわかってきましたね。では、話を現在完了進行形にもどしましょうか。現在完了進行形は、ずっと~し続けています という意味で、have/has + been + 動詞ing  という形を取ります。進行形のbe動詞がbeenという過去分詞形にかたちを変えて使われます。もともと現在完了形が、have/has + 過去分詞 だからですね。現在完了進行形では、have/has + be動詞の過去分詞been + 動詞ing となるわけです。ややこしそうですけど、英語はこの形と順番を覚えれば応用が効くので、ここでぜひ、マスターしましょうね!

It has been raining since this morning.は、「今朝からずっと(今も)雨が降り続いています」という意味です。では、疑問文にするにはどうするの? はい、これは現在完了形のときと同じです。have/has を前に出すだけですね。Has it been raining since this morning?   「今朝からずっと(今も)雨が降り続けていますか?」です。答え方も現在完了形と同じです。Yes, it has. / No, it hasn‘t. ですね。 How long has it been raining?    こんな疑問文もよく使われますよ。「雨はどのくらい降り続けていますか?」ですね。答えるときは It has been raining since this morning. のように普通の文で答えましょう。

現在完了形か現在完了進行形か

さて、( )の中に英語を入れてみましょう。 ただし(  )に一語とはかぎりませんよ。

  1. I have (      ) soccer for two hours.
  2. I have (      ) him for a long time.
  3. Has she (      ) the picture since last night?

答えは

  1. I have ( been playing ) soccer for two hours.
  2. I have ( known ) him for a long time.
  3. 3.Has she ( been painting ) the picture since last night?  でした。

できましたか? 2番は 知っている という状態を表す動詞know を使うので、現在完了形継続用法です。 1番と3番は、play paint という動作を表す動詞を使うので、現在完了進行形ですね!

1 ぼくは彼女を昨晩から待っています。

   I (             ) waiting her since last night.  

 ぼくは彼女を待っています。

    I (             ) waiting her.

2 彼女は一年前から、この街に住んでいます。 

    She (             ) in this town since one year ago.

 彼女は一年前、この街に住んでいました 。  

   She (             ) in this town one year ago.

答えは

1  I ( have been ) waiting her since last night.    現在完了進行形

   I (  am   ) waiting her.          現在進行形

2 She ( has lived ) in this town since one year ago.  現在完了形 

 She ( lived ) in this town one year ago.      過去形

住むという動詞live  は  動きではなく状態を表す動詞なので、進行形にはできません。「彼女は一年前、この街に住んでいました 。」は She ( lived ) in this town one year ago. で過去形です。 過去形だと、現在の状態はわかりませんから、今この街に住んでいるかどうかは不明です。