現在完了形と過去形の話

2023年5月投稿 / 2023年10月更新

英語の現在完了形は日本人が英語を学び始めて最初につまずく難関ではないだろうか。
過去形との違いに頭を悩ます人も少なくないだろう。だがポイントは1つ。

現在完了形…過去の行動や出来事が現在にどう影響しているか
過去形…単なる過去の行動や出来事

日本語にも昔はあった現在完了形

平安時代くらいまでは日本語にも過去形と完了形の区別があったらしい。
完了形は「〜たり」だったのが、時代とともに「〜た」だけになってしまい、過去形の「〜た」と混在するようになったという。
だから一般的には現在完了形の和訳を「〜しました」と教示する。

冒頭でも述べたように、過去形は単なる過去の出来事であり、現在完了形は「過去の出来事が現在どう影響しているか」ということ。
つまり、現在完了形にしてみれば過去の出来事よりもその結果生じた現在の状態がメインなのだ。だから、そのネーミングにも入っている通り過去形ではなく現在形の仲間。
それゆえ、和訳は「〜して(い)る」という現在進行形と同じ和訳にする方が適切なことも多い。

例えば、家族から「ピンクのシャツ洗ってる?」と訊かれたとき、「今洗っている最中か(現在進行形)」それとも「洗ってしまった状態で部屋のどこかにあるのか(現在完了形)」と、どちらにも捉えられる。

西日本の方言には、現在進行形と現在完了形の区別がされているので、この地域の方言がわかる人にはより理解しやすいだろう。Wikipedia完了形より
「〜おる」「〜よる」が現在進行形、「〜とる」「〜ちょる」が現在完了形。

【進行形】ピンクのシャツ洗いよるよ(今洗っている最中)
【完了形】ピンクのシャツ洗っとるよ(既に洗って部屋のどこかにある)

こういったことから、現在完了形の和訳は「〜した」「〜している」のどちらにも成り得る。
そのどちらになるかは文脈や会話の内容次第であるのは言うまでもない。

現在完了形の概念

現在完了形は、過去の動作や出来事が現在に何らかの影響があるという話し手の時制概念。

  1. 現在までに終えてしまったこと。その結果としてどうであるかという話し手の気持ち。
    「今はすでに終えてしまっている」「〜したよ、だから今は・・・」
    (過去に始めたんですけどね、今の話をするなら、今はしてしまった状態なんですよ。だから今は〜なんです)
  2. 直近の行動や出来事
    「たった今し終えたばかり」「最近〜したばかりよ」
    (ちょっと前の過去の話ではあるんですけどね、今の事みたいに最近のことなんです)
  3. 現在までの経験
    「今までに〜したことある」
    (過去の話ではあるんですけど、今まででどうかって話なので経験者です)
  4. 現在まで過去から継続的/断続的に続いてること
    「今の今までずっと〜してきた」
    (過去に始めて現時点までずっとしてきたんです。そしてそれがどのくらいの時間や期間なのかって話なんです)

現在完了形は現在が主役の時間感覚

現在完了形の主な特徴として、時間を表す副詞(句)が過去形に使う yesterday / last winter / last year / three years ago などは使えないという点がある。
それは、過去形が完全に過去の出来事であるのに対し、現在完了形は「過去→現在」とつながりを持った時制であるため・・・というのは一般的に教示されることだが、絶対に意識すべきもっと重要なポイントがある。
それは現在完了形は「現在が中心の時制」だということだ。

だから、逆に過去形に使う時間要素であっても、現在をも含む this morning / today / this year / always / recently / lately / these days / the last year などは現在完了形にも使う。
ちなみに last year は「昨年」だから過去形にしか使えないが the のつく the last year は今から遡った過去1年を指すから現在完了形にも使う。

過去形と現在完了形の時間要素

過去形にしろ現在完了形にしろ明確な時間要素を伴わないこともよくあるが、それら時制の性質上、伴う時間要素は決まっている。
過去形には「いつ」という明確な時間要素が伴うが、現在完了形には「期間、回数、もうすでに、まだ、最近」など「今」や「今まで」に関する時間要素を伴い、「いつ」という明確な時間要素を伴わない。

過去形 (did / was / were)・・・単なる過去の行動や出来事「〜した」
yesterday / last week / two years ago など

現在完了形 (have done / be動詞は have been)

  1. 完了・結果・・・今はもうし終わっている / 〜したよ(だから今は・・・)/ たった今終えたばかり / 最近〜したよ
  2. already / yet / just / recently / lately

  3. 経験・・・〜したことがある
  4. ever / never / before
    many times / once など回数を表すもの

  5. 継続・・・今の今までずっとしていた
  6. for two years / since 2006 など期間を表すもの
    in the last decade など現在から遡った時間を表すもの

現在完了形の完了と結果を明確に分ける必要はない

現在完了形の「完了」と「結果」の違いということで「完了はすでに終了したが今も同じ状態かはわからない、 結果は終了したときの状態が継続」だとか「完了は過去の出来事の結果が残らないもの、結果は過去の出来事の結果として何か残るもの」だとか「完了は目に見えて確認できないが、結果はそれが確認できるも」などという教示を目にしたが…。
「なんだこりゃ?笑」ではあるのだが、まあアカデミックな教示よろしく「文法という計算式にあてはめるだけの作業」なら、それもひとつの判断目安になるのだろう。
それにしても、日本人は英語が話せないという原因をここでも見た気がする。本質から逸脱して分けなくてもいいことを無理やり分けてそんなどうでもいいことに固執して教示していても、さらに混乱を増すのは自然な流れだろう。

現在完了形の内容自体が結果だと誤解釈している英語学習者も見受けられた。
現在完了形の「完了・結果」は現在完了形の内容をしたこと(完了)によって現在どのような状況になっているか(結果)を暗示したり付け足したりするもの。現在完了形の内容が「結果」ではない。

I've just eaten lunch (so I’m not hungry).
She has had an accident and she is in the hospital.

辞書でも「完了・結果」のように同じカテゴリとして記載されている通り、明確に分けられるものでもないし分ける必要もない。
完全に「完了」になるのは「つい最近の出来事」や「たった今終わったばかり」の事実だけを述べることが趣旨の場合だけであり、それらですら「今現在は終えていますという事実のご報告」以外は文脈や会話の流れ次第で「結果」になり得る。

「完了・結果」というのは、完了しているという事実だけを述べるときもあれば、それにプラスアルファーとして「その結果としてこうなんです」という暗示や付け足しや話し手の気持ちもある、ということ。
現在完了形である以上、過去の行動や出来事が現在に影響しているという「話し手の時制の概念」に過ぎない。
現在完了形の「完了・結果」で覚えていればいいのは1つ。
「〜したばかり/〜してしまった(だから今は○○なのよ)」
「だから今は○○なのよ」の部分は、暗示するときもあれば追加の言葉が付け足されるときもある。
ただそれだけのこと。

下の例文は「完了」(終えているという事実のご報告だけ)として教示されているが、
「結果」(暗示や話し手の気持ちを含む)にだってなる。

The clock has just struck ten.
I have already cleaned my room.

この文章だけ見れば副詞の just や already で「完了アピール」されているので、「時計はたった今10時を打った」「部屋はすでに掃除してしまった」で「はい、完了ですね!」となるが、
会話でも文章でも唐突にこれだけ話してこれだけで終わるわけではないだろう。 前後の流れがあって初めて完了や結果になるのだ。

*** 結果にもなる例 ***

A: I'll go home now. もう帰る。
B: Already? The clock has just struck ten.
 もう?時計は10時を回ったばっかりよ。(まだいいじゃない)

これは「時計はちょうど10時を回ったばかりだ」と事実報告しているわけではないことは明らかだろう。話し手の暗示を含む例。

I was going to stay home all day today, but I have already cleaned my room, so I'll go shopping.
今日は一日中家にいるつもりだったけど、もう部屋を掃除してしまったから買い物に行くわ。

現在完了形に yesterday は使えないのになぜ since yesterday は使えるのか

yesterday や last night など過去の時間要素は現在完了形には使えないのになぜ since が付くと使えるのか。

・× I have been sick last night.
・○ I have been sick since last night.

since が何者かわからなくても、現在完了形がよくわからなくても、英語を勉強していれば since と現在完了形は親密な仲だなぁと気づくであろう。
since を辞書で引けばすぐに目に飛び込んでくる。since は現在も続いていることを意味する語。
そこが「〜から」という日本語でも from と違う点である。
since yesterday は「昨日から現在まで続いている」ことを意味するから現在完了形にも使えるのだ。

また、whenから始まる疑問文は「いつ」という時間の一点を尋ねているため現在完了の形を取ることはできないが、 since を伴う since when「いつから」という疑問文には現在完了の形を取る、というのも有名なところ。
since は現在完了形とは親密な仲だが、それは since には「今も続いている」という意味を含むからである。

Since when have you been there?
いつからそこにいたの?
= How long have you been there?
どのくらいそこにいたの?

Since when have they been working in this field?
その会社はいつからこの分野で仕事をしてきたの?
= How long have they been working in this field?
その会社はどのくらいの間この分野で仕事をしてきたの?
※便宜上、例文は現在完了進行形

Since when have you been such a nice guy to everyone?
あなたいつからそんな誰にでも優しい人になったの?(そんな人じゃなかったでしょ)

※一般的には Since when 〜 よりも How long 〜が使われる。Since when を使うのは「何年から」などのように過去のある特定の時期を訊きたいとき、もしくは上の最後の例のような皮肉めいた表現のときに使う。

「○年前から(〜している)」を 「since ○ years ago」 とは言わない

これも日本語だと違和感がないから日本語で考えると間違えやすい典型的な例である。通じるか通じないかといえば通じはするが英語ネイティブにはヘンテコな英語に聞こえるらしい。

× He has lived in Japan since two years ago.
彼は2年前から日本に住んでいる。→日本語だと違和感がないから厄介

since は過去から現在を含むことを意味するので「〇年前」という過去と一緒に使えそうだが、ago は過去のある1点でだけではなく現在から遡ってカウントした過去なので、sinceとagoはベクトルが真逆になり一緒に使うとヘンテコになる。

・since = 過去から現在に向かっている … 現在完了形のサポート役
・ago = 現在から過去に向かっている … 過去形のサポート役

と、ここで「あれ?the last ○ years も現在から遡った時間で現在完了形には使えるのに?」と疑問がわくかもしれない。
しかし、the last ○ years は期間を表していているので during the last ○ years / in the the last ○ years のように「ここ○年の間に」と表現することはあっても「いつから」という表現には使わない。だから、現在から遡ったカウントではあるが過去のある1点を指すagoとは別物である。

2年前から現在まで(〜している)を表現したいなら以下になる。

He has lived in Japan for two years.
He has lived in Japan since 2021.
He started living in Japan two years ago.

現在完了形を日本語で理解する方が難しい

例えば、日本語では「ピンクのシャツは昨日洗ってるよ」という「完了形+昨日」のような文章でも意味は通じるが
I have washed your pink shirt yesterday. という英語では、いつの話なのか不明瞭だ。
通じるか通じないかといえばyesterdayという単語から「おそらく昨日洗ったんだろう」ということを推測できるから通じはする。
しかし、もっと複雑もしくはボリュームのある内容では「いつの話か」を明らかにするために時制が重要なポイントになることは多い。
これは時制の概念が文法に備わっている言語の特徴でもあろう。
それを時制の概念が薄い日本語に当てはめてその日本語で意味が通じても、英語での時制に合わない時間要素が付随されているならば混乱の元となる。

昨日であろうがいつであろうが「ピンクのシャツは今現在すでに洗ってある状態」なのか「今の今まで継続的に洗ってきた状態」なのかを述べるのが現在完了形。
昨日という過去の出来事として捉えるならば別の時制(過去形)となる。

I washed your pink shirt yesterday. ピンクのシャツは昨日洗った。
I've washed your pink shirt. ピンクのシャツは既に洗っている(状態)。

*** 他の例 ***

× She has studied English for several months last year. → 時間が不明瞭
彼女は昨年(今まで)この数ヶ月間英語を勉強してきた。→日本語でも時間が不明瞭

○ She has studied English for several months.
彼女は英語を(今まで)この数ヶ月間勉強してきた。
○ She studied English for several months last year.
彼女は昨年数ヶ月間英語を勉強した。

とはいえ、現在完了形でも過去形でも同じ意味であることも多い

現在完了形は現在が中心の時制であり、過去形はまったく過去の話だが、結局は同じ意味でしかないことも多い。
まして現在完了形にも過去形にも使える時間の副詞(句)なんて付随すると意味は全く同じ。
わずかにニュアンスめいたものが違うだけである。

例1)「犬に餌はあげたか?」(仮に犬の名前をマックスとしよう)
Have you fed Max?
今はマックスに餌を与えてしまった状態で、もう与えなくてもいいかどうかを訊いている。
Did you feed Max?
マックスに餌を与えるという行動をしたかどうかを訊いている。

要はマックスが餌をもらったのかどうかが趣旨なのだから、現在完了形でも過去形でも意味に大した差はない。

例2)「今日は忙しかった。」
I have been busy today. 今日は今の今までずっと忙しかった。
I was busy today. 今日は忙しかった。

通常「今日は忙しかった」と言えば今日1日中忙しかったことを思わせる。 どちらも今日は忙しかった事実を述べているのであり、意味にたいして違いはない。

このように、現在完了形でも過去形でも意味に大差がないものは、アメリカ英語では過去形をイギリス英語では現在完了形を使うことが多いようだ。

例3)「鍵をなくしてしまった。」
I lost my key. (アメリカ英語)
I have lost my key. (イギリス英語)

でもやっぱり現在完了形と過去形は違うもの

いくら現在完了形と過去形が交換可能なこともあると言えども、大元は「現在形の仲間」と「過去形」という別々の時制。 以下のような例では現在完了形と過去形では全く違う意味となる。

I have been married for 15 years. 結婚して15年になる。
(現在まで15年間結婚していて現在も婚姻状態が継続中)
I was married for 15 years. (過去に)15年間結婚していた。
(結婚していたのは過去のこと)

I have been married since 2006. 2006年から結婚している。
(2006年に結婚して現在も婚姻状態が継続中)
I was married from 2006 to 2012. 2006年から2012年まで結婚していた。
I was married long time ago for 10 years. ずいぶん昔に10年間結婚していた。

× I was married since 2006. とは言わない。
※since は現在も続いていることを含有するので過去形には使わない。

現在完了形と過去形の違いとは

これらのことから、一口に現在完了形と過去形の違いと言っても「どっちがどう」とも「どっちも一緒だよ」とも「どっちも全く違うんだ」とも二者択一式には答えられない。
言葉は数学の公式とは違って答えなんていくつもあるし、また文脈に依存するものである。
まして母国語にはない用法を文法という公式だけに当てはめて母国語に置き換えてみようとすると余計に混乱する。
毎回のように述べるが、実際の使い方を習得するには、なるべく多くの英語に触れて実際の使い方を体感しながら覚えるしかない。
ただ…、言えることは、ひとつひとつの単語に本質的な意味というものがある。それをしっかり見ることだ。自分勝手なイメージや思い込みをかなぐり捨ててきちんと辞書で「定義」を調べ、そして英語を使うという実践をすること。 そうすれば自ずと「言葉の本質的な意味」がわかるようになるし、現在完了形や過去形の違いなんて、いとも簡単に習得してしまうだろう。

inserted by FC2 system