Xin VBA tính kết quả theo điều kiện
Em chào các bác!
Hiện tại em đã viết hàm điều kiện cho file excel này. Tuy nhiên hàm khá dài và các option không được liệt kê đầy đủ nên rất mong có bác cao nhân nào viết code VBA giúp em với ạ.
Em gửi file excel ạ. Trong đó có 2 sheet (1 sheet là em đã để sẵn hàm excel cột R nhưng chưa viết đầy đủ, 1 sheet là Quy luật mong muốn)Nhờ các bác giúp em với ạ.
Em cảm ơn nhiều!
Bạn dùng hàm UDF nhé
Tại ô R4
=getdate(I4,K4)
Với I4 là Maker, K4 là code
copy xuống.
code như sau:
(Alt-F11 mở VBA, insert/module, copy paste code )
Option Explicit
Function GetDate(Maker As String, code As String)
Dim y, m, d, c1
c1 = UCase(code)
Select Case UCase(Maker)
Case "ROHM", "TAIYOYUDEN"
GetDate = Range("O1").Value
Exit Function
Case "ASAHIRUBBE", "SOGO"
GetDate = Cells(Application.Caller.Row, "K").Value
Exit Function
Case "HOKURIKU"
y = "202" & Mid(c1, 2, 1): m = Mid(c1, 3, 2): d = Mid(c1, 5, 2)
Case "SANKEN"
y = "202" & Mid(c1, 1, 1): m = Mid(c1, 2, 1): d = Mid(c1, 3, 2)
Case "TOSHIBA"
y = "201" & Mid(c1, 1, 1): m = Mid(c1, 2, 1): d = Mid(c1, 3, 2)
Case "STANLEY"
y = "202" & Mid(c1, 2, 1): m = Mid(c1, 3, 2): d = Mid(c1, 5, 2)
Case "TDK"
y = "202" & Mid(c1, 2, 1): m = InStr(1, "ABCDEFGHIJKL", Mid(c1, 3, 1)): d = Mid(c1, 4, 2)
Case "YAMAMOTO"
y = "202" & Mid(c1, 2, 1): m = InStr(1, "123456789XYZ", Mid(c1, 3, 1)): d = (InStr(1, "ABCD", Mid(c1, 4, 1)) – 1) * 10 + Mid(c1, 5, 1)
End Select
GetDate = DateSerial(y, m, d)
End Function
www.giaiphapexcel.com/diendan/threads/xin-vba-t%C3%ADnh-k%E1%BA%BFt-qu%E1%BA%A3-theo-%C4%91i%E1%BB%81u-ki%E1%BB%87n.163250/post-1088927
Ứng dụng AI và Chat GPT trong Quản trị nhân sự
Học xong khóa này, học viên có thể: Hiểu đúng bản chất AI, các nhóm AI phổ biến và cách AI “hoạt động” ở...
Xem khóa học
Bình luận