- ベストアンサー
現在完了形と現在完了進行形について
こんにちは、教えていただきたいのですが、Do you still work? No, I'm retired. I haven't worked for years.が答えなのですが、この場合は、I haven't been working for years.にはできないのでしょうか?それは、haven'tと否定形だからなのでしょうか?教えて下さい。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
- ベストアンサー
I have been working for years. という文は、どういう意味かというと、 「ここ何年も仕事をずっとロボットのように継続して休みなしで続けているんだ」というような、地獄での罰のようなおかしなニュアンスの意味になるのです。 そういう時間の継続性のあることはしていないのでしょうから、現在進行形にする必要がないというか、してもいいけど意味が「え?」と感じられるものになるのです。 I have worked for years. は、「ここ何年も就業していない」というようなノーマルな意味になるのです。要するに通常、朝から晩まで一定期間仕事をするというようなことはしていないという普通使う意味での文意になるのです。 否定文か肯定文かは関係ありません。 例えば I have been studying English for years. という文があったとします。 これは明らかにネイティブに聞かせるとおかしな文になります。要するに朝から晩までずっと英語の勉強をし続けているというような意味になるのです。そんな、インド人の修行みたいな事する人いませんよね。それと同じです。 ですから、 I have studied English for years. が正しいのです。これだと、間にご飯食べたり、夜は眠ったり、そういうことがあって、その生活習慣の中の一つとして、英語も継続して勉強してるんだという意味になるのです。 お分かりでしょうか?
その他の回答 (4)
まだ働いているの いや、引退した 長年働いていないんだ 最後の文を英訳するとどうなるかですよね。 私なら、特に強調でもしない限り、I haven't worked for years.とします。I haven't been working for years.はできないわけではないが、ここでは不自然だと思います。働けるのに、何らかの理由で長年ずっと未だにもって職に就いていないよ、と強調する場合なら使えると思いますが、引退した身である言っているので現在完了にするのが一般的だと思います。 働くとか勉強するというのは普通自分の意思で行うものであり、していないという状態が長年、現在まで続いているというのは絶対にないとはいえないが(例えば病気等)自然ではないと思います。 I haven't studied for years. 普通 I haven't been studying for years. 可 I haven't been studying much lately. 普通 I haven't been studying hard for the past few weeks. 普通 I haven't been studying much since I left school. 自然 I haven't read books for many years. 普通 I haven't been reading books for a long time. 可 可というのは状況によっては言えるであろうという意味です。 しかし、I haven't been working hard for a long time. 長い間今まで一生懸命なんか働いたことないよ、というのうは、自分の意思、その他の理由でそうしていないのなら、普通に言えると思います。
- transaction
- ベストアンサー率65% (75/114)
No.2の方に反論することになって申し訳ないのですが、workの現在進行形について補足です。補足なので、現在形と現在進行形との基本的なちがいについては知ったうえで下をお読みください。でないと混乱するだけだと思うので。 「彼はその会社に勤めている[の従業員である]」という意味で、現在進行形He is working for the companyということができます。もちろん、No.1の繰り返しになりますが、「彼はその会社に何年も勤めてきた」という意味で、現在完了進行形He has been working for the company for yearsを使えます。いずれの用法も、『ロングマン英英辞典』(4訂増補版)のCD-ROMのExamples bankに類例が出ていますし、Googleで検索してもそれらの用法がおおくヒットします。 では、No.1で挙げた現在完了形と現在完了進行形とで類似の継続用法を意味する動詞(expect、hope、keep、learn、lie、live、rain、sit、sleep、snow、stand、stay、study、teach、wait、want、work)のすべてが、上のworkのように現在進行形で現在形と似たような意味を表わせるのか。……すみません、ちょっといま手元にNo.1で参照した文法書がないので確認できません。 ただ、『ロングマン』を見るかぎり、teach、studyについては、現在進行形で現在形と類似の意味を表わせます。つまり、He is teaching / studying Englishは、「いま現在英語をteachしたりstudyしている」ことを指すだけではなく、「いま現在教壇に立っていたり教室で授業を受けているわけではないが、日ごろ教師として英語をteachしたり生徒として学校で英語をstudyしている」ことも指せます。
>I haven't been working for years.にはできないのでしょうか? できません。もっと初歩に戻りましょう。現在形と現在進行形の違いですが、例えば「彼はあの工場で働いています。」というのは“He works in that factory”となり、その会社の従業員という意味ですよね。しかし、それを進行形にすると、彼はその工場で勤務中ということになります。それでは “I haven't been working for years.”を肯定文にしてみましょう。“I have been working for years.”となりますね。でも、これは365日24時間休まずに働き続けたという意味になり、英文法上というより、そんなにぶっ続けに働くとっくの前に過労死で死んでいますよ。恐らく日本“I haven't been working for years.”語の「~している」に惑わされたと思うんですが、これは必ずしも英語では現在進行形にならないことに注意してください。
- transaction
- ベストアンサー率65% (75/114)
問題となっている現在完了形、現在完了進行形は、いわゆる「継続」(……のあいだずっと……している)を表わすものです。 継続を表わすとき、全般的には、動作動詞(play、talkなど)では現在完了進行形を、状態動詞(be、have、thinkなど)では現在完了形を使います。 また、いくつかの動詞(expect、hope、keep、learn、lie、live、rain、sit、sleep、snow、stand、stay、study、teach、wait、want、work)は、現在完了形も現在完了進行形も使えます。 1) これらの動詞の現在完了形は、期間を表わす副詞句(for、sinceなど)がないと、継続の意味を表わせない。 2) 逆に、これらの動詞の現在完了進行形は、期間を表わす副詞句がなくても継続の意味を表わせる。 3) これらの動詞の継続用法の現在完了形と現在完了進行形とでは、意味に大差はない。 4) ただし、あまり長くない動作を継続動作を表わす動詞については、現在完了進行形が好まれる。 ということで、I haven't worked for yearsともI havn't been working for yearsともいえます。ほかの例文だと、I have studied English for three yearsともいえるし、I have been studying English for three yearsともいえます。もちろん進行形だからといって、3年間寝もせずに勉強しつづけていることを意味するわけではありません。 動詞の列挙のために次の文献を参照しました。 江川泰一郎. (1999). 英文法解説 (改訂三版). 東京: 金子書房. http://www.amazon.co.jp/gp/product/4760820094/