- Tham gia
- 8/6/06
- Bài viết
- 14,657
- Được thích
- 22,998
- Nghề nghiệp
- U80
1. Hàm tìm từ hai trường
Hàm tìm từ bảng dữ liệu (Bang) gồm tối thiểu 2 cột, mà cột đầu chứa dữ liệu Val1; Trường thứ hai có giá trị là Val2 chứa trong cột thứ Cot; Hàm sẽ cho ra kết quả thứ ThuTu đã tìm được tại cột thứ TrgKQ của Bang
Cụ thể hoá: Chúng ta có DS học sinh, như sau [TT], [HoDem], [Ten], [NgaySinh], [Nu], [Lop] ... .
Nhiệm vụ thứ nhất: Tìm xem em Hoa thứ 2 ở lớp 12A12 là nam hay nữ
=Find2Cot( $C$2: $G@1279, "Hoa", 2, "12A12", 4, 3)
Nhiệm vụ thứ hai: Tìm xem trong toàn trường có bao nhiêu em tên là 'Hoa"
=Find2Cot( $C$2: $G@1279, "Hoa", n, "Hoa", 1, 3)
(Bạn nhập hàm vô 1 ô và cứ việc tăng n đến khi hàm trả về "O!")
Hàm tìm từ bảng dữ liệu (Bang) gồm tối thiểu 2 cột, mà cột đầu chứa dữ liệu Val1; Trường thứ hai có giá trị là Val2 chứa trong cột thứ Cot; Hàm sẽ cho ra kết quả thứ ThuTu đã tìm được tại cột thứ TrgKQ của Bang
Cụ thể hoá: Chúng ta có DS học sinh, như sau [TT], [HoDem], [Ten], [NgaySinh], [Nu], [Lop] ... .
Nhiệm vụ thứ nhất: Tìm xem em Hoa thứ 2 ở lớp 12A12 là nam hay nữ
=Find2Cot( $C$2: $G@1279, "Hoa", 2, "12A12", 4, 3)
Nhiệm vụ thứ hai: Tìm xem trong toàn trường có bao nhiêu em tên là 'Hoa"
=Find2Cot( $C$2: $G@1279, "Hoa", n, "Hoa", 1, 3)
(Bạn nhập hàm vô 1 ô và cứ việc tăng n đến khi hàm trả về "O!")
Mã:
[B]Function Find2Cot(Bang As Range, Val1 As Variant, ThuTu As Integer, Val2 As Variant, Cot As Integer, TrgKQ As Integer)[/B]
Dim iJ As Integer, iDem As Integer, iHang As Integer
iHang = Bang.Rows.Count
For iJ = 1 To iHang
If Bang.Cells(iJ, 1) = Val1 And Bang.Cells(iJ, Cot) = Val2 Then
iDem = iDem + 1
End If
If iDem = ThuTu Then
If Bang.Cells(iJ, TrgKQ) = 0 Then Find2Cot = "@" Else Find2Cot = Bang.Cells(iJ, TrgKQ)
Exit For
End If
Next iJ
Select Case Find2Cot
Case "@"
Find2Cot = "0"
Case 0
Find2Cot = "O!"
End Select
[B]End Function[/B]
Lần chỉnh sửa cuối: