kh0jy3n
Thành viên thường trực
- Tham gia
- 21/4/12
- Bài viết
- 345
- Được thích
- 115
Bạn dùng thử hàm tự tạo bên dướiDear All
Mn cho em hỏi tý có ai biết hàm tìm kiếm nào lấy giá trị cuối cùng nó tìm thấy không ạ?
không dùng hàm Xlookup và Lookup vì hai hàm này khá nặng làm chậm file .
Em đang dùng Office -2016
Tks all !
=Seach_GPE(giá trị cần tìm,cột chứa giá trị cần tìm,cột kết quả)
Function Seach_GPE(ma As String, code_column As Range, Result_column As Range) As Variant
Dim i&, nA&, nB&
For i = 1 To code_column.Rows.Count
If code_column.Cells(i, 1).Value = ma Then
nA = i
End If
Next i
If nA <> 0 Then
If nA <= Result_column.Rows.Count Then
nB = nA
End If
End If
If nB <> 0 Then
Seach_GPE = Result_column.Cells(nB, 1).Value
Else
Seach_GPE = ""
End If
End Function
=LOOKUP(2,1/($E$5:$E$12=H5),$F$5:$F$12)
Nếu hàm UDF chạy OK thì chịu khó cải thiện nó 1 chútEm làm dc rồi tuyệt vời luôn ^^!
Bài đã được tự động gộp:
Hàm này thì em biết nhưng file của em khá nhiu dữ liệu nên bị chậm quá .
tks anh nhé !
Nếu tìm giá trị cuối thì sao bạn không loop từ dưới lên và khi tìm thấy thì gán giá trị sau đó thoát là vừa đẹp?For i = 1 To code_column.Rows.Count
If code_column.Cells(i, 1).Value = ma Then
nA = i
End If
Next i
If nA <> 0 Then
If nA <= Result_column.Rows.Count Then
nB = nA
End If
End If
If nB <> 0 Then
Seach_GPE = Result_column.Cells(nB, 1).Value
Else
Seach_GPE = ""
End If
End Function[/CODE]
Option Explicit
Function Seach_GPE(ma As String, code_column As Range, Result_column As Range) As Variant
Dim i&
For i = code_column.Rows.Count To 1 Step -1
If code_column.Cells(i, 1).Value = ma Then
Seach_GPE = Result_column.Cells(i, 1).Value
Exit Function
End If
Next i
Seach_GPE = ""
End Function
Bác oi cho cháu hỏi là nếu mã hàng đó có nhiều khách hàng mà muốn lấy hết tất cả các tên khách hàng nối lại với nhau thì sửa code như nào hở Bác?Nếu hàm UDF chạy OK thì chịu khó cải thiện nó 1 chút
Nếu tìm giá trị cuối thì sao bạn không loop từ dưới lên và khi tìm thấy thì gán giá trị sau đó thoát là vừa đẹp?
Nếu loop từ 1 như bạn làm thì bắt buộc phải lặp hết cả cột mới ra giá trị cuối cùng.
PHP:Option Explicit Function Seach_GPE(ma As String, code_column As Range, Result_column As Range) As Variant Dim i& For i = code_column.Rows.Count To 1 Step -1 If code_column.Cells(i, 1).Value = ma Then Seach_GPE = Result_column.Cells(i, 1).Value Exit Function End If Next i Seach_GPE = "" End Function
Tính giải thích cái vụ "cớ sao". Nhưng may quá, chính thớt đã giải thích rồi.Cớ sao từ chối LOOKUP khi nó là thuốc chuyên dụng chữa trị vụ "tìm giá trị cuối cùng"?
...
Hàm này thì em biết nhưng file của em khá nhiu dữ liệu nên bị chậm quá .
Nếu dùng hàm mà chậm thì dùng PowerQuerry xem sao. Office 2016 có cái này rồiDear All
Mn cho em hỏi tý có ai biết hàm tìm kiếm nào lấy giá trị cuối cùng nó tìm thấy không ạ?
không dùng hàm Xlookup và Lookup vì hai hàm này khá nặng làm chậm file .
Em đang dùng Office -2016
Tks all !
let
Source = Excel.CurrentWorkbook(){[Name="Table1"]}[Content],
#"Grouped Rows" = Table.Group(Table.SelectRows(Source,each [#"MÃ HÀNG "]<>null), {"MÃ HÀNG "}, {{"TÊN HÀNG", each List.Last([#"TÊN HÀNG "])}})
in
#"Grouped Rows"
Tài liệu tiếng Tây cả đống.Cái này chưa biết sài như nào P
Thử công thức này:Dear All
Mn cho em hỏi tý có ai biết hàm tìm kiếm nào lấy giá trị cuối cùng nó tìm thấy không ạ?
không dùng hàm Xlookup và Lookup vì hai hàm này khá nặng làm chậm file .
Em đang dùng Office -2016
Tks all !
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 1
DIỄN ĐÀN GIẢI PHÁP EXCEL Group 2