Cách tạo vòng lặp FOR trong Excel bằng công thức (3 ví dụ)

  • Chia Sẻ Cái Này
Hugh West

Bạn không muốn sử dụng Excel VBA và muốn tạo Vòng lặp FOR trong Excel bằng Công thức? Trong bài viết này, tôi đã chỉ ra cách bạn có thể tạo Vòng lặp FOR bằng công thức.

Nếu bạn biết cách viết mã bằng Excel VBA thì bạn thật may mắn 🙂 . Tuy nhiên, nếu bạn chưa bao giờ viết mã bằng VBA hoặc muốn giữ sổ làm việc Excel của mình không có mã Excel VBA , thì hầu hết thời gian bạn phải suy nghĩ sáng tạo để tạo một vòng lặp đơn giản .

Tải xuống tệp làm việc

Tải xuống tệp làm việc từ liên kết bên dưới:

Tạo vòng lặp bằng công thức. xlsx

3 ví dụ để tạo vòng lặp FOR trong Excel bằng công thức

Ở đây, tôi sẽ trình bày các ví dụ 3 để tạo Vòng lặp FOR trong Excel bằng cách sử dụng công thức công thức. Hãy cùng xem các ví dụ chi tiết.

1. Áp dụng các hàm kết hợp để tạo vòng lặp FOR trong Excel

Bây giờ, hãy cho tôi biết lý do khuyến khích tôi viết ví dụ này.

Tôi là tác giả của một số khóa học trên Udemy. Một trong các khóa học là về Định dạng có điều kiện trong Excel. Tên khóa học là: Tìm hiểu định dạng có điều kiện của Excel với 7 vấn đề thực tế. [ để truy cập miễn phí khóa học này, hãy nhấp vào đây ].

Trong diễn đàn thảo luận khóa học , một sinh viên đã hỏi tôi một câu hỏi như bên dưới [ảnh chụp màn hình].

Câu hỏi của một sinh viên tại Udemy.

Hãy đọc kỹ câu hỏi trên và cố gắng giải nó…

Các bước để giải quyết vấn đề trên:

Sau đây, tôisẽ sử dụng các hàm OR , OFFSET , MAX , MIN ROW làm Công thức Excel để tạo Vòng lặp FOR .

  • Đầu tiên, công việc của bạn là mở một sổ làm việc mới và nhập từng giá trị ở trên vào trang tính [bắt đầu từ ô C5 ] .
  • Thứ hai, chọn toàn bộ phạm vi [từ ô C5:C34 ].
  • Thứ ba, từ dải băng Trang chủ >> nhấp vào lệnh Định dạng có điều kiện .
  • Cuối cùng, chọn tùy chọn Quy tắc mới từ trình đơn thả xuống.

Lúc này, hộp thoại Quy tắc định dạng mới xuất hiện.

  • Bây giờ, trong cửa sổ Chọn loại quy tắc >> ; chọn tùy chọn Sử dụng công thức để xác định các ô cần định dạng .
  • Sau đó, trong trường Định dạng giá trị trong đó công thức này là đúng , hãy nhập công thức sau:
=OR(OFFSET(C5,MAX(ROW(C$5)-ROW(C5)+3,0),0,MIN(ROW(C5)-ROW(C$5)+1,4),1)-OFFSET(C5,MAX(ROW($C$5)-ROW(C5),-3),0,MIN(ROW(C5)-ROW(C$5)+1,4),1)=3)

  • Bây giờ, hãy chọn loại định dạng phù hợp bằng cách nhấp vào nút Định dạng… trong hộp thoại.

Lúc này, một hộp thoại có tên Định dạng ô sẽ xuất hiện.

  • Bây giờ, từ Điền tùy chọn >> bạn phải chọn bất kỳ màu nào. Ở đây, tôi chọn nền Xanh dương nhạt . Ngoài ra, bạn có thể xem mẫu ngay lập tức. Trong trường hợp này, hãy thử chọn bất kỳ màu ánh sáng nào. Vì màu tối có thể ẩn dữ liệu đã nhập. Sau đó, bạn có thể cần thay đổi Màu phông chữ .
  • Sau đó, bạn phải nhấn OK để áp dụng hình.

  • Sau đó, bạn phải nhấn OK trên Hộp thoại Quy tắc định dạng mới . Tại đây, bạn có thể xem mẫu ngay lập tức trong hộp Xem trước .

Cuối cùng, bạn sẽ nhận được các số đã định dạng.

Tôi sẽ chỉ cho bạn thuật toán để giải quyết vấn đề trên:

  • Sau đây, để giúp bạn hiểu thuật toán một cách dễ dàng, tôi sẽ giải thích toàn bộ vấn đề với hai ô tham chiếu: ô C11 C17 . Trong các ô C11 C17 , các giá trị lần lượt là 10 20 (hình trên). Nếu bạn đã quen với các công thức Excel, thì bạn có thể ngửi thấy hàm OFFSET , vì hàm OFFSET hoạt động với các điểm tham chiếu.
  • Bây giờ, hãy tưởng tượng tôi đang lấy các giá trị của phạm vi ô C8:C11 & C11:C14 C14:C17 & C17: C20 cạnh nhau [hình ảnh bên dưới]. Các ô tham chiếu là C11 C17 và tôi đang lấy tổng cộng 7 ô xung quanh ô tham chiếu. Bạn sẽ được một bức tranh tưởng tượng như sau. Từ phần đầu tiên, bạn có thể tìm thấy một mẫu từ hình ảnh. C9–C12=3 , C10-C13=3 , có một mẫu. Nhưng đối với phần thứ hai, không có mẫu như vậy.

  • Vì vậy, chúng ta hãy xây dựng thuật toán mà vẫn ghi nhớ mẫu trên. Trước khi xây dựng công thức chung, tôi sẽ chỉ ra những công thức sẽ là gì chocác ô C11 C17 , sau đó sẽ sửa đổi công thức để biến nó thành công thức chung cho tất cả. Đối với một điểm tham chiếu (như C11 hoặc C17 ), tôi sẽ lấy tổng cộng 7 ô xung quanh nó (bao gồm cả điểm tham chiếu) và đặt chúng cạnh nhau bên trong công thức tạo mảng. Sau đó, tôi sẽ tìm ra sự khác biệt của các mảng nếu có bất kỳ sự khác biệt nào bằng 3 thì ô tham chiếu sẽ có giá trị TRUE .
  • Ở đây, tôi có thể làm điều đó một cách dễ dàng bằng cách sử dụng hàm OFFSET vì hàm OFFSET trả về một mảng. Nói về tham chiếu ô C11 , tôi có thể viết công thức như sau: =OR(OFFSET(C11, 0, 0, 4, 1)-OFFSET(C11, -3, 0, 4, 1)=3) . Công thức này sẽ trả về cái gì? Hàm offset đầu tiên của công thức sẽ trả về mảng: {10; 11; 12; 15} , hàm offset thứ hai sẽ trả về mảng {5; số 8; 9; 10} . Và bạn biết đấy {10; 11; 12; 15} – {5; số 8; 9; 10} = {10-5; 11-8; 12-9; 15-10} = {5; 3; 3; 5} . Khi mảng này được kiểm tra logic với =3 thì Excel sẽ tính toán bên trong như sau: {5=3; 3=3; 3=3; 5=3} = {Sai; ĐÚNG VẬY; ĐÚNG VẬY; Sai} . Khi hàm OR được áp dụng trên mảng này: OR({False; True; False; True} , bạn nhận được TRUE . Vì vậy, ô C11 nhận các giá trị thực khi được trả về.
  • Vì vậy, tôi nghĩ bạn đã nắm được toàn bộ khái niệm về cách thức hoạt động của thuật toán này. Bây giờ có một vấn đề. Công thức này có thể hoạt động từô C8 , phía trên ô C8 , có các ô 3 . Nhưng đối với các ô C5, C6, C7 thì công thức này không hoạt động. Vì vậy, công thức nên được sửa đổi cho các ô này.
  • Bây giờ, đối với các ô C5 đến C7 , chúng tôi muốn rằng công thức sẽ không tính đến phần trên 3 ô. Ví dụ, đối với ô C6 , công thức của chúng ta sẽ không giống công thức của ô C11 : =OR(OFFSET(C11, 0, 0, 4, 1)- OFFSET(C11, -3, 0, 4, 1)=3) .
  • Ở đây, đối với ô C5 , công thức sẽ như sau: OR(OFFSET (C5, 3, 0, 1, 1)-OFFSET(C5, 0, 0, 1, 1)=3) .
  • Sau đó, đối với ô C6 , công thức sẽ như sau: OR(OFFSET(C6, 2, 0, 2, 1)-OFFSET(C6, -1, 0, 2, 1)=3) .
  • Sau rằng, đối với ô C7 , công thức sẽ như sau: OR(OFFSET(C7, 1, 0, 3, 1)-OFFSET(C7, -2, 0, 3, 1)= 3) .
  • Một lần nữa, đối với ô C8 , công thức sẽ như sau: OR(OFFSET(C8, 0, 0, 4, 1)-OFFSET( C8,-3, 0, 4, 1)=3) ; [đây là công thức chung].
  • Sau đó, đối với ô C9 , công thức sẽ như sau: OR(OFFSET(C9, 0, 0, 4, 1)- OFFSET(C9,-3, 0, 4, 1)=3) ; [đây là công thức chung].
  • Cuối cùng, bạn có tìm thấy một số mẫu từ các công thức trên không? Đối số hàng của hàm OFFSET đầu tiên đã giảm từ 3 xuống 0 ; đối số chiều cao đã tăng từ 1 thành 4 . Đối số hàng của hàm OFFSET thứ hai đã giảm từ 0 thành -3 và đối số chiều cao đã tăng từ 1 thành 4 .
  • Đầu tiên, <1 Đối số hàng của hàm>OFFSET sẽ được sửa đổi như sau: MAX(ROW(C$5)-ROW(C5)+3,0)
  • Secondly, the second Đối số hàng của hàm OFFSET sẽ được sửa đổi như sau: MAX(ROW(C$5)-ROW(C5),-3)
  • Thứ ba, OFFSET<đầu tiên 2> đối số chiều cao của hàm sẽ được sửa đổi như sau: MIN(ROW(C5)-ROW(C$5)+1,4)
  • Thứ tư, OFFSET<2 thứ hai> đối số chiều cao của hàm sẽ được sửa đổi như sau: MIN(ROW(C5)-ROW(C$5)+1,4)
  • Bây giờ, hãy thử hiểu sự sửa đổi ở trên. Đây không phải là khó khăn để hiểu. Tất cả bốn sửa đổi này đang hoạt động như FOR LOOP của Excel VBA nhưng tôi đã xây dựng chúng bằng Công thức Excel.
  • Vì vậy, bạn đã nắm được cách thức của công thức chung. hoạt động cho các ô từ C5:C34 .

Vì vậy, tôi đang nói về Vòng lặp trong bảng tính Excel. Vì vậy, đây là một ví dụ hoàn hảo về vòng lặp trong Excel. Ở đây, mỗi khi công thức chiếm các ô 7 và hoạt động trên các ô để tìm ra một giá trị cụ thể.

2. Sử dụng IF & OR Các Hàm Tạo Vòng lặp FOR trong Excel

Trong ví dụ này, giả sử bạn muốn kiểm tra xem các ô có chứa bất kỳ giá trị nào hay không. Hơn nữa, với Excel VBA FOR Loop, bạn có thể thực hiện điều này một cách dễ dàng nhưng ở đây, tôi sẽ thực hiện điều đó bằng cách sử dụng công thức Excel.

Bây giờ, bạn có thể sử dụng IF OR hoạt động như Công thức Excel để tạo Vòng lặp FOR . Hơn nữa, bạn có thể sửa đổi công thức này theo sở thích của mình. Các bước được đưa ra bên dưới.

Các bước:

  • Đầu tiên, bạn phải chọn một ô khác E5 nơi bạn muốn xem Trạng thái .
  • Thứ hai, bạn nên sử dụng công thức tương ứng trong ô E5 .
=IF(OR(B5="",C5="",D5=""),"Info Missing","Done")

  • Sau đó, nhấn ENTER để nhận kết quả.

Phân tích công thức

Ở đây, hàm OR sẽ trả về TRUE nếu bất kỳ logic nào đã cho trở thành TRUE .

  • Đầu tiên, B5=”” là logic 1st , sẽ kiểm tra xem ô B5 có chứa bất kỳ giá trị hay không.
  • Thứ hai, C5=”” là logic 2nd , sẽ kiểm tra xem ô C5 có chứa bất kỳ giá trị nào hay không không.
  • Thứ ba, D5=”” là logic thứ 3 . Tương tự, hàm này sẽ kiểm tra xem ô D5 có chứa bất kỳ giá trị nào hay không.

Bây giờ, hàm IF trả về kết quả đáp ứng điều kiện đã cho .

  • Khi hàm OR cho TRUE thì bạn sẽ nhận được “ Thiếu thông tin ” dưới dạng Trạng thái . Nếu không, bạn sẽ nhận được “ Hoàn thành ” ở Trạng thái .
  • Sau đó, bạn phải kéo Fill Handle để Tự động điền dữ liệu tương ứng trong phần còn lại củacác ô E6:E13 . Hoặc bạn có thể nhấp đúp vào biểu tượng Fill Handle .

Cuối cùng, bạn sẽ nhận được tất cả các kết quả .

3. Sử dụng hàm SUMIFS để tạo vòng lặp FOR trong Excel

Giả sử bạn muốn tính tổng hóa đơn cho một người nào đó. Trong trường hợp đó, bạn có thể sử dụng Vòng lặp FOR bằng công thức Excel. Ở đây, tôi sẽ sử dụng Hàm SUMIFS để tạo Vòng lặp FOR trong Excel. Các bước được đưa ra bên dưới.

Các bước:

  • Đầu tiên, bạn phải chọn một ô khác F7 nơi bạn muốn xem Trạng thái .
  • Thứ hai, bạn nên sử dụng công thức tương ứng trong ô F7 .
=SUMIFS($C$5:$C$13,$B$5:$B$13,E7)

  • Sau đó, nhấn ENTER để nhận kết quả.

Phân tích công thức

  • Ở đây, $C$5:$C$13 là phạm vi dữ liệu mà từ đó SUMIFS hàm sẽ thực hiện tính tổng.
  • Sau đó, $B$5:$B$13 là phạm vi dữ liệu từ đó hàm SUMIFS sẽ kiểm tra các tiêu chí đã cho
  • Cuối cùng, E7 là tiêu chí.
  • Vì vậy, hàm SUMIFS sẽ cộng các khoản thanh toán cho giá trị ô E7 .
  • Sau đó, bạn phải kéo biểu tượng Fill Handle để Tự động điền dữ liệu tương ứng vào các ô còn lại F8:F10 .

Cuối cùng, bạn sẽ nhận được kết quả.

Kết luận

Chúng tôi hy vọng bạntìm thấy bài viết này hữu ích. Tại đây, chúng tôi đã giải thích 3 các ví dụ phù hợp để tạo Vòng lặp FOR trong Excel bằng công thức. Bạn có thể truy cập trang web của chúng tôi Exceldemy để tìm hiểu thêm nội dung liên quan đến Excel. Vui lòng gửi nhận xét, đề xuất hoặc câu hỏi nếu bạn có bất kỳ câu hỏi nào trong phần nhận xét bên dưới.

Hugh West là một nhà phân tích và huấn luyện viên Excel giàu kinh nghiệm với hơn 10 năm kinh nghiệm trong ngành. Ông có bằng Cử nhân Tài chính Kế toán và bằng Thạc sĩ Quản trị Kinh doanh. Hugh có niềm đam mê giảng dạy và đã phát triển một phương pháp giảng dạy độc đáo, dễ hiểu và dễ theo dõi. Kiến thức chuyên môn về Excel của ông đã giúp hàng nghìn sinh viên và chuyên gia trên toàn thế giới cải thiện kỹ năng và xuất sắc trong sự nghiệp của họ. Thông qua blog của mình, Hugh chia sẻ kiến ​​thức của mình với mọi người, cung cấp các hướng dẫn Excel miễn phí và đào tạo trực tuyến để giúp các cá nhân và doanh nghiệp phát huy hết tiềm năng của họ.