Ngữ pháp tiếng Anh

Thì hiện tại hoàn thành tiếp diễn: công thức, cách dùng và bài tập

Còn gọi là: present perfect continuous, present perfect progressive, have been V-ing, HTHTTD

Thì hiện tại hoàn thành tiếp diễn (have/has been + V-ing) dùng cho hành động bắt đầu trong quá khứ, kéo dài liên tục đến bây giờ và có thể còn tiếp. Nó nhấn mạnh quãng thời gian (for, since, all day), còn hiện tại hoàn thành nhấn mạnh kết quả hoặc số lần.

Công thức Thì hiện tại hoàn thành tiếp diễn

3 dạng, xếp từ hay gặp nhất.

  1. 1

    Khẳng định

    S + have/has + been + V-ing

    I/you/we/they đi với have, he/she/it và danh từ số ít đi với has. Viết tắt: I've been, she's been.

    • I have been studying for the exam since 7 p.m.Mình học ôn thi từ 7 giờ tối đến giờ.
    • My dad has been working at this company for twenty years.Bố mình làm ở công ty này được hai mươi năm rồi.
    • It's been raining all day.Trời mưa suốt cả ngày nay.
  2. 2

    Phủ định

    S + have/has + not + been + V-ing

    Viết tắt haven't been / hasn't been.

    • She hasn't been sleeping well lately.Dạo này cô ấy ngủ không ngon.
    • We haven't been talking much since the argument.Từ hôm cãi nhau tụi mình ít nói chuyện hẳn.
  3. 3

    Nghi vấn

    Have/Has + S + been + V-ing? / How long + have/has + S + been + V-ing?

    Câu hỏi How long hay dùng thì này nhất, trừ khi động từ là động từ trạng thái.

    • How long have you been learning English?Bạn học tiếng Anh được bao lâu rồi?
    • Have you been crying? Your eyes are red.Bạn vừa khóc à? Mắt đỏ hết rồi kìa.

Khi nào dùng?

  1. 1.Hành động bắt đầu trong quá khứ và vẫn đang tiếp diễn, nhấn mạnh thời gian kéo dài (đi với for, since, how long).

    • They have been building the new bridge for two years.Họ xây cây cầu mới được hai năm rồi.
  2. 2.Hành động vừa mới dừng nhưng để lại dấu hiệu nhìn thấy được ở hiện tại.

    • Why are you so sweaty? I've been playing football.Sao người đầy mồ hôi thế? Mình vừa đá bóng xong.
    • The ground is wet. It has been raining.Đất ướt. Trời vừa mưa.
  3. 3.Hành động lặp đi lặp lại trong một khoảng thời gian gần đây, hay đi với lately, recently, these days.

    • I've been getting up early lately to go jogging.Dạo này mình dậy sớm để chạy bộ.
  4. 4.Phàn nàn hoặc tỏ ra khó chịu vì việc gì đó kéo dài quá lâu.

    • Who has been using my phone? The battery is almost dead!Ai dùng điện thoại của mình thế? Pin sắp hết rồi!

Dấu hiệu nhận biết

Thấy những chữ này trong câu là nghĩ ngay tới cấu trúc này.

  • for + khoảng thời gian
  • since + mốc thời gian
  • how long
  • all day
  • all morning
  • lately
  • recently
  • these days

Phân biệt

Hiện tại hoàn thành tiếp diễn (have been V-ing) và Hiện tại hoàn thành (have V3)

Have been V-ing nhấn mạnh quá trình, thời gian kéo dài, việc có thể chưa xong. Have V3 nhấn mạnh kết quả, việc đã xong, hoặc có số lượng, số lần cụ thể. Động từ trạng thái (know, have nghĩa là sở hữu, like, believe) chỉ dùng have V3.

  • I've been reading this book all afternoon.Đọc suốt cả chiều (chưa chắc đã xong).
  • I've read three chapters.Đã đọc xong ba chương (có số lượng).

Hiện tại hoàn thành tiếp diễn và Hiện tại tiếp diễn (am/is/are V-ing)

Có for, since, how long thì không dùng 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 lúc nói, không nói nó kéo dài bao lâu.

  • I'm waiting for Lan.Mình đang đợi Lan.
  • I've been waiting for Lan for half an hour.Mình đợi Lan nửa tiếng rồi.

Bẫy đề thi

Những chỗ đề hay gài và học sinh hay sai.

  1. 1

    I have been knowing him since primary school.

    I have known him since primary school.

    Know là động từ trạng thái, không chia tiếp diễn. Tương tự với like, love, believe, own, belong, understand.

  2. 2

    She has been writing five emails this morning.

    She has written five emails this morning.

    Có số lượng cụ thể (five emails) là nói kết quả, dùng hiện tại hoàn thành.

  3. 3

    We are waiting here for an hour.

    We have been waiting here for an hour.

    For an hour nói hành động kéo dài từ trước đến giờ, không dùng hiện tại tiếp diễn. Đây là lỗi dịch từ tiếng Việt “đang đợi một tiếng rồi”.

  4. 4

    He has been living here since three years.

    He has been living here for three years.

    Since đi với mốc thời gian (since 2023, since Monday). Khoảng thời gian (three years) phải dùng for.

  5. 5

    I have been going to Đà Lạt three times.

    I have been to Đà Lạt three times.

    Nói số lần (three times) là nói kinh nghiệm, dùng hiện tại hoàn thành. Have been to nghĩa là đã từng đến, không thêm going.

Ôn thi tốt nghiệp THPT

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

4/205đề thi tốt nghiệp và đề thi thử 2017–2026 có câu hỏi về cấu trúc này

Đề chính thức chưa hỏi trực tiếp, nhưng đề thi thử vẫn hay ra.

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

8 câu kiểu đề thi, có giải thích.

Athena

Thử xem, mình đợi em.

Câu 1My sister ______ the piano for two hours, and she still hasn't stopped.

Câu 2I ______ my best friend since we were in grade 6.

Câu 3She ______ three emails this morning, and she's going to write two more before lunch.

Câu 4Tìm lỗi sai: We (A) have been waiting for the bus (B) since (C) forty minutes, and it (D) still hasn't come.

Câu 5Chọn câu gần nghĩa nhất: “Tom started learning Japanese three years ago, and he is still learning it.”

Câu 6Chọn câu gần nghĩa nhất: “It started raining at 6 a.m. It is still raining now.”

Câu 7The air in Hà Nội is getting worse every winter. Experts say traffic and building sites ______ the air for years, and the city needs to act now.

Câu 8Linh volunteers at a local animal shelter. She ______ there every weekend since last summer, and she has found homes for twenty dogs so far.

Hỏi đáp

Thì hiện tại hoàn thành tiếp diễn có công thức thế nào?
S + have/has + been + V-ing. Phủ định thêm not sau have/has, câu hỏi đảo have/has lên trước chủ ngữ.
Khi nào dùng hiện tại hoàn thành tiếp diễn thay vì hiện tại hoàn thành?
Khi muốn nhấn mạnh việc kéo dài bao lâu và có thể vẫn đang tiếp diễn. Nếu câu có số lượng, số lần hoặc động từ trạng thái như know, like thì dùng hiện tại hoàn thành.
Dấu hiệu nhận biết thì hiện tại hoàn thành tiếp diễn là gì?
Hay gặp for + khoảng thời gian, since + mốc thời gian, how long, all day, all morning, lately, recently.

Cập nhật 11/11/2026