Thì hiện tại hoàn thành tiếp diễn (Present Perfect Continuous)

Thì hiện tại hoàn thành tiếp diễn diễn tả một hành động bắt đầu trong quá khứ, kéo dài liên tục đến hiện tại (và có thể vẫn đang tiếp tục), hoặc vừa mới dừng nhưng còn để lại dấu hiệu ở hiện tại. Thì này nhấn mạnh quá trình và độ dài thời gian.

1. Công thức

have/has + been + V-ing

DạngCông thứcVí dụ
Khẳng địnhS + have/has been + V-ingI have been waiting for an hour.
Phủ địnhS + haven't/hasn't been + V-ingShe hasn't been sleeping well.
Câu hỏiHave/Has + S + been + V-ing?How long have you been learning English?

Rút gọn: I've been, he's been (he's ở đây = he has).

2. Cách dùng

  1. Hành động kéo dài từ quá khứ đến hiện tại, thường đi với for, since, how long, all day, lately, recently.

    • We have been living in Can Tho since 2021. — Chúng tôi sống ở Cần Thơ từ năm 2021 (đến giờ).
    • He has been working here for six months. — Anh ấy làm ở đây được sáu tháng rồi.
    • for + khoảng thời gian (for two hours, for years) · since + mốc thời gian (since Monday, since I was ten).
  2. Hành động vừa dừng, kết quả còn nhìn thấy được.

    • Your eyes are red. Have you been crying? — Mắt bạn đỏ quá. Bạn vừa khóc à?
    • I'm tired because I've been running. — Tôi mệt vì vừa chạy bộ xong.
  3. Hành động lặp đi lặp lại gần đây (thường là việc tạm thời).

    • She has been going to the gym a lot lately. — Dạo này cô ấy đi tập gym nhiều.

3. So sánh: hiện tại hoàn thành tiếp diễn và hiện tại hoàn thành

Hiện tại hoàn thành tiếp diễnHiện tại hoàn thành
Nhấn mạnh quá trình, thời gian bao lâuNhấn mạnh kết quả, đã xong bao nhiêu
I've been reading this book all week. (chưa chắc đã đọc xong)I've read this book. (đã đọc xong)
She's been writing emails all morning.She's written ten emails this morning.
  • Có số lượng / số lần → dùng hiện tại hoàn thành: I've been drinking three cups of coffee. → I've drunk three cups of coffee.
  • Với live, work, study, teach + for/since, hai thì thường gần nghĩa: I've lived / I've been living here for ten years. Thì tiếp diễn nghe tạm thời hoặc nhấn mạnh quá trình hơn.

Động từ trạng thái (know, like, love, want, believe, understand, own, belong...) thường không dùng ở dạng tiếp diễn; dùng hiện tại hoàn thành thay thế:

  • I have known her since high school. (không nói I have been knowing her)
  • Một số động từ có cả nghĩa hành động: have (ăn, trải qua), think (suy nghĩ) → I've been thinking about your idea. là đúng.

4. Lỗi người Việt hay gặp

  • ❌ I am learning English for three years. → ✅ I have been learning English for three years. — Hành động kéo dài từ quá khứ đến nay không dùng hiện tại tiếp diễn.
  • ❌ She has been waiting since two hours. → ✅ She has been waiting for two hours. — Khoảng thời gian dùng for, mốc thời gian mới dùng since.
  • ❌ I have been knowing him for years. → ✅ I have known him for years. — Know là động từ trạng thái.
  • ❌ He has been fixed the car all morning. → ✅ He has been fixing the car all morning. — Sau been là V-ing.
  • ❌ How long are you waiting? → ✅ How long have you been waiting? — Hỏi về khoảng thời gian tính đến hiện tại.

5. Tự kiểm tra

  1. It ______ (rain) since this morning, and it still hasn't stopped.
  2. Chọn for hoặc since: They have been talking on the phone ______ 8 p.m.
  3. Chọn đáp án đúng: I have been visiting / have visited Hoi An three times.
  4. Sửa lỗi: She has been owning this shop for ten years.
  5. Đặt câu hỏi với How long: You have been studying for the exam. → ______?

Đáp án:

  1. has been raining
  2. since
  3. have visited
  4. She has owned this shop for ten years.
  5. How long have you been studying for the exam

Bài cùng cấp