Nghĩ đi các bạn. Chắc chắn các bạn làm được mà. Tôi làm thử thấy cũng dễ thôi, công thức ngắn ngủn à ...ForestC nói:What a monkey. Trong một mục nào đó mà WhoamI có hỏi về cách lọc ra 1 danh mục từ nhiều nguồn khác nhau đã có đề cập đến vấn đề này mà, dùng mảng thì OK rồi, còn nếu không dùng VBA thì anh sẽ sắp xếp các thành phần đó thế nào đây, hả bro - Anh Workman?
Tôi đã nói mà, nhoáy một cái là đã có bạn giải được ngay.paulsteigel nói:=SMALL(A:A:B:B,ROW(C1))
Trong đó ROW(C1) là đếm dòng
Cột C là cột kết quả.
Thực ra thì nhằm mục đích gì nhỉ....
Tớ thấy nên đưa ra mục đích sử dụng sẽ hay hơn
Thực ra dùng mảng cũng được đấy. Ví dụ trong hàm SMALL, thay vì ta đánh Row(C1), ta có thể dùng một mảng nào đó (ví dụ {1,2,3,4} ) cũng được.adam_tran nói:Thì ra là bài toán tìm công thức... nó đâu có dùng Formula Array hay là các toán tử tổ hợp của các mảng đâu nhỉ. Cái tên chủ đề mơ hồ quá.
Anh cứ cho thêm số vào cột A và cột B thì nó sẽ hết thôi. Hoặc là anh có thể dùng hàm if như thế này:tyfnmax nói:- Cảm ơn cả nhà nhé. Tôi cứ nghĩ phải sử dụng công thức phức tạp lắm. Không ngờ lại đơn giản vậy.
- Nhận tiện hỏi mọi người là cái lỗi [FONT=.VnArial]#[/FONT]NUM! khi kéo cột C xuống thì sử lý như thế nào ????
- To workman . Anh em ai mà chả TYFNMAX. Tôi chỉ đưa nó làm nick thôi mà.
Đúng quá rồi còn gì nữa. Tôi xin phép "trau chuốt" lại tí thôi. Thay vì gõ A:A:B:B, ta có thể gõ A:B cho gọn.green_field nói:Anh cứ cho thêm số vào cột A và cột B thì nó sẽ hết thôi. Hoặc là anh có thể dùng hàm if như thế này:
=if(iserror(small(A:A:B:B,row(C1))),"",small(A:A:B:B,row(C1)))
Các anh chị xem rồi chỉ bảo thêm cho em với nhé.
nếu tôi khai báo thay vì biến mảng Temp(3) tôi khai biến Temp(1 to 3, 1) và thực hiện như trên;SA_DQ nói:Function PTBac2(aA As Double, bB As Double, cC As Double)
Dim Temp( 1 To 3): Dim DelTa As Double
DelTa= (bB ^ 2) - (4 * aA * cC)
Select Case DelTa
Case Is < 0
Temp(1) = "Voâ nghieäm"
Temp(2) = "": Temp(3) = " "
Case 0
Temp(1) = "Moät nghieäm:"
Temp(2) = -bB / ( 2 * aA): Temp(3) = ""
Case Else
Temp(1) = "Hai nghieäm:"
Temp(2) = (-bB + Sqr( DelTa)) / ( 2 * aA)
Temp(3) = (-bB - Sqr( DelTa))/(2 * aA)
End Select
PTBac2 = Temp
End Function
Chúng ta chọn dãy ô D47:F47 từ D47 (3 biến được trả về!) & nhập =PTBac2( E42 , E43, E44) và ấn tổ hợp 3 phím