ここから本文です

agoやyesterdayといった単語は現在完了形では使えないと参考書に書いてありました...

ban********さん

2011/12/1623:26:40

agoやyesterdayといった単語は現在完了形では使えないと参考書に書いてありましたが、過去完了形では使うことができますか?

補足回答ありがとうございます。
でも、いろいろな意見がありすぎてよくわかりません。
結局過去完了でagoは使えるんでしょうか?

閲覧数:
35,181
回答数:
5

違反報告

ベストアンサーに選ばれた回答

be_********さん

編集あり2011/12/1801:44:37

過去完了というのは、(1)現時点から、(2)過去のある時点を基準として、(3)(その時点より更に過去から)その時点までのことについて言及するものです。

agoやyesterdayというのはそれぞれ、現時点から~前、今日の前の日、という意味で、(2)の、基準となる過去のある時点を指すものとしては使えますが、(3)を表すことはできません。

まずはagoの例文について説明します。

Two years ago, I had known him for 10 years.(2年前の時点で私は彼とは10年来の知り合いだった。)

上の文は(2)に対してagoを用いているので正しい文です。

When the war broke out, I had known him since two years ago.(戦争が起きたとき、彼とは2年来の知り合いだった。)

I remembered that I had met him two years ago.(私は2年前に彼に会っていたことを覚えていた。)

上の文は(3)に対してbeforeを用いているので誤った文です。

agoをbeforeに代えると正しい文になります。

次に、yesterdayの例文について説明します。

Yesterday I had been overtired with my homework.(昨日は宿題で疲れ果てていた。)

上の文は(2)に対してyesterdayを用いているので正しい文です。

I didn't succeed in the test last week, because I had been ill since yesterday.(前日から具合が悪かったので先週のテストは上手くいかなかった。)

When I drove to his house last week, the road was wet, because it had rained yesterday.(先週彼の家に車で行った際、前日に雨が降ったので路面が濡れていた。)

上の文は(3)に対してyesterdayを用いているので 誤った文です。

yesterdayをthe day beforeかthe previous dayに代えると正しい文になります。

以上が過去完了形でagoやyesterdayを用いることが出来るか、という質問に対する回答です。

現在完了でagoやyesterdayを用いることが出来るか、ということに補足をしておきます。

現在完了というのは、(1)現時点から、(2)現時点を基準として、(3)(過去から)現時点までのことについて言及するものです。

したがって、(3)を表す副詞語句が現時点までに及んでいることが必要になります。

agoやyesterdayというのは現時点までに及んでいないため、現在完了の(3)の副詞語句としては不適当になります。

ただし、since ~ agoやsince yesterdayは「~前から今まで」「昨日から今まで」を意味するので現在完了の副詞語句として使用することが出来ます。

したがって、下の回答者さんが挙げていた下記の2文は、正しい文になります。

He has been sick in bed since yesterday.

He has been sick in bed since two weeks ago.

【補足】
〉結局過去完了でagoは使えるんでしょうか?

使えない、と言っている人は(2)に対して使えないと言っているのに対して、使える、と言っている人は(3)に対して使えると言っているだけの話です。

質問した人からのコメント

2011/12/23 11:12:45

なるほど!
わかった気がします
ありがとうございました!

「過去完了 ago」の検索結果

検索結果をもっと見る

ベストアンサー以外の回答

1〜4件/4件中

並び替え:回答日時の
新しい順
|古い順

kaz********さん

編集あり2011/12/1722:41:13

ほんとうですか。

He has been sick in bed since yesterday.
He has been sick in bed since two weeks ago.

言えますよ。

【補足】
> 結局過去完了でagoは使えるんでしょうか?

さあわかりませんが,使われない,と断言できる証拠もないと思います。英語に限らず,具体的な文があるとき「この単語はこの文ではよくない」というのは言えると思いますが,あらゆる可能性を考えた上で,「過去完了では使われない」と断言するのは不可能だと思います。せいぜい,一般に使いにくいようだ,くらいのことしか言えないと思います。

goo********さん

編集あり2011/12/1721:37:32

現在完了でagoやyesterdayが使えないのは、それが【現在】完了だからです。【have/has】だからです。

He 【has】 a computer yesterday.(×)

がおかしいのと同じように、

He has climbed Mt. Fuji yesterday.(×)

もおかしいわけです。「現在完了」を「〜した」と訳したりしるので、「過去っぽい」と勘違いしている人が多いのですが、【現在】完了は、あくまで【現在】のことを述べている表現です。

というわけですから、【過去】完了の場合は、【had】ですから、agoやyesterdayが使えないという理由は特にないと思われます。わざわざ「過去完了の場合は使える」と頭に入れなければならないほど重要なテーマではないと思いますが。

現代英文法講義には、以下のような例文が載っています。

In1913 Chips had had brouchitis.:1913年に、チップスは気管支炎にかかっていた。

【補足を読んで】
「三年前、私は彼女と結婚してまだ1年だった。」のような場合もあるので、悩むまでもなく、使えるはずです。
「現在完了とは使えない」と書いてあるところに、その理由は書かれていませんか?その理由から推測すれば、「過去完了」は使えると理解できるのではないでしょうか。

「完了形」だから使えないのではなく、「【現在】完了形」だから使えないのです。もし、過去完了形の場合も使えないのであれば、そもそも、参考書にその旨明記されていると想いませんか?

eve********さん

2011/12/1623:49:21

The young men had gone to battle field some years ago.
Yesterday, my father had left home before I got up.
って言えると思うけどな~

bro********さん

2011/12/1623:31:50

同じく使えないです。

使うとすると before でしょう。

あわせて知りたい

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる