a. 現在完了形 present perfect

動詞の部分を 「have + 動詞の過去分詞形」 にする。

 現在完了形は基本的に三つの用法があると考えられ、どの用法も、過去の出来事と現在の出来事を関連付ける意味で使われるようです。過去にあった出来事が現在にも影響を与えているときに使われる表現です。現在完了形には”経験””継続””完了”の三つの用法がありますが、以下、順に概要の説明をしようと思います。


経験

I have seen the movie before.  ≪私は以前、その映画を見たことがある。≫

 この文章は「〜したことがある」と、自分の経験したことを述べる表現で、”before(以前)”が、この
経験用法の手がかりとなります。他にも、”once(一度、一回)”、”twice(二度、二回)”、”three times(三度、三回)”
などが使われると、経験を表すことになります。

I have never seen the movie.  ≪私はその映画を(一度も)見たことがない。≫
Have you ever seen the movie ?  ≪あなたはその映画を(これまで)見たことがありますか?≫

”never (一度も〜したことがない)”、”ever (これまで)”は、ともに経験用法の表現を作る副詞です。
”never”は否定文、”ever”は疑問文で出てくることがあります。後で触れておきますが、以上の太字になっている手がかりが使われていない場合があります。しかし、その場合は前後の文意で判断することになります。



 余談ですが、I have seen the movie before. という言葉がなぜ経験を表すかというと、seen the movie before
(以前、映画を見た)ということを have(持っている) と解釈することから始まったようです。




継続

She has worked in Saitama for ten years. ≪彼女は10年(ずっと)埼玉で働いている。≫
(haveは三単現でhasに)

 継続用法は、「(ずっと)〜している」と訳すのが基本。過去のある時点からはじめたことが、今も続いていることを表します。 ”for(〜間)”、”since(〜から、〜の時から、〜以来)” を have+動詞の過去分詞形 と一緒に見かけたら継続用法だと判断しましょう。 これは今現在行っていることを表す現在進行形とは異なります。例えば、

She is working in Saitama.

という表現は今彼女が働いている最中であることを表していますが、

She has worked in Saitama for ten years.

は、埼玉で職についていることは確かですが、今現在働いているとは限りません。 さらに、現在進行形では以下のような表現はできません。

He has lived in Yamanashi since 1989. ≪彼は1989年から山梨に(ずっと)すんでいる。≫

1989年から、10年間というように、過去との関わりを持たせるには現在完了形を使うほうが良いでしょう。




完了

I have just finished the book. ≪私はその本をちょうど読み終えたところだ。≫

 ”just(ちょうど〜したところだ)”、”already(すでに〜してしまっている)”を見かけたら完了用法となり、過去から続いていたことが現在においては終了していることを表します。そして、時にその状態が続いていることを表すことがあります。上記の例文では単純に過去形でも表現できる場合がありますが、過去形と大きな差ができるのは以下のような場合です。

He has become a doctor. ≪彼は医者になった。(そして今も医者である。)≫

He became a doctor. ≪彼は医者になった。(しかし、今も医者であるかはわからない。)≫

使いこなすことは容易ではありませんが、なるべく意識して使うようにすると良いと思います。最後に”already”の使い方について触れておこうと思います。

1.I have already done my work.   ≪私はもう仕事を終わらせてしまっている。≫
2.I haven't done my work yet.    ≪私はまだ仕事が終わってません。≫
3.Have you done your work yet ?  ≪あなたはもう仕事を終えましたか?≫

上記の1の文章を否定文にしたものが2、疑問文にしたものが3です。いずれも”already”が”yet”に変わっています。
その際、”yet”の意味が、否定文の時には「まだ」に変わっていることに注意してください。




経験用法のまとめ

以下の言葉を have + 動詞の過去分詞形 と一緒に見かけたら経験用法と判断しましょう。

before 以前 I have climbed Mt. Fuji before. ≪私は以前富士山に登ったことがある。≫
once 一度、一回 They have tried natto once.   ≪彼らは一度納豆を試してみたことがある。≫
twice 二度、二回 She has seen him twice.     ≪彼女は二回彼に会ったことがある。≫
three times※ 三度、三回 He has driven the car three times.≪彼は三回その車に乗ったことがある。≫
ever これまで Have they ever cooked ?     ≪彼らは料理したことあるの?≫
never (一度も)〜ない I have never clean my room.   ≪私は部屋を(一度も)掃除したことがない。≫

※三回以降は”〜times”を使う。

have been to 〜 「〜に行ったことがある。」 ”here”, ”there”などの場所を表す副詞のときは”to”をつけない。

I have been to Australia.   ≪私はオーストラリアに行ったことがある。≫
She has been there.      ≪彼女はそこに行ったことがある。≫

上記の手がかりがなくても経験用法として訳すかどうかは前後の文の内容によるということに注意。



継続用法のまとめ

以下の言葉を have + 動詞の過去分詞形 と一緒に見かけたら継続用法と判断しましょう。

for※ 〜間、(〜かん)
〜のあいだ
I have had this bag for three years. 
 ≪私は三年間このバッグを所持している。≫
He has wanted the car for a long time.
≪彼はその車がずっとほしかった。≫
since※2 〜から、〜のときから
〜以来
You have lived in Fukuoka since 1977.
≪あなたは1977年から福岡に住んでいる。≫
She has studied English since yesterday.
≪彼女は昨日からずっと英語を勉強している。≫
The man has worked here since he was eighteen.
≪その男の人は18歳のときからずっとここで働いている。≫           

※  for は単純にその出来事が継続している期間を表すため、 数字を用いる。for 1977 とはならないように!
   1977年間と解釈されてしまうかもしれません。

※2 since はその出来事の始まった時点をあらわす。主語、動詞から始まる場合があることにも注意。

have lived in 〜 「〜にずっと住んでいる。」
have been in 〜 「〜にずっといる、ずっと住んでいる。」

I have lived in Kanagawa.  ≪私は神奈川にずっと住んでいる。≫
I have been in Kanagawa.  ≪私は神奈川にずっと住んでいる。≫

両者は、少し意味に差がありますが、ずっと住んでいるという意味で同じように使われます。

完了用法のまとめ

以下の言葉を have + 動詞の過去分詞形 と一緒に見かけたら完了用法と判断しましょう。

just ちょうど〜したところだ I have just eaten lunch.       
≪私はちょうど昼食をとったところです。≫
already すでに(もう)〜してしまっている I have already washed the dishes.
≪私はもう皿を洗ってしまっている。≫
yet (疑問文で)もう〜しましたか Have you bought it ?
≪もうあなたはそれを買いましたか?≫
(否定文で)まだ〜していない I haven't bought it yet.
≪私はまだそれを買っていません。≫