Cái này là do bạn mà.Bạn giải quyết bằng cách làm 1 bảng quy đổi rồi dùng hàm Vlookup sang là được mà.Em muốn dịch nghĩa của 1 ô, ví dụ:
19Q1 thành Quý I/2019
19Q2 thành Quý II/2019
1901 thành Tháng 1/2019
1902 thành Tháng 2/2019
19CN thành Năm 2019
Bằng hàm hoặc Code VBA đều được ạ. Mong mọi người giúp đỡ
B1 =IF(MID(A1,3,1)="Q","Quí "&RIGHT(A1,1)&"/",IF(MID(A1,3,1)="C","Năm ","Tháng "&RIGHT(A1,2)&" /"))&"20"&LEFT(A1,2)Em muốn dịch nghĩa của 1 ô, ví dụ:
19Q1 thành Quý I/2019
19Q2 thành Quý II/2019
1901 thành Tháng 1/2019
1902 thành Tháng 2/2019
19CN thành Năm 2019
Bằng hàm hoặc Code VBA đều được ạ. Mong mọi người giúp đỡ
Chưa giống, còn thiếu hàm ROMAN(),B1 =IF(MID(A1,3,1)="Q","Quí "&RIGHT(A1,1)&"/",IF(MID(A1,3,1)="C","Năm ","Tháng "&RIGHT(A1,2)&" /"))&"20"&LEFT(A1,2)
Function Dich(Num As Variant) As String
Dim VTr As Byte: Dim Qui As String
If IsNumeric(Num) Then
Dich = "Tháng " & Right("0" & CStr(Num Mod 100), 2) & "/" & "20" & CStr(Num \ 100)
Else
Qui = Mid(Num, 3, 1)
If Qui = "Q" Then
Dich = "Quí " & Right(Num, 1) & "/" & "20" & Left(Num, 2)
ElseIf Qui = "C" Then
Dich = "Nam " & "20" & Left(Num, 2)
Else
Dich = "Tào Lao!"
End If
End If
End Function
Hay quá, vậy mà mình không nghĩ ra. Cám ơn bạn rất nhiềuCái này là do bạn mà.Bạn giải quyết bằng cách làm 1 bảng quy đổi rồi dùng hàm Vlookup sang là được mà.
Cám ơn bạn, mình đã chạy thử hàm này được rồi.B1 =IF(MID(A1,3,1)="Q","Quí "&RIGHT(A1,1)&"/",IF(MID(A1,3,1)="C","Năm ","Tháng "&RIGHT(A1,2)&" /"))&"20"&LEFT(A1,2)
Vậy giả xử ô đó xuất ra 19Q1, 19Q2 thì Vlookup cũng đâu có được đâu @snow25Cái này là do bạn mà.Bạn giải quyết bằng cách làm 1 bảng quy đổi rồi dùng hàm Vlookup sang là được mà.
Tôi chỉ lấy ví dụ của bạn nhưng tôi hiểu là có thể có vài (không nhất thiết là 1 hay 2) "mã" cách nhau bằng dấu phẩy.Bạn cho mình hỏi, nếu nói như bác @batman1 , nếu ô đó hiện 19Q1,19Q2 thì mình kết hợp như thế nào ạ
Dùng hàm Excel rất dài và rất khó, vì còn có thể: 19Q1,19Q2 ,19Q3,19Q4Hay quá, vậy mà mình không nghĩ ra. Cám ơn bạn rất nhiều
Bài đã được tự động gộp:
Cám ơn bạn, mình đã chạy thử hàm này được rồi.
Bạn cho mình hỏi, nếu nói như bác @batman1 , nếu ô đó hiện 19Q1,19Q2 thì mình kết hợp như thế nào ạ
Có bạn, giờ mình chỉ còn tắc mỗi chỗ này nữa là xong. Bữa giờ con mình bị sốt xuất huyết nên mình ko có time lên diễn đàn. Xin lỗi các bạnVậy tách nó ra chứ.Thế các công thức với code ở trên có chạy được không bạn.
Theo như mình thử thì cái Công thức này chỉ chạy đc với 1 ký hiệu thôi bạn. Giả xử có 2 ký hiệu trở lên thì xử lý thế nào bạn. Cám ơn bạn đã đóng góp ý kiếnA1:A17 = 01, 02, ...., 12, Q1, Q2, Q3, Q4, CN
B1 : B17 = Tháng 1/, Tháng 2/, ... Tháng 12/, Quý I/,... Quý IV/, Năm
=VLookup(Right(kyhieu,2), $A$1:$B$17, 2, 0) & "20" & Left(kyhieu,2)