このページの読了時間:約13分12秒
現在完了形の基本イメージ
例文:I have lived in Osaka for two years.(私は2年間大阪に住んでいます)
have lived で「(ある期間ずっと)住んでいます」という意味になります。このように「have+過去分詞」の形を「現在完了形」と呼びます。
なぜ現在完了形がこのような意味を表すのか、それは過去分詞の働きによるところが大きいので、まずは過去分詞のイメージを再確認しておきましょう。
過去分詞は「過去の行為による結果の状態」です。そのため、現在完了形(have+過去分詞)は「~した状態をもっている」が基本的なイメージになります。
主語自身が過去に何かをやって(やりはじめて)、その結果の状態を現在もっているというわけです。イラストでは、主語の右手に「過去にやったこと」、左手に「その結果を現在もっていること」を表しています。
この基本イメージから次の3つの意味が出てきます。それぞれの場合に分けて詳しく確認していきましょう。
・過去に~した状態になって、いまもその状態である → ずっと~している
・過去に~した経験をもっている → ~したことがある
・過去に~した結果をいまもっている → ~してしまっている
現在完了の継続用法「(ずっと)~している」
例文:I have been busy since last week.(私は先週からずっと忙しい)
have been busy は「ずっと忙しい」という意味で、継続を表しています。
「過去のある時に忙しい状態になって、いまもその状態である」→「ずっと忙しい」となります。
■ 継続用法でよく使う単語
継続用法では、期間や開始時点を表すフレーズをよく使います。
・for a week(1週間)、for five months(5ヶ月間)
・since yesterday(昨日から)、since 1988(1988年から)
否定文
例文:He has not eaten anything since yesterday.(彼は昨日から何も食べていません)
現在完了の否定文は have の後に not を入れてつくります。また、not + anything で「何も~ない」という意味になっています。
疑問文
例文:Have you lived in Osaka for a long time?(あなたは大阪に長い間住んでいますか?)
現在完了の疑問文は have を主語の前に出してつくります。
■ 現在完了の疑問文への答え方
疑問文:Have you lived in Osaka for a long time?(あなたは大阪に長い間住んでいますか?)
答え:Yes, I have.(はい)
答え:No, I haven’t.(いいえ)
現在完了の疑問文には have で答えます。
現在完了の経験用法「~したことがある」
例文:I have heard the song twice.(私はその歌を2回聞いたことがある)
have heard は「聞いたことがある」という意味で、経験を表しています。「過去のある時に聞いた経験をもっている」→「聞いたことがある」というわけです。
■ have been to ~(~に行ったことがある)
例文:I have been to Australia before.(私は以前オーストラリアに行ったことがある)
have been to ~ は「~に行ったことがある」という意味です。「過去のある時に行った経験をもっている」→「行ったことがある」というわけです。
■ 経験用法でよく使う単語
経験用法では、回数や期間などを表す単語をよく使います。
・once(1回)、twice(2回)、three times(3回)
・before(以前)
否定文
例文:I have never been to Hawaii.(私は一度もハワイに行ったことがない)
have never been to ~ で「一度も~に行ったことがない」という意味になります。
「~したことがない」と言うときには、not の代わりに「一度もない」という意味の never がよく使われます。
疑問文
例文:Have you ever been to Okinawa?(あなたは沖縄に行ったことがありますか?)
Have you ever been to ~ で「(いままでに)~に行ったことがありますか?」という意味になります。
「~したことがありますか?」と相手に経験を尋ねるときには、「いままでに」という意味の ever がよく使われます。
現在完了の完了用法「~してしまっている」
例文:I have just finished my homework.(私はちょうど宿題を終えたところです)
have just finished は「ちょうど終えたところ」という意味で、完了を表しています。
「過去のある時に終えた結果をいまもっている」→「終えている」となりますが、just(ちょうど)があるので「ちょうど終えたところ」という意味になるわけです。
■ 完了用法でよく使う単語
完了用法では、already(すでに)や just(ちょうど)などの単語をよく使います。
否定文
例文:He has not finished his homework yet.(彼はまだ宿題を終えていません)
「まだ~していない」と言うときには、「いままでのところ」という意味の yet がよく使われます。
have not finished で「終えていません」となり、これに yet を加えることで「いままでのところ終えていません」→「まだ終えていません」となります。
疑問文
例文:Have you finished your homework yet?(あなたはもう宿題を終えていますか?)
「もう~しましたか?」と相手に尋ねるときにも、「いままでのところ」を表す yet がよく使われます。
Have you finished で「終えていますか?」となり、これに yet を加えることで「いままでのところ終えていますか?」→「もう終えていますか?」となります。
ーーー
ことばの研究室
■ 過去形や現在形との違い
遠藤 今回、現在完了形を習ったわけですが、過去形や現在形との違いについて確認しておきましょうか。次の例文の意味を考えてみてください。
現在形:I don’t eat breakfast.
過去形:I didn’t eat breakfast.
現在完了形:I haven’t eaten breakfast.
今井 また微妙に面倒くさそうな例文ですね。えーと、こんな感じじゃないですか。
現在形:私は朝食を食べません。
過去形:私は朝食を食べませんでした。
現在完了形:私は朝食を食べていません。
遠藤 おぉっ、すばらしい、全部正解ですよ! 特に、動作を表す動詞の現在形は「習慣」を表すので、「普段朝食を食べない」という意味になるのがポイントですね。
今井 これくらい朝飯前ですよ。でも……、自分で訳しておいてなんですが、過去形と現在完了形って何が違うのかよくわからないですね。
遠藤 確かにどちらも朝食を食べなかったという意味では同じですからね。ポイントは、過去形は「過去のこと」、現在完了形は「現在のこと」を言いたいときに使うということです。
今井 現在完了形は「現在のこと」ですか?
遠藤 そうです。これは前後の文脈がないとわかりにくいので、過去形と現在完了形に前後の文脈を加えてみましょう。
過去形:私は朝食を食べませんでした。なぜなら、朝起きたのが遅かったからです。
現在完了形:私は朝食を食べていません。だから、いますごくお腹が空いています。
今井 あー、なるほど。「いまお腹が空いている」のような現在のことにつなげたいときは、「朝食を食べていません」のような現在完了形を使うんですね。
遠藤 そうです。逆に「朝起きたのが遅かった」のような過去のことにつなげる場合は、「朝食を食べませんでした」のような過去形を使うわけです。
■ have been to が「~に行ったことがある」という意味になる理由
今井 have been to は「~に行ったことがある」とのことでしたが、been って be動詞の過去分詞ですよね。どうして「行った」みたいな意味が出てくるのですか?
遠藤 been って難しいですよね。本文の例文をもう少し解説しておきましょうか。
例文:I have been to Australia before.(私は以前オーストラリアに行ったことがある)
have been to の been は「存在」を表す be動詞の過去分詞形です。また、過去分詞は「完了」のニュアンスを含んでいます。これらを合わせて「存在の完了」となるわけですが、この「存在の完了」はどういう状況を表していると思いますか?
今井 存在の完了? 死んだってことですか?
遠藤 それは言い過ぎですね(笑) これは「存在していたけど、最終的にいなくなった」という状況を表しているのです。日本語に訳すならば「存在していた」ですね。
今井 ふーむ、なるほど。でも、それじゃあ、「オーストラリアにいたことがある」という意味になりませんか?
遠藤 そうですね。ここで to の働きが出てくるわけですが、been の「存在していた」がわかるようにオーストラリアの地図にレーダー探知機をかぶせたものを想像してもらえたらと思います。
一連の流れを見てもらうとわかると思いますが、have been to Australia は「オーストラリアに行って、そこに存在していて、最終的にいなくなった」という状況を表しています。これを日本語に訳したら「オーストラリアに行ったことがある」となるわけです。
今井 おぉ! すごいわかりやすいですね。……でも、これだと飛行機の給油で立ち寄っただけの場合も含まれてしまいませんか?
遠藤 もちろん含まれます。ただ、実際にはある程度滞在していたニュアンスで使うことが多いですよ。
■ have been to と have gone to の違い
今井 have been to が「~に行ったことがある」になるのはわかりました。でも、まだ疑問があります。これまで僕の中では「行く」は go だったんです。have gone to だとダメなんですか?
遠藤 go は本来「元のところから離れる」というニュアンスを含んだ単語です。そのため、have gone to ~ だと「~に行ってしまった(元のところから離れてしまっている)」という意味になってしまうのです。
今井 なるほど。「いま、ここにはいません」のような別の意味が含まれてしまうんですね。
遠藤 そうなんです。ただ、最近は have gone to ~ を「~に行ったことがある」という意味で使うようにもなってきているようです。これは go をシンプルに「行く」として捉える人が増えてきたからでしょうね。
今井 それはいいですね。もっと広まってわかりにくい have been to を駆逐してほしいものです(笑)
遠藤 まあ、完全に取って代わるまでは相当時間がかかると思うので、have been to も覚えておいてくださいね。
■ 現在完了形では過去の時を表す表現は一緒に用いられない
遠藤 そういえば「行ったことがある」に関係することで、ちょっとショッキングなことをお伝えしないといけません。
今井 なんですか、藪から棒に。
遠藤 日本語では「2年前オーストラリアに行ったことがある」のような表現をよく使いますが、実はこれ、英語では1つの文で表せないのです。
今井 え? でも、さっきも「以前オーストラリアに行ったことがある」という表現が出てきていましたよね。どういうことなんですか?
遠藤 日本語はよく似ていても、英語では次のように表現が分かれるのです。
以前オーストラリアに行ったことがある | → | I have been to Australia before. |
2年前オーストラリアに行ったことがある | → | I have been to Australia. I went there two years ago. |
今井 ちょっと何言ってるかわかんないです。「2年前オーストラリアに行ったことがある」は I have been to Australia two years ago. ではダメなんですか?
遠藤 残念ながらダメなんです。その理由を説明しますね。
(○) I have been to Australia before.
(×) I have been to Australia two years ago.
ポイントは have been to は「現在のことを述べている」ということです。そのため、時を表す表現も「現在」を含むものでなければいけないのです。
今井 あー、時制がズレてしまうのか。現在形の have に対して、過去の時を表す two years ago は一緒に用いられないってことですね。
遠藤 そういうことです。逆に言えば、「2年前」という過去の時を表したいならば、動詞の時制も過去形にしないといけないわけです。
まとめると、日本語の「2年前オーストラリアに行ったことがある」は、「① 現在の経験」と「② 過去の出来事」に分ける必要があり、① I have been to Australia. と② I went there two years ago. という2つの文に分けて表すことになるわけです。
今井 うーん、理屈はわかりましたが、2つに分けるのは正直面倒くさいですね。
遠藤 その気持ちはよくわかります。でも、どうしても言語ごとに表しやすいこともあれば、表しにくいこともあるのです。お互い様なので、今回のような英語でスマートに表せない表現についても許容してあげてほしいなと思います。