2013/3/24 up

大人の英文法−023  現在完了進行形 

 

現在完了進行形は「have[has]+been+〜ing」の形で「以前から今までずっと

〜し続けている」という意味を表す形です。

進行相                           be          +〜ing

完了相           have + 過去分詞

完了進行相    have  +  been         +〜ing

このように「進行」と「完了」を足し算すると,「be+過去分詞 → been」となります。

次の3つの文を比べてみましょう。

(a) I have lived here for ten years. (私はここに10年間住んでいる)

(b) I have been working here for ten years. (私はここで10年間働いている)

状態動詞(=進行形にしない動詞)は,完了進行形にもしません。

(a)の live は状態動詞なので,have been living ではなく have lived(現在完了形)で〈状態の

継続〉を表します。一方(b)の work は動作動詞なので,have been working(現在完了進行形)

で〈動作の継続〉を表します。

(b)と次の文を比べてみましょう。

(c) I have worked here for ten years. (私はここで10年間働いている)

この文は(b)とほぼ同じ意味で使うことができます。しかしこの文は「私はここで10年間の

勤務を終えたところだ」〈完了〉の意味にも解釈できるので,〈継続〉の意味を明確にしたい

ときは(b)を使う方がよい − これが学校英語の標準的な説明です。


 

いくつかの点を補足しておきます。

@ (b)と(c)の関係のように,「現在完了進行形を使う方が〈継続〉の意味が明確になるが,

現在完了形で代用することもできる」というタイプの動詞があります。「表現のための実践

ロイヤル英文法」(旺文社)では,そのタイプの動詞として work のほかに learn,live,

rain,sleep,stay,study,wait を挙げています。

A逆に言えば,それら以外の動作動詞を〈継続〉の意味で使いたいときは,現在完了進行形

にしなければならないことになります。

・ She has been talking [×has talked] on the phone for nearly an hour.

(彼女は電話で1時間近く話し続けている)

B(b)と(c)をもう一度見てみましょう。

(b) I have been working here for ten years. 

(c) I have worked here for ten years. 

この2つの文の意味は全く同じではない,と言うネイティブもかなりいます。その人たちは

次のような印象を持つようです。

・(c)は〈完了〉の意味(「ここで10年の勤務を終えた」)である。

・したがって(c)はこれから別の場所で仕事をするという響きがある。一方(b)はこれから

  先もここで仕事をするという場合に使う。

C(b)と(c)の違いは,次のようにも説明できます。

(b)は I'm working here. という文(現在進行形)をもとにした文であり,(c)は I work here.

(現在形)をもとにした文です。したがって(b)は work を一時的な行為としてとらえており,

(c)の話し手は work を〈習慣〉としてとらえています。したがって,

・ I have been working part-time here for a month.

 (私がここでアルバイトを始めてから1か月になります)

この文の場合,話し手がアルバイトを一時的な仕事と考えるなら,現在完了進行形を

使う可能性が高いと言えるでしょう。同時にこの文は,上記Bのとおり「これから先も

しばらくここでアルバイトを続ける」という含みを持つ,と感じる人もいます。  

 

「大人の英文法」のトップへ