Tất cả bài ngữ pháp

Bài 48 · Chặng 4: Thì & động từ khuyết thiếu

Thì hiện tại hoàn thành tiếp diễn

Nâng cao

Present perfect continuous

Công thức & cách dùng

have/has been + -ing — việc bắt đầu từ trước và vẫn đang tiếp tục

1.Cấu trúc

Thì hiện tại hoàn thành tiếp diễn = have / has + been + V-ing. Been giữ nguyên; chỉ have/has đổi theo chủ ngữ.

I / you / we / theyhe / she / it
Khẳng địnhI've been waiting.It's been raining.
Phủ địnhI haven't been sleeping well.She hasn't been working.
Câu hỏiHave you been waiting long?Has it been raining?
Trả lời ngắnYes, I have. / No, I haven't.Yes, it has. / No, it hasn't.

Cần đủ ba phần: have/has + been + V-ing. Lỗi hay gặp: quên been (I have working), viết being thay cho been (has being working), hoặc quên -ing (has been learn).

2.Khi nào dùng

1. Hoạt động bắt đầu trong quá khứ và vẫn đang tiếp diễn — thường đi với How long…?, for, since, all day

  • It's been raining since lunchtime.

    Trời mưa từ trưa đến giờ.

  • How long have you been learning English?

    Bạn học tiếng Anh bao lâu rồi?

  • Nam has been working for the same company since 2019.

    Nam làm cho cùng một công ty từ năm 2019.

2. Hoạt động vừa mới dừng, kết quả vẫn còn thấy rõ

  • Your eyes are red. Have you been crying?

    Mắt bạn đỏ hoe. Bạn vừa khóc à?

  • Sorry I'm so sweaty — I've been running.

    Xin lỗi, mình đầy mồ hôi — mình vừa chạy bộ.

3. Việc lặp đi lặp lại trong thời gian gần đây — với lately, recently, these days

  • I've been going to the gym a lot lately.

    Dạo này tôi đi tập gym nhiều.

  • Linh hasn't been sleeping well recently.

    Gần đây Linh ngủ không ngon.

3.So với hiện tại hoàn thành đơn

Thì tiếp diễn nhấn vào hoạt động và thời gian kéo dài; thì đơn nhấn vào kết quả — cái đã xong, đã làm được.

Hoàn thành tiếp diễnHoàn thành đơn
hoạt động, quá trìnhkết quả, việc đã xong
bao lâu: How long…?, for, sincebao nhiêu: How much / How many…?, số lượng, số lần
có thể chưa xongđã xong
I've been painting the room.I've painted the room.
  • I've been reading this book for a week. I'm on page 90.

    Tôi đọc cuốn này một tuần nay rồi, đang ở trang 90. (chưa xong)

  • I've read three books this month.

    Tháng này tôi đọc xong ba cuốn rồi. (đếm số lượng, đã xong)

  • She's been writing emails all morning.

    Cả buổi sáng cô ấy ngồi viết email.

  • She's written twelve emails this morning.

    Sáng nay cô ấy viết được mười hai cái email rồi.

Khi đếm bao nhiêu (three books, twelve emails, How many…?) → thường dùng thì đơn. Khi nói bao lâu (for two hours, all day, How long…?) → thường dùng thì tiếp diễn.

4.Động từ chỉ trạng thái

Các động từ chỉ trạng thái như know, like, want, believe, belong, have (nghĩa sở hữu) thường không dùng ở dạng tiếp diễn, nên dùng hiện tại hoàn thành đơn kể cả khi nói bao lâu.

  • I've known Hoa since we were at school.

    Tôi quen Hoa từ hồi đi học. (không: have been knowing)

  • How long have you had your cat?

    Bạn nuôi con mèo bao lâu rồi? (have = sở hữu)

Với live, work, study, teach, cả hai thì đều đúng và nghĩa gần như nhau. Thì tiếp diễn có thể gợi cảm giác tạm thời, thì đơn gợi cảm giác lâu dài, ổn định.

  • We've been living with my parents since March.

    Từ tháng Ba nhà tôi ở tạm với bố mẹ. (tạm thời)

  • My grandparents have lived in this village all their lives.

    Ông bà tôi sống ở làng này cả đời. (lâu dài)

5.So với hiện tại tiếp diễn

Hiện tại tiếp diễn chỉ nói việc đang xảy ra. Khi thêm bao lâu (for, since, How long…?), phải chuyển sang hiện tại hoàn thành tiếp diễn.

  • We're waiting for the bus.

    Chúng tôi đang đợi xe buýt.

  • We've been waiting for the bus for forty minutes!

    Chúng tôi đợi xe buýt bốn mươi phút rồi! (không: We are waiting … for forty minutes)

Tiếng Việt nói “Tôi đang học tiếng Anh được hai năm rồi” — có chữ “đang”, nhưng cũng có “được … rồi” chỉ khoảng thời gian, nên tiếng Anh là I've been learning English for two years, không phải I'm learning English for two years.

6.Lỗi thường gặp

  • It is raining since this morning.

    It has been raining since this morning.

    Có since → dùng thì hoàn thành.

  • I have been work here since 2020.

    I have been working here since 2020.

    Sau been dùng V-ing.

  • He has being working on this project since March.

    He has been working on this project since March.

    have/has + been, không phải being.

  • I have been studying for this exam since three weeks.

    I have been studying for this exam for three weeks.

    Three weeks là khoảng thời gian → for.

  • I've been knowing her for years.

    I've known her for years.

    Know là động từ trạng thái → thì đơn.

  • Did you been exercising lately?

    Have you been exercising lately?

    Câu hỏi đưa have/has lên trước chủ ngữ, không dùng did.

Ví dụ

  • My eyes hurt. I have been looking at this screen since nine o'clock.
  • How long have you been learning English?
  • My phone has been ringing for five minutes. Can you answer it?
  • Grandma has been cooking in the kitchen all morning, so lunch will be delicious.
AI đang nghe...•4.7/5 trên App Store & Google Play

Luyện nói tiếng Anh với AI 24/7

Tải app ngay — chấm điểm phát âm tức thì, hội thoại tự nhiên, sửa lỗi như giáo viên thật.

Chấm điểm phát âm AIPhản hồi tức thìHội thoại tự nhiên