hiennv.tsc
Thành viên chính thức
- Tham gia
- 13/4/19
- Bài viết
- 51
- Được thích
- 16
Theo tôi dùng cách nào cũng được miễn không ghi cứng trong code. Code lấy D3:AZ3, rồi cứ tìm thấy là dịch xuống 1, 2, 3 dòng tức là lấy D4:AZ4, ..., D6:AZ6 là code có ghi cứng vùng dữ liệu rồi.Có cách khác là vùng dữ liệu này được gán 1 cái tên cúng cơm & như vậy trong code ta réo tên cúng cơm nó ra mà mần, Vậy có được không các bạn?
& nó hay hay dỡ như thế nào, xin nhờ các bạn phân tích tiếp; Rất cảm ơn & trân trọng!
Với hàm của tôi thì tôi đã ghi hết các cách gọi.Cảm ơn bạn @batman1 !
Phương án như này thì tương đối tàm tạm.
Nhưng khi gọi hàm thì lại khó khăn
Mình muốn nó cố định như này cũng được.
nhưng khi gọi hàm thì chỉ cần gõ "=thaythe(ab; thì cái hàm bên dưới của bạn sẽ suất hiện và chỉ cần chọn ô tham chiếu
Vậy kính mong bạn giúp đỡ
=thaythe("ab";D11;{"01"\"02"\"03"\"10"\"11"\"12"\"13"\"20"\"21"\"22"\"23"\"30"\"31"\"32"\"33";"a1,b1,c1"\"a2,b2,c2"\"a3,b3,c3"\"a4,b4,c4"\"a5,b5,c5"\"a6,b6,c6"\"a7,b7,c7"\"a8,b8,c8"\"a9,b9,c9"\"a10,b10,c10"\"a11,b11,c11"\"a12,b12,c12"\"a13,b13,c13"\"a14,b14,c14"\"a15,b15,c15";"d1,e1,f1"\"d2,e2,f2"\"d3,e3,f3"\"d4,e4,f4"\"d5,e5,f5"\"d6,e6,f6"\"d7,e7,f7"\"d8,e8,f8"\"d9,e9,f9"\"d10,e10,f10"\"d11,e11,f11"\"d12,e12,f12"\"d13,e13,f13"\"d14,e14,f14"\"d15,e15,f15";"g1,i1,k1"\"g2,i2,k2"\"g3,i3,k3"\"g4,i4,k4"\"g5,i5,k5"\"g6,i6,k6"\"g7,i7,k7"\"g8,i8,k8"\"g9,i9,k9"\"g10,i10,k10"\"g11,i11,k11"\"g12,i12,k12"\"g13,i13,k13"\"g14,i14,k14"\"g15,i15,k15"})
Rất cảm ơn bạn @batman1 đã quan tâm giúp đỡ.Theo tôi dùng cách nào cũng được miễn không ghi cứng trong code. Code lấy D3:AZ3, rồi cứ tìm thấy là dịch xuống 1, 2, 3 dòng tức là lấy D4:AZ4, ..., D6:AZ6 là code có ghi cứng vùng dữ liệu rồi.
Bài đã được tự động gộp:
Với hàm của tôi thì tôi đã ghi hết các cách gọi.
Tôi không hiểu ý của bạn.
Tôi không hiểu lý do bạn không muốn nhập vùng dữ liệu.
Nếu vùng dữ liệu LUÔN LUÔN cố định thì như bài #14 thôi. Hoặc sửa chút bài của tôi. Nhưng bạn "bĩu môi" với bài #14 nên tôi chả hiểu được ý muốn của bạn.
Tôi đã viết hết ý. Tôi dừng ở đây.
Function UDF(ChuoiTim As String, Optional DongTim As Byte = 1) As String
Dim VTr As Byte
Dim GPE As String
Const D1 As String = "a1,b1,c1": Const E1 As String = "d1,e1,f1": Const F1 As String = "g1,i1,k1" '01 '
Const D2 As String = "a2,b2,c2": Const E2 As String = "d2,e2,f2": Const F2 As String = "g2,i2,k2" '02 '
Const D3 As String = "a3,b3,c3": Const E3 As String = "d3,e3,f3": Const F3 As String = "g3,i3,k3" '03 '
Const DA As String = "a4,b4,c4": Const EA As String = "d4,e4,f4": Const FA As String = "g4,i4,k4" '10 '
Const DB As String = "a5,b5,c5": Const EB As String = "d5,e5,f5": Const FB As String = "g5,i5,k5" '11 '
Const DC As String = "a6,b6,c6": Const EC As String = "d6,e6,f6": Const FC As String = "g6,i6,k6" '12 '
Const DD As String = "a7,b7,c7": Const ED As String = "d7,e7,f7": Const FD As String = "g7,i7,k7" '13 '
Const DE As String = "a8,b8,c8": Const EE As String = "d8,e8,f8": Const FE As String = "g8,i8,k8" '20 '
Const DF As String = "a9,b9,c9": Const EF As String = "d9,e9,f9": Const FF As String = "g9,i9,k9" '21 '
Const DG As String = "a10,b10,c10": Const EG As String = "d10,e10,f10": Const FG As String = "g10,i10,k10" '22 '
Const DH As String = "a11,b11,c11": Const EH As String = "d11,e11,f11": Const FH As String = "g11,i11,k11" '23 '
Const DI As String = "a12,b12,c12": Const EI As String = "d12,e12,f12": Const FI As String = "g12,i12,k12" '30 '
Const DJ As String = "a13,b13,c13": Const EJ As String = "d13,e13,f13": Const FJ As String = "g13,i13,k13" '31 '
Const DK As String = "a14,b14,c14": Const EK As String = "d14,e14,f14": Const FK As String = "g14,i14,k14" '32 '
Const DL As String = "a15,b15,c15": Const EL As String = "d15,e15,f15": Const FL As String = "g15,i15,k15" '33 '
ChuoiTim = ChuoiTim & ","
Do
VTr = InStr(ChuoiTim, ",")
If VTr < 1 Then
Exit Do
Else
GPE = Left(ChuoiTim, VTr - 1)
Select Case DongTim
Case 1
UDF = UDF & "; " & Switch(GPE = "01", D1, GPE = "02", D2, GPE = "03", D3, GPE = "10", DA, GPE = "11", DB _
, GPE = "12", DC, GPE = "13", DD, GPE = "20", DE, GPE = "21", DF, GPE = "22", DG, GPE = "23", DH _
, GPE = "30", DI, GPE = "31", DJ, GPE = "32", DK, GPE = "33", DL)
Case 2
UDF = UDF & "; " & Switch(GPE = "01", E1, GPE = "02", E2, GPE = "03", E3, GPE = "10", EA, GPE = "11", EB _
, GPE = "12", EC, GPE = "13", ED, GPE = "20", EE, GPE = "21", EF, GPE = "22", EG, GPE = "23", EH _
, GPE = "30", EI, GPE = "31", EJ, GPE = "32", EK, GPE = "33", EL)
Case 3
UDF = UDF & "; " & Switch(GPE = "01", F1, GPE = "02", F2, GPE = "03", F3, GPE = "10", FA, GPE = "11", FB _
, GPE = "12", FC, GPE = "13", FD, GPE = "20", FE, GPE = "21", FF, GPE = "22", FG, GPE = "23", FH _
, GPE = "30", FI, GPE = "31", FJ, GPE = "32", FK, GPE = "33", FL)
Case Else
UDF = "Quá Ngu & Cút Ngay!": Exit Function
End Select
ChuoiTim = Mid(ChuoiTim, VTr + 1, Len(ChuoiTim))
End If
Loop
UDF = Mid$(UDF, 3, Len(UDF))
End Function
Cảm ơn sự nhiệt tình giúp đỡ của bạn @SA_DQ!& đây là nổ lực cuối cùng của mình với chủ bài đăng:
PHP:Function UDF(ChuoiTim As String, Optional DongTim As Byte = 1) As String Dim VTr As Byte Dim GPE As String Const D1 As String = "a1,b1,c1": Const E1 As String = "d1,e1,f1": Const F1 As String = "g1,i1,k1" '01 ' Const D2 As String = "a2,b2,c2": Const E2 As String = "d2,e2,f2": Const F2 As String = "g2,i2,k2" '02 ' Const D3 As String = "a3,b3,c3": Const E3 As String = "d3,e3,f3": Const F3 As String = "g3,i3,k3" '03 ' Const DA As String = "a4,b4,c4": Const EA As String = "d4,e4,f4": Const FA As String = "g4,i4,k4" '10 ' Const DB As String = "a5,b5,c5": Const EB As String = "d5,e5,f5": Const FB As String = "g5,i5,k5" '11 ' Const DC As String = "a6,b6,c6": Const EC As String = "d6,e6,f6": Const FC As String = "g6,i6,k6" '12 ' Const DD As String = "a7,b7,c7": Const ED As String = "d7,e7,f7": Const FD As String = "g7,i7,k7" '13 ' Const DE As String = "a8,b8,c8": Const EE As String = "d8,e8,f8": Const FE As String = "g8,i8,k8" '20 ' Const DF As String = "a9,b9,c9": Const EF As String = "d9,e9,f9": Const FF As String = "g9,i9,k9" '21 ' Const DG As String = "a10,b10,c10": Const EG As String = "d10,e10,f10": Const FG As String = "g10,i10,k10" '22 ' Const DH As String = "a11,b11,c11": Const EH As String = "d11,e11,f11": Const FH As String = "g11,i11,k11" '23 ' Const DI As String = "a12,b12,c12": Const EI As String = "d12,e12,f12": Const FI As String = "g12,i12,k12" '30 ' Const DJ As String = "a13,b13,c13": Const EJ As String = "d13,e13,f13": Const FJ As String = "g13,i13,k13" '31 ' Const DK As String = "a14,b14,c14": Const EK As String = "d14,e14,f14": Const FK As String = "g14,i14,k14" '32 ' Const DL As String = "a15,b15,c15": Const EL As String = "d15,e15,f15": Const FL As String = "g15,i15,k15" '33 ' ChuoiTim = ChuoiTim & "," Do VTr = InStr(ChuoiTim, ",") If VTr < 1 Then Exit Do Else GPE = Left(ChuoiTim, VTr - 1) Select Case DongTim Case 1 UDF = UDF & "; " & Switch(GPE = "01", D1, GPE = "02", D2, GPE = "03", D3, GPE = "10", DA, GPE = "11", DB _ , GPE = "12", DC, GPE = "13", DD, GPE = "20", DE, GPE = "21", DF, GPE = "22", DG, GPE = "23", DH _ , GPE = "30", DI, GPE = "31", DJ, GPE = "32", DK, GPE = "33", DL) Case 2 UDF = UDF & "; " & Switch(GPE = "01", E1, GPE = "02", E2, GPE = "03", E3, GPE = "10", EA, GPE = "11", EB _ , GPE = "12", EC, GPE = "13", ED, GPE = "20", EE, GPE = "21", EF, GPE = "22", EG, GPE = "23", EH _ , GPE = "30", EI, GPE = "31", EJ, GPE = "32", EK, GPE = "33", EL) Case 3 UDF = UDF & "; " & Switch(GPE = "01", F1, GPE = "02", F2, GPE = "03", F3, GPE = "10", FA, GPE = "11", FB _ , GPE = "12", FC, GPE = "13", FD, GPE = "20", FE, GPE = "21", FF, GPE = "22", FG, GPE = "23", FH _ , GPE = "30", FI, GPE = "31", FJ, GPE = "32", FK, GPE = "33", FL) Case Else UDF = "Quá Ngu & Cút Ngay!": Exit Function End Select ChuoiTim = Mid(ChuoiTim, VTr + 1, Len(ChuoiTim)) End If Loop UDF = Mid$(UDF, 3, Len(UDF)) End Function
Chưa chắc ai dậy sớm hơn ai. Bạn mở máy tầm 3- 4 giờ thì.....chắc cú giờ đó bạn....đã thức dậy, còn "hôm nào cũng thấy bạn có mặt trên diễn đàn rồi." thì chưa chắc, bác ý mở máy lúc sớm, xỉn rồi ngủ, quên tắt máy ==> bạn nghĩ lầm. HihiCảm ơn sự nhiệt tình giúp đỡ của bạn @SA_DQ!
.....
Mà thường ngày bạn cũng hay dậy sớm ghê, mình mở máy tầm 3-4h hôm nào cũng thấy bạn có mặt trên diễn đàn rồi.
''''''
Thử hàm ABCMình xin giải thích như sau:
Bạn xem lại và giúp đỡ
Cảm ơn bạn!
Function ABC(ByVal iStr$, Optional iLoai& = 1) As String
Dim aDK, aLoai, S, Res(), j&, c&, k&
aDK = ",,,01,02,03,10,11,12,13,20,21,22,23,30,31,32,33,"
aLoai = Array("", "a1,b1,c1", "d1,e1,f1", "g1,i1,k1")
S = Split("," & iStr, ",")
For j = 1 To UBound(S)
c = Int(InStr(1, aDK, "," & S(j) & ",") / 3)
If c > 0 Then
k = k + 1
ReDim Preserve Res(1 To k)
Res(k) = Replace(aLoai(iLoai), "1", c)
End If
Next j
ABC = Join(Res, "; ")
End Function
Cảm ơn bạn @HieuCD đã quan tâm giúp đỡ.Thử hàm ABC
Mã:Function ABC(ByVal iStr$, Optional iLoai& = 1) As String Dim aDK, aLoai, S, Res(), j&, c&, k& aDK = ",,,01,02,03,10,11,12,13,20,21,22,23,30,31,32,33," aLoai = Array("", "a1,b1,c1", "d1,e1,f1", "g1,i1,k1") S = Split("," & iStr, ",") For j = 1 To UBound(S) c = Int(InStr(1, aDK, "," & S(j) & ",") / 3) If c > 0 Then k = k + 1 ReDim Preserve Res(1 To k) Res(k) = Replace(aLoai(iLoai), "1", c) End If Next j ABC = Join(Res, "; ") End Function
Một lần nữa cảm ơn bạn @SA_DQ nhé!& đây là nổ lực cuối cùng của mình với chủ bài đăng:
PHP:Function UDF(ChuoiTim As String, Optional DongTim As Byte = 1) As String Dim VTr As Byte Dim GPE As String Const D1 As String = "a1,b1,c1": Const E1 As String = "d1,e1,f1": Const F1 As String = "g1,i1,k1" '01 ' Const D2 As String = "a2,b2,c2": Const E2 As String = "d2,e2,f2": Const F2 As String = "g2,i2,k2" '02 ' Const D3 As String = "a3,b3,c3": Const E3 As String = "d3,e3,f3": Const F3 As String = "g3,i3,k3" '03 ' Const DA As String = "a4,b4,c4": Const EA As String = "d4,e4,f4": Const FA As String = "g4,i4,k4" '10 ' Const DB As String = "a5,b5,c5": Const EB As String = "d5,e5,f5": Const FB As String = "g5,i5,k5" '11 ' Const DC As String = "a6,b6,c6": Const EC As String = "d6,e6,f6": Const FC As String = "g6,i6,k6" '12 ' Const DD As String = "a7,b7,c7": Const ED As String = "d7,e7,f7": Const FD As String = "g7,i7,k7" '13 ' Const DE As String = "a8,b8,c8": Const EE As String = "d8,e8,f8": Const FE As String = "g8,i8,k8" '20 ' Const DF As String = "a9,b9,c9": Const EF As String = "d9,e9,f9": Const FF As String = "g9,i9,k9" '21 ' Const DG As String = "a10,b10,c10": Const EG As String = "d10,e10,f10": Const FG As String = "g10,i10,k10" '22 ' Const DH As String = "a11,b11,c11": Const EH As String = "d11,e11,f11": Const FH As String = "g11,i11,k11" '23 ' Const DI As String = "a12,b12,c12": Const EI As String = "d12,e12,f12": Const FI As String = "g12,i12,k12" '30 ' Const DJ As String = "a13,b13,c13": Const EJ As String = "d13,e13,f13": Const FJ As String = "g13,i13,k13" '31 ' Const DK As String = "a14,b14,c14": Const EK As String = "d14,e14,f14": Const FK As String = "g14,i14,k14" '32 ' Const DL As String = "a15,b15,c15": Const EL As String = "d15,e15,f15": Const FL As String = "g15,i15,k15" '33 ' ChuoiTim = ChuoiTim & "," Do VTr = InStr(ChuoiTim, ",") If VTr < 1 Then Exit Do Else GPE = Left(ChuoiTim, VTr - 1) Select Case DongTim Case 1 UDF = UDF & "; " & Switch(GPE = "01", D1, GPE = "02", D2, GPE = "03", D3, GPE = "10", DA, GPE = "11", DB _ , GPE = "12", DC, GPE = "13", DD, GPE = "20", DE, GPE = "21", DF, GPE = "22", DG, GPE = "23", DH _ , GPE = "30", DI, GPE = "31", DJ, GPE = "32", DK, GPE = "33", DL) Case 2 UDF = UDF & "; " & Switch(GPE = "01", E1, GPE = "02", E2, GPE = "03", E3, GPE = "10", EA, GPE = "11", EB _ , GPE = "12", EC, GPE = "13", ED, GPE = "20", EE, GPE = "21", EF, GPE = "22", EG, GPE = "23", EH _ , GPE = "30", EI, GPE = "31", EJ, GPE = "32", EK, GPE = "33", EL) Case 3 UDF = UDF & "; " & Switch(GPE = "01", F1, GPE = "02", F2, GPE = "03", F3, GPE = "10", FA, GPE = "11", FB _ , GPE = "12", FC, GPE = "13", FD, GPE = "20", FE, GPE = "21", FF, GPE = "22", FG, GPE = "23", FH _ , GPE = "30", FI, GPE = "31", FJ, GPE = "32", FK, GPE = "33", FL) Case Else UDF = "Quá Ngu & Cút Ngay!": Exit Function End Select ChuoiTim = Mid(ChuoiTim, VTr + 1, Len(ChuoiTim)) End If Loop UDF = Mid$(UDF, 3, Len(UDF)) End Function
Chỉ cần test với dữ liệu thực thì biết thôi chứ cần gì phải hỏi.2-Phải chăng bạn đã lấy quy luật của các dữ liệu trên? (Dữ liệu là mình chỉ lấy ví dụ đơn giản cho dễ hiểu mà thôi, thực tế khi mã hóa thì sẽ không có quy luật nào cả.
(1) Thiết nghĩ bạn có thể đưa phần bạn đã rút gọn Code để mọi người & trong đó có mình được chiêm nghiệm được không & thay mặt cho những người đang quan tâm xin cảm ơn bạn trướcSau một hồi chọc ngoáy linh tinh, mình đã rút gọn được code của bạn xuống 1/2 mà kết quả vẫn đúng(1) (Còn về nguyên lý và lý thuyết hoạt động có bị sai hay không mình mù tịt). Bởi vì mình không hiểu rõ các câu lệnh.
Bạn giải thích giúp mình câu này với nhé. (2)
UDF = Mid$(UDF, 3, Len(UDF)) (số 3 là như nào hả bạn? Liệu cho lên thành số 4,,,5..... được không?
Nếu không tìm được quy luật dữ liệu chịu khó nhập array L1, L2, L3Cảm ơn bạn @HieuCD đã quan tâm giúp đỡ.
Cảm ơn bạn rất nhiều!
fnc của bạn súc tích quá, mình đã test và kết quả rất rất đúng:
Nhưng code của bạn viết khó hiểu quá.
1-Mình thấy bạn đưa vào rất ít dữ liệu aLoai = Array("", "a1,b1,c1", "d1,e1,f1", "g1,i1,k1")
Thế sao kết quả lại ra đúng được nhể?
2-Phải chăng bạn đã lấy quy luật của các dữ liệu trên? (Dữ liệu là mình chỉ lấy ví dụ đơn giản cho dễ hiểu mà thôi, thực tế khi mã hóa thì sẽ không có quy luật nào cả.)
Bạn có thể giải thích giúp mình các câu lệnh trong code để mình vận dụng nhé.
Trân thành cảm ơn bạn!
Bài đã được tự động gộp:
Một lần nữa cảm ơn bạn @SA_DQ nhé!
Sau một hồi chọc ngoáy linh tinh, mình đã rút gọn được code của bạn xuống 1/2 mà kết quả vẫn đúng (Còn về nguyên lý và lý thuyết hoạt động có bị sai hay không mình mù tịt). Bởi vì mình không hiểu rõ các câu lệnh.
Bạn giải thích giúp mình câu này với nhé.
Loop
UDF = Mid$(UDF, 3, Len(UDF)) (số 3 là như nào hả bạn? Liệu cho lên thành số 4,,,5..... được không?
End Function
Cảm ơn bạn nhé!
Function DEF(ByVal iStr$, Optional iLoai& = 1) As String
Dim aDK, aLoai, L1, L2, L3, S, Res(), j&
aDK = ",,,01,02,03,10,11,12,13,20,21,22,23,30,31,32,33,"
L1 = Array("a1,b1,c1", "a2,b2,c2", "a3,b3,c3", "a4,b4,c4", "a5,b5,c5", "a6,b6,c6", "a7,b7,c7", "a8,b8,c8", "a9,b9,c9", "a10,b10,c10", "a11,b11,c11", "a12,b12,c12", "a13,b13,c13", "a14,b14,c14", "a15,b15,c15")
L2 = Array("d1,e1,f1", "d2,e2,f2", "d3,e3,f3", "d4,e4,f4", "d5,e5,f5", "d6,e6,f6", "d7,e7,f7", "d8,e8,f8", "d9,e9,f9", "d10,e10,f10", "d11,e11,f11", "d12,e12,f12", "d13,e13,f13", "d14,e14,f14", "d15,e15,f15")
L3 = Array("g1,i1,k1", "g2,i2,k2", "g3,i3,k3", "g4,i4,k4", "g5,i5,k5", "g6,i6,k6", "g7,i7,k7", "g8,i8,k8", "g9,i9,k9", "g10,i10,k10", "g11,i11,k11", "g12,i12,k12", "g13,i13,k13", "g14,i14,k14", "g15,i15,k15")
aLoai = Array("", L1, L2, L3)
S = Split("," & iStr, ",")
For j = 1 To UBound(S)
c = Int(InStr(1, aDK, "," & S(j) & ",") / 3)
If c > 0 Then
k = k + 1
ReDim Preserve Res(1 To k)
Res(k) = aLoai(iLoai)(c - 1)
End If
Next j
DEF = Join(Res, "; ")
End Function
Trời ạ, mình đã bảo là không hiểu code nên không biết đúng sai (Chỉ thấy kết quả đúng thì mình ngộ nhận là đúng thôi)Chỉ cần test với dữ liệu thực thì biết thôi chứ cần gì phải hỏi.
Nếu có kinh nghiệm thì nhìn
Res(k) = Replace(aLoai(iLoai), "1", c)
cũng đủ hiểu.
Bạn @SA_DQ xem giúp mình rút gọn code như này có đúng lý thuyết không bạn nhé.(1) Thiết nghĩ bạn có thể đưa phần bạn đã rút gọn Code để mọi người & trong đó có mình được chiêm nghiệm được không & thay mặt cho những người đang quan tâm xin cảm ơn bạn trước
(2) Bạn có thể tự thử để hiểu mệnh đề đó mà, bằng nhiều cách chọc ngoái của bạn mà!
Bạn nói dữ liệu của bạn không theo qui luật. Vậy thì chạy code với dữ liệu không theo qui luật thì sẽ có kết quả sai chứ làm sao kết quả đúng được. Người ta nói là chạy với dữ liệu thực và NHÌN kết quả. Đâu cần phải hiểu code để biết kết quả sai hay đúng?Trời ạ, mình đã bảo là không hiểu code nên không biết đúng sai (Chỉ thấy kết quả đúng thì mình ngộ nhận là đúng thôi)
=ABC("01,02";1)
=UDF("01,02";1)
Bạn hầu như không có rút gọn bằng cách đó; vì những tham biến D1, D2, D3, DA,. . . . bạn chưa nhập trị cho chúng; Hay bạn định bắt chúng lấy trị trên trang tính hay thông qua các Name của trang??Bạn @SA_DQ xem giúp mình rút gọn code như này có đúng lý thuyết không bạn nhé.
Liệu có rút gọn được bước nào nữa không?
Sao mình Test thử các kết quả đều đúng nhể? (Mình đã nói là mình không biết nguyên lý hoạt động của câu lệnh mà)Bạn hầu như không có rút gọn bằng cách đó; vì những tham biến D1, D2, D3, DA,. . . . bạn chưa nhập trị cho chúng; Hay bạn định bắt chúng lấy trị trên trang tính??
hihi... cảm ơn bạn, à à thử bằng cách nàyBạn nói dữ liệu của bạn không theo qui luật. Vậy thì chạy code với dữ liệu không theo qui luật thì sẽ có kết quả sai chứ làm sao kết quả đúng được. Người ta nói là chạy với dữ liệu thực và NHÌN kết quả. Đâu cần phải hiểu code để biết kết quả sai hay đúng?
Bài #24 liệt kê tất cả các dữ liệu, và bài #27 liệt kê chỉ cho 1 mã 01.
Bây giờ sửa dữ liệu trong bài #7 thành:
Dòng cần thay thế 1
...
02=hehe,hichic,blala
Với dữ liệu "THỰC" như thế để chạy code bài #27 phải sửa thành
Const D2 As String = "hehe,hichic,blala":
Bài #27 không sửa gì vì chỉ dữ liệu cho 01 được liệt kê. Bây giờ nhập 2 công thức
Mã:=ABC("01,02";1) =UDF("01,02";1)
Có kết quả nào đúng không? Có kết quả nào sai không? Để biết đúng sai có cần hiểu code không?
Bạn @batman1 cho hướng giải quyết giúp mình nhé!Không cần hiểu code cũng biết kết quả đúng phải là a1,b1,c1; hehe,hichic,blala
Tôi chỉ muốn ý thức cho bạn là code bài #31 chỉ đúng khi các mã 01, 02, ... có ĐÚNG 2 KÝ TỰ. Nếu các mã không có ĐÚNG 2 KÝ TỰ thì kết quả có thể sẽ sai. Cách kiểm tra:
=DEF("010,10";1)
=UDF("010,10";1)