現在完了形は、単純な「過去」を表す過去形とは違い、「過去のある時点」から「現在」までが線でつながっているイメージを持つ時制です。
過去のある時点から、現在がどうなっているのかを表します。
現在完了形は have+過去分詞 の形で書きます。
主語が「I」「you」「we」「they」「複数名詞」のとき → have + 過去分詞
主語が「he」「she」「it」「単数名詞」のとき → has + 過去分詞
※過去分詞は、受け身(受動態)で習った動詞の活用形です。
write - wrote - written の3番目
現在完了形の基本は、「過去に起こった出来事が、現在にどう関わっているか」を表します。
過去形:I lost my key. :鍵をなくしました。
→ 過去になくしたという事実だけ。今は見つかったかもしれない。
現在完了形:I have lost my key. :鍵をなくしてしまいました。
→ 過去になくして、その結果、今もなくて困っているという現在の状況まで含む。
この「今」とのつながりが現在完了形の核となる考え方です。
現在完了形には、文脈によって意味が変わる3つの主要な用法があります。
過去に始まった動作や状態が、現在までずっと続いていることを表します。
【キーワード】
for + 期間 (~の間)
since + 過去の時点 (~以来、~から)
have+過去分詞~for… で「…の間(ずっと)~している」(継続)という意味になります。
I have played tennis for two years. :私は2年間テニスをしています。
Yumi has watched TV for three hours. :ユミは3時間テレビを見ています。
I have lived in this town for ten years. :私はこの町に10年間ずっと住んでいます。
have+過去分詞~since… で「…から(ずっと)~している」(継続)という 意味になります。
I have known him since last year, :私は去年から彼を知っている。
Ken has been sick since yesterday. :ケンは昨日から病気です。
She has known him since she was a child. :彼女は子供のころから彼をずっと知っています。
【キーワード】
How long ...? (どのくらいの間~?)
How long+have+主語+過去分詞 で「…から(ずっと)~していますか?」(継続)という 意味になります。
How long have you lived in Japan? :あなたはどのくらい長く日本に住んでいますか?
How long have you used this computer? :あなたはどのくらいの期間、このコンピュータを使っているのですか?
過去に始まった動作が、ちょうど今完了したことや、過去の動作の結果が現在に影響を及ぼしていることを表します。
【キーワード】
just (ちょうど)=完了
already (すでに、もう)=結果
have+just+過去分詞~ で「ちょうど~したところだ」(完了)という意味になります。
Takeshi has just gone to school. :タケシはちょうど学校へ行ったところです。
I have just finished my homework. :私はちょうど宿題を終えたところです。
have+already+過去分詞~ で「すでに~したところだ」 「もう~してしまった」(結果)という意味になります。
Emi has already finished her homework. :エミはすでに宿題を終えたところです。
The train has already left. :その電車はすでに出発してしまいました。
【キーワード】
yet (まだ~していない)
have not+過去分詞~+yet. で「まだ~していない」という意味になります。
He has finished his work yet. :彼はまだ仕事を終えていません。
I haven't finished my lunch yet. :私はまだ昼食を終えていません。
【キーワード】
yet (もう~しましたか?)
Have+主語+過去分詞~+yet? で「もう~しましたか?」という意味になります。
Have you eaten lunch yet? :あなたはもう昼食を食べましたか?
Have you done your homework yet? :あなたはもう宿題をしましたか?
答え方:
はい、しました。 → Yes, I have.
いいえ、まだです。→ No, not yet.
過去から現在までの間に、何かを経験したことがあるかないかを表します。
【キーワード】
once (1回), twice (2回), ~ times (~回)
before (以前に)
have+過去分詞~+before で「(以前)~したことがある」(経験)という意味になります。
経験を表す副詞語句として、befor(前に)、once(一度、一回)、twice(二回)、~times(~回)などがあります。
I have visited Fukuoka before. → 私は以前、福岡を訪れたことがあります。
【重要表現】have+been+to~
「~へ行ったことがある」という意味の経験を表す決まり文句です。
I have been to Hokkaido once. → 私は一回北海道へ行ったことがあります。
She has been to Hawaii many times. :彼女は何度もハワイへ行ったことがあります。
【キーワード】
never (一度も~ない)
have never+過去分詞~ で「今までに一度も~したことがない」(経験)という意味になります。
Yumi has never read that book. :ユミはあの本を今までに読んだことがありません。
He has never seen a koala. :彼は一度もコアラを見たことがありません。
Ken has never been to U.K. :ケンは今までに一度もイギリスへ行ったことがありません。
【キーワード】
ever (今までに)
Have+主語+ever+過去分詞 で「今までに~したことがあるのか?」(経験)という意味になります。
Have you ever read this book? :あなたは今までにこの本を読んだことがありますか?
答え方:
はい、あります。 → Yes, I have.
いいえ、ありません。→ No, I have not. (haven't.) / No, I have never.
Have you ever been to France? :あなたは今までにフランスへ行ったことがありますか?
How+often/many times+have+主語+過去分詞 で「今までに何回~したことがあるのか?」という意味になる。
How many times have you read this book? :あなたは今までに何回この本を読みましたか?
| 用法 | 意味 | キーワード |
|---|---|---|
| 継続 | (ずっと)~している | for, since, How long |
| 完了・結果 | ~してしまった ~したところだ |
just, already, yet |
| 経験 | ~したことがある | once, twice, ever, never, before |
have been in ~ で「~に居たことがある」という意味になる。
I have been in Nagano. → 私は長野に居たことがある。
現在完了は、過去を表す副詞語句(ago「~前に」、when「いつ」「~の時」、yesterday「昨日」、last year「去年」など)と一緒に使うことができない。