Giúp em hàm tìm dữ liệu để thay thế sang dữ liệu khác (6 người xem)

  • Thread starter Thread starter lala_qn
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

bài nầy chỉ có VBA là tối ưu nhất, nhẹ file và đơn giản
bạn cần cột nào ghi rỏ mình sẹ viết lại đầy đủ ký tự đặc biệt hơn
gần tết công việc nhiều quá ko pm lại a kịp sory a nhé!
e gởi lại file đính kèm vd8-c có chút thay đổi nội dung để nhờ a viết dùm VBA cho tiện dùng hơn ạ,
Trong fiile e cần kết quả ở cột H , I , J , K với điều kiện sau ạ:
Kết quả 1:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 1 (cột B)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 2 (cột C)
+ tìm dấu "=" thay thế bằng list kí tự 4 (cột E), chọn ngẫu nhiên 1 kí tự ở list 4 rùi thay vào đồng loạt trong dữ liệu A2
Kết quả 2:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 1 (cột B)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 3 (cột D)
+ tìm dấu "=" thay thế bằng list kí tự 4 (cột E), chọn ngẫu nhiên 1 kí tự ở list 4 rùi thay vào đồng loạt trong dữ liệu A2
Kết quả 3:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 1 (cột B)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 3 (cột D)
+ tìm dấu "=" thay thế ngẫu nhiên bằng list kí tự 5 (cột F)
Kết quả 4:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 6 (cột G)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 3 (cột D)
+ tìm dấu "=" thay thế ngẫu nhiên bằng list kí tự 5 (cột F)
e cảm ơn a nhiều ạ !!!
 

File đính kèm

Lần chỉnh sửa cuối:
gần tết công việc nhiều quá ko pm lại a kịp sory a nhé!
e gởi lại file đính kèm vd8-c có chút thay đổi nội dung để nhờ a viết dùm VBA cho tiện dùng hơn ạ,
Trong fiile e cần kết quả ở cột H , I , J , K với điều kiện sau ạ:
Kết quả 1:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 1 (cột B)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 2 (cột C)
+ tìm dấu "=" thay thế bằng list kí tự 4 (cột E), chọn ngẫu nhiên 1 kí tự ở list 4 rùi thay vào đồng loạt trong dữ liệu A2
Kết quả 2:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 1 (cột B)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 3 (cột D)
+ tìm dấu "=" thay thế bằng list kí tự 4 (cột E), chọn ngẫu nhiên 1 kí tự ở list 4 rùi thay vào đồng loạt trong dữ liệu A2
Kết quả 3:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 1 (cột B)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 3 (cột D)
+ tìm dấu "=" thay thế ngẫu nhiên bằng list kí tự 5 (cột F)
Kết quả 4:
+ tìm dấu chấm thay thế ngẫu nhiên bằng list kí tự 6 (cột G)
+ tìm số 0 thay thế ngẫu nhiên bằng list kí tự 3 (cột D)
+ tìm dấu "=" thay thế ngẫu nhiên bằng list kí tự 5 (cột F)
e cảm ơn a nhiều ạ !!!
bấm ngôi sao chạy code
 

File đính kèm

a ơi lúc sáng e tưởng a chưa xem vd e up, nên e có chỉnh sửa lại vd8-c , nhờ a xem viết thêm hàm dùm e trong vd8-c dùm e với ạ, cảm ơn a nhiều ạ !
chạy code
Mã:
Sub ThayKT()
Dim Rng As Range, Arr(), i As Long, k As Integer, T1 As String, T2 As String, T3
Dim L11 As String, L12 As String, L21 As String, L22 As String, L31 As String, L32 As String
If Range("A65500").End(xlUp).Row < 2 Then Exit Sub
Set Rng = Range("A2:A" & Range("A65500").End(xlUp).Row)
ReDim Arr(1 To Rng.Rows.Count, 1 To 4)
L11 = Range("B2").Value:      L12 = Range("G2").Value
L21 = Range("C2").Value:      L22 = Range("D2").Value
L31 = Range("E2").Value:      L32 = Range("f2").Value
L32 = Replace(Replace(Replace(Replace(L32, ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(Replace(Replace(L12, ",", "a", 1, 1), ",", "b", 1, 1), ",", "a", 1, 1), "b", ",", 1, 1)
L12 = Replace(Replace(Replace(Replace(L12, ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(L12, ",", ";"), "a", ",")
T3 = Split(L32, ",")
T4 = Split(L12, ";")
For i = 1 To UBound(Arr)
  Arr(i, 1) = Rng(i, 1):    Arr(i, 2) = Rng(i, 1)
  Arr(i, 3) = Rng(i, 1):    Arr(i, 4) = Rng(i, 1)
  T1 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  T2 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  For k = 1 To Len(Arr(i, 1))
    If Mid(Rng(i, 1), k, 1) = "." Then
      Mid(Arr(i, 1), k, 1) = Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Mid(Arr(i, 2), k, 1) = Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Mid(Arr(i, 3), k, 1) = Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
    ElseIf Mid(Rng(i, 1), k, 1) = "0" Then
      Mid(Arr(i, 1), k, 1) = Mid(L21, Int(Len(L21) * Rnd() + 1), 1)
      Mid(Arr(i, 2), k, 1) = Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Mid(Arr(i, 3), k, 1) = Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Mid(Arr(i, 4), k, 1) = Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
    ElseIf Mid(Rng(i, 1), k, 1) = "=" Then
      Mid(Arr(i, 1), k, 1) = T1
      Mid(Arr(i, 2), k, 1) = T2
    End If
  Next k
  For k = 1 To Len(Arr(i, 3))
    If Mid(Arr(i, 3), k, 1) = "=" Then
      Arr(i, 3) = Replace(Arr(i, 3), "=", T3(Int((UBound(T3) + 1) * Rnd())), 1, 1)
    End If
  Next k
  For k = 1 To Len(Arr(i, 4))
    If Mid(Arr(i, 4), k, 1) = "=" Then
      Arr(i, 4) = Replace(Arr(i, 4), "=", T3(Int((UBound(T3) + 1) * Rnd())), 1, 1)
    End If
  Next k
  For k = 1 To Len(Arr(i, 4))
    If Mid(Arr(i, 4), k, 1) = "." Then
      Arr(i, 4) = Replace(Arr(i, 4), ".", T4(Int((UBound(T4) + 1) * Rnd())), 1, 1)
    End If
  Next k
Next i
Range("H2").Resize(UBound(Arr), 4) = Arr
Erase Arr: Set Rng = Nothing
End Sub
 
chạy code
Mã:
Sub ThayKT()
Dim Rng As Range, Arr(), i As Long, k As Integer, T1 As String, T2 As String, T3
Dim L11 As String, L12 As String, L21 As String, L22 As String, L31 As String, L32 As String
If Range("A65500").End(xlUp).Row < 2 Then Exit Sub
Set Rng = Range("A2:A" & Range("A65500").End(xlUp).Row)
ReDim Arr(1 To Rng.Rows.Count, 1 To 4)
L11 = Range("B2").Value:      L12 = Range("G2").Value
L21 = Range("C2").Value:      L22 = Range("D2").Value
L31 = Range("E2").Value:      L32 = Range("f2").Value
L32 = Replace(Replace(Replace(Replace(L32, ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(Replace(Replace(L12, ",", "a", 1, 1), ",", "b", 1, 1), ",", "a", 1, 1), "b", ",", 1, 1)
L12 = Replace(Replace(Replace(Replace(L12, ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(L12, ",", ";"), "a", ",")
T3 = Split(L32, ",")
T4 = Split(L12, ";")
For i = 1 To UBound(Arr)
  Arr(i, 1) = Rng(i, 1):    Arr(i, 2) = Rng(i, 1)
  Arr(i, 3) = Rng(i, 1):    Arr(i, 4) = Rng(i, 1)
  T1 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  T2 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  For k = 1 To Len(Arr(i, 1))
    If Mid(Rng(i, 1), k, 1) = "." Then
      Mid(Arr(i, 1), k, 1) = Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Mid(Arr(i, 2), k, 1) = Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Mid(Arr(i, 3), k, 1) = Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
    ElseIf Mid(Rng(i, 1), k, 1) = "0" Then
      Mid(Arr(i, 1), k, 1) = Mid(L21, Int(Len(L21) * Rnd() + 1), 1)
      Mid(Arr(i, 2), k, 1) = Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Mid(Arr(i, 3), k, 1) = Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Mid(Arr(i, 4), k, 1) = Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
    ElseIf Mid(Rng(i, 1), k, 1) = "=" Then
      Mid(Arr(i, 1), k, 1) = T1
      Mid(Arr(i, 2), k, 1) = T2
    End If
  Next k
  For k = 1 To Len(Arr(i, 3))
    If Mid(Arr(i, 3), k, 1) = "=" Then
      Arr(i, 3) = Replace(Arr(i, 3), "=", T3(Int((UBound(T3) + 1) * Rnd())), 1, 1)
    End If
  Next k
  For k = 1 To Len(Arr(i, 4))
    If Mid(Arr(i, 4), k, 1) = "=" Then
      Arr(i, 4) = Replace(Arr(i, 4), "=", T3(Int((UBound(T3) + 1) * Rnd())), 1, 1)
    End If
  Next k
  For k = 1 To Len(Arr(i, 4))
    If Mid(Arr(i, 4), k, 1) = "." Then
      Arr(i, 4) = Replace(Arr(i, 4), ".", T4(Int((UBound(T4) + 1) * Rnd())), 1, 1)
    End If
  Next k
Next i
Range("H2").Resize(UBound(Arr), 4) = Arr
Erase Arr: Set Rng = Nothing
End Sub
dạ e thấy có 1 lỗi ở kết quả 4 a, lỗi phần điền kiện dùng List kít tự 6 thay vào để có Kết quả 4, e thấy dữ liệu thay vào có cái bị như thế này a
vd: 135.056.645=100 , ra kết quả 4: 135O56, 645-1ΘΘ
lúc này kết quả bị dính liền mất dấu thay thế a, ko biết bị lỗi gì a nhỉ ?
với lại trong List kí tự 5 chỉ có ”_”, ” _”, ”_ ” , e thấy kết quả có thêm ” _ ”
a xem sửa lại giúp e với ạ, thanks a ạ!
 
Lần chỉnh sửa cuối:
dạ e thấy có 1 lỗi ở kết quả 4 a, lỗi phần điền kiện dùng List kít tự 6 thay vào để có Kết quả 4, e thấy dữ liệu thay vào có cái bị như thế này a
vd: 135.056.645=100 , ra kết quả 4: 135O56, 645-1ΘΘ
lúc này kết quả bị dính liền mất dấu thay thế a, ko biết bị lỗi gì a nhỉ ?
với lại trong List kí tự 5 chỉ có ”_”, ” _”, ”_ ” , e thấy kết quả có thêm ” _ ”
a xem sửa lại giúp e với ạ, thanks a ạ!
file của mình không bị như lổi trên
bạn bấm ngôi sao để chạy code và kiểm tra lại, trong file mình dùng hàm Find để kiểm tra ký tự lạ
 

File đính kèm

file của mình không bị như lổi trên
bạn bấm ngôi sao để chạy code và kiểm tra lại, trong file mình dùng hàm Find để kiểm tra ký tự lạ
đầu năm mới e xin chúc a HieuCD cùng toàn thể anh chị GPEC mạnh khoẻ an khang thịnh vượng - vạn sự như ý - may mắn - thành công trong công việc ạ !
e mới chạy thử lại thì thấy có mấy kết quả hơi khác ở kết quả 4 (bên cột kết quả 3 e thấy cũng có bị tương tự, các ảnh chụp ở dưới e chụp ở cột kết quả 4 a nhé)
ảnh 1 " — " (bên list kí tự 5 ko có)
ảnh 2 " / " (bên list kí tự 5 ko có)
ảnh 3 "763ˊ45ˊ 64´ 82~ 9" (bên list kí tự 6 ko có)
nhờ a xem lại giúp với ạ,
cảm ơn a nhiều nhé !
 
Lần chỉnh sửa cuối:
file của mình không bị như lổi trên
bạn bấm ngôi sao để chạy code và kiểm tra lại, trong file mình dùng hàm Find để kiểm tra ký tự lạ
a ơi, e thấy dùng VBA chạy dữ liệu nhiều e thấy cũng nặng, với lại e vào nhìn code ko biết đường sữa để tiện dùng
nên e nghĩ chuyển sang dùng hàm tiện hơn, e có tạo lại file dựa trên hàm a tạo cho e gần xong, còn 2 hàm ở cột G3 và H3
Nhờ a tạo dùm e 2 cột này với ạ, e cảm ơn a nhiều nhé !!!
 

File đính kèm

a ơi, e thấy dùng VBA chạy dữ liệu nhiều e thấy cũng nặng, với lại e vào nhìn code ko biết đường sữa để tiện dùng
nên e nghĩ chuyển sang dùng hàm tiện hơn, e có tạo lại file dựa trên hàm a tạo cho e gần xong, còn 2 hàm ở cột G3 và H3
Nhờ a tạo dùm e 2 cột này với ạ, e cảm ơn a nhiều nhé !!!

Cái đỏ đỏ này chắc phải liên hệ với ... Vinamilk của Việt Nam, nếu không thì phải liên hệ các công ty nước ngoài a e... năm 2017.
 
Lần chỉnh sửa cuối:
Cái đỏ đỏ này chắc phải liên hệ với ... Vinamilk của Việt Nam, nếu không thì phải liên hệ các công ty nước ngoài a e... năm 2017.
vinamiik ko bán loại đường sữa này nên e mới khổ thế này a, giúp e với a nhé , hic
 
Xin hỏi chủ bài đăng, rằng có khi nào bạn cần fép thay thế ngược lại không?

Mường tượng như bạn đang iêu cầu mã hóa 1 đoạn văn bản;

Vậy sẽ fải giải mã đoạn văn bản đã mã hóa không?
 
a ơi, e thấy dùng VBA chạy dữ liệu nhiều e thấy cũng nặng, với lại e vào nhìn code ko biết đường sữa để tiện dùng
nên e nghĩ chuyển sang dùng hàm tiện hơn, e có tạo lại file dựa trên hàm a tạo cho e gần xong, còn 2 hàm ở cột G3 và H3
Nhờ a tạo dùm e 2 cột này với ạ, e cảm ơn a nhiều nhé !!!
dùng hàm Excel không đơn giản như bạn nghĩ, chỉ có khả năng dùng code VBA
 
đầu năm mới e xin chúc a HieuCD cùng toàn thể anh chị GPEC mạnh khoẻ an khang thịnh vượng - vạn sự như ý - may mắn - thành công trong công việc ạ !
e mới chạy thử lại thì thấy có mấy kết quả hơi khác ở kết quả 4 (bên cột kết quả 3 e thấy cũng có bị tương tự, các ảnh chụp ở dưới e chụp ở cột kết quả 4 a nhé)
ảnh 1 " — " (bên list kí tự 5 ko có)
ảnh 2 " / " (bên list kí tự 5 ko có)
ảnh 3 "763ˊ45ˊ 64´ 82~ 9" (bên list kí tự 6 ko có)
nhờ a xem lại giúp với ạ,
cảm ơn a nhiều nhé !
bạn dùng code mới trên tập vd8-c(1).xlsb
Mã:
Sub ThayKT()
Dim Rng As Range, Arr(), i As Long, k As Integer, T1 As String, T2 As String, T3, T4, Tmp1 As String, Tmp2 As String, Tmp3 As String, Tmp4 As String
Dim L11 As String, L12 As String, L21 As String, L22 As String, L31 As String, L32 As String
If Range("A65500").End(xlUp).Row < 2 Then Exit Sub
Set Rng = Range("A2:A" & Range("A65500").End(xlUp).Row)
ReDim Arr(1 To Rng.Rows.Count, 1 To 4)
L11 = Range("B2").Value:      L12 = Range("G2").Value
L21 = Range("C2").Value:      L22 = Range("D2").Value
L31 = Range("E2").Value:      L32 = Range("f2").Value
L32 = Replace(Replace(Replace(Replace(Replace(L32, " , ", ","), ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(Replace(Replace(L12, ",", "a", 1, 1), ",", "b", 1, 1), ",", "a", 1, 1), "b", ",", 1, 1)
L12 = Replace(Replace(Replace(Replace(Replace(L12, " , ", ","), ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(L12, ",", ";"), "a", ",")
T3 = Split(L32, ",")
T4 = Split(L12, ";")
Randomize
For i = 1 To UBound(Arr)
  T1 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  T2 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  Tmp1 = "":  Tmp2 = "":  Tmp3 = "":  Tmp4 = ""
  For k = 1 To Len(Rng(i, 1))
    If Mid(Rng(i, 1), k, 1) = "." Then
      Tmp1 = Tmp1 & Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Tmp2 = Tmp2 & Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Tmp3 = Tmp3 & Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Tmp4 = Tmp4 & T4(Int((UBound(T4) + 1) * Rnd()))
    ElseIf Mid(Rng(i, 1), k, 1) = "0" Then
      Tmp1 = Tmp1 & Mid(L21, Int(Len(L21) * Rnd() + 1), 1)
      Tmp2 = Tmp2 & Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Tmp3 = Tmp3 & Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Tmp4 = Tmp4 & Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
    ElseIf Mid(Rng(i, 1), k, 1) = "=" Then
      Tmp1 = Tmp1 & T1
      Tmp2 = Tmp2 & T2
      Tmp3 = Tmp3 & T3(Int((UBound(T3) + 1) * Rnd()))
      Tmp4 = Tmp4 & T3(Int((UBound(T3) + 1) * Rnd()))
    Else
      Tmp1 = Tmp1 & Mid(Rng(i, 1), k, 1)
      Tmp2 = Tmp2 & Mid(Rng(i, 1), k, 1)
      Tmp3 = Tmp3 & Mid(Rng(i, 1), k, 1)
      Tmp4 = Tmp4 & Mid(Rng(i, 1), k, 1)
    End If
  Next k
  Arr(i, 1) = Tmp1: Arr(i, 2) = Tmp2
  Arr(i, 3) = Tmp3: Arr(i, 4) = Tmp4
Next i
Range("H2").Resize(UBound(Arr), 4) = Arr
Erase Arr: Set Rng = Nothing
End Sub
 
bạn dùng code mới trên tập vd8-c(1).xlsb
Mã:
Sub ThayKT()
Dim Rng As Range, Arr(), i As Long, k As Integer, T1 As String, T2 As String, T3, T4, Tmp1 As String, Tmp2 As String, Tmp3 As String, Tmp4 As String
Dim L11 As String, L12 As String, L21 As String, L22 As String, L31 As String, L32 As String
If Range("A65500").End(xlUp).Row < 2 Then Exit Sub
Set Rng = Range("A2:A" & Range("A65500").End(xlUp).Row)
ReDim Arr(1 To Rng.Rows.Count, 1 To 4)
L11 = Range("B2").Value:      L12 = Range("G2").Value
L21 = Range("C2").Value:      L22 = Range("D2").Value
L31 = Range("E2").Value:      L32 = Range("f2").Value
L32 = Replace(Replace(Replace(Replace(Replace(L32, " , ", ","), ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(Replace(Replace(L12, ",", "a", 1, 1), ",", "b", 1, 1), ",", "a", 1, 1), "b", ",", 1, 1)
L12 = Replace(Replace(Replace(Replace(Replace(L12, " , ", ","), ", ", ","), " ,", ""), Chr(148), ""), Chr(147), "")
L12 = Replace(Replace(L12, ",", ";"), "a", ",")
T3 = Split(L32, ",")
T4 = Split(L12, ";")
Randomize
For i = 1 To UBound(Arr)
  T1 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  T2 = Mid(L31, Int(Len(L31) * Rnd() + 1), 1)
  Tmp1 = "":  Tmp2 = "":  Tmp3 = "":  Tmp4 = ""
  For k = 1 To Len(Rng(i, 1))
    If Mid(Rng(i, 1), k, 1) = "." Then
      Tmp1 = Tmp1 & Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Tmp2 = Tmp2 & Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Tmp3 = Tmp3 & Mid(L11, Int(Len(L11) * Rnd() + 1), 1)
      Tmp4 = Tmp4 & T4(Int((UBound(T4) + 1) * Rnd()))
    ElseIf Mid(Rng(i, 1), k, 1) = "0" Then
      Tmp1 = Tmp1 & Mid(L21, Int(Len(L21) * Rnd() + 1), 1)
      Tmp2 = Tmp2 & Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Tmp3 = Tmp3 & Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
      Tmp4 = Tmp4 & Mid(L22, Int(Len(L22) * Rnd() + 1), 1)
    ElseIf Mid(Rng(i, 1), k, 1) = "=" Then
      Tmp1 = Tmp1 & T1
      Tmp2 = Tmp2 & T2
      Tmp3 = Tmp3 & T3(Int((UBound(T3) + 1) * Rnd()))
      Tmp4 = Tmp4 & T3(Int((UBound(T3) + 1) * Rnd()))
    Else
      Tmp1 = Tmp1 & Mid(Rng(i, 1), k, 1)
      Tmp2 = Tmp2 & Mid(Rng(i, 1), k, 1)
      Tmp3 = Tmp3 & Mid(Rng(i, 1), k, 1)
      Tmp4 = Tmp4 & Mid(Rng(i, 1), k, 1)
    End If
  Next k
  Arr(i, 1) = Tmp1: Arr(i, 2) = Tmp2
  Arr(i, 3) = Tmp3: Arr(i, 4) = Tmp4
Next i
Range("H2").Resize(UBound(Arr), 4) = Arr
Erase Arr: Set Rng = Nothing
End Sub
Dạ e cảm ơn a nhé !!!
 
trước e có nhờ 1 anh viết dùm code cùng chủ đề này, nhưng gần đây e ko liên ko dc, e thì ko hiểu gì về VBA nên ko chỉnh dc code, trong file này còn mấy chổ cần chỉnh lại cho hoàn thiện bài
e nhờ a HieuCDxem code sữa dùm e để hoàn thiện hơn với ạ, e cảm ơn a ạ!
https://www.dropbox.com/s/jr5fnlm8uvt9q7h/file.ngau.nhien-GPE.xlsm?dl=0
trong file này có 2 sheet, sheet1 là file a ấy đã giúp, sheet2 là muốn hoàn thiện hơn ạ
ở sheet1 : e thấy cột C tìm số 0 thay thế 0OΘΟ , e F9 thì thấy có lúc bị mất hẳn kí tự cần thay thế, cột D,F,G,H,I cũng bị như C , cột J e test thử thì thấy tìm dc có 2 kí tự, chưa tìm dc 1 cụm từ để thay thế ạ
tại dữ liệu thay thế e hay đổi kiểu dữ liệu liên tục nên đặt ở ngoài cho tiện dùng, trong quá trình thay thế e muốn nhận diện kiểu kí tự chuẩn theo yêu cầu, nên e định đặt nó sẽ phân biệt các kiểu với nhau bằng dấu chấm phảy ; nên e đã làm sheet2 và sau này sẽ làm theo sheet2 hẳn, nhờ a sữa dùm sẽ phân biệt các kiểu dữ liệu thay thế là dấu ; hết a nhé (nội dung bài vẫn giống sheet1 hết nhé)
e cảm ơn a nhiều nhé !
 
Lần chỉnh sửa cuối:
trước e có nhờ 1 anh viết dùm code cùng chủ đề này, nhưng gần đây e ko liên ko dc, e thì ko hiểu gì về VBA nên ko chỉnh dc code, trong file này còn mấy chổ cần chỉnh lại cho hoàn thiện bài
e nhờ a HieuCDxem code sữa dùm e để hoàn thiện hơn với ạ, e cảm ơn a ạ!
https://www.dropbox.com/s/jr5fnlm8uvt9q7h/file.ngau.nhien-GPE.xlsm?dl=0
trong file này có 2 sheet, shee1 là file a ấy đã giúp, sheet2 là muốn hoàn thiện hơn ạ
ở sheet1 : e thấy cột C tìm số 0 thay thế 0OΘΟ , e F9 thì thấy có lúc bị mất hẳn kí tự cần thay thế, cột D,F,G,H,I cũng bị như C , cột J e test thử thì thấy tìm dc có 2 kí tự, chưa tìm dc 1 cụm từ để thay thế ạ
tại dữ liệu thay thế e hay đổi kiểu dữ liệu liên tục nên đặt ở ngoài cho tiện dùng, trong quá trình thay thế e muốn nhận diện kiểu kí tự chuẩn theo yêu cầu, nên e định đặt nó sẽ phân biệt các kiểu với nhau bằng dấu chấm phảy ; nên e đã làm sheet2 và sau này sẽ làm theo sheet2 hẳn, nhờ a sữa dùm sẽ phân biệt các kiểu dữ liệu thay thế là dấu ; hết a nhé (nội dung bài vẫn giống sheet1 hết nhé)
e cảm ơn a nhiều nhé !
bạn tìm 1 ký tự đặc biệt nào đó chắc chắn không trùng với ký tự thay thế để làm dấu ngăn cách như: @,$,a,b... gì đó và báo cho mình
 
bạn tìm 1 ký tự đặc biệt nào đó chắc chắn không trùng với ký tự thay thế để làm dấu ngăn cách như: @,$,a,b... gì đó và báo cho mình
dấu chấm phảy ; e hoàn toàn ko dùng đến a, sd dấu ; để ngăn cách a nhé , ở sheet2 e có soạn sẵn sd dấu ; để ngăn cách đó ạ, thanks a !
 
Lần chỉnh sửa cuối:
tạo cho bạn 4 hàm, xem file để tìm hiểu cách dùng từng hàm
 

File đính kèm

Web KT

Bài viết mới nhất

Back
Top Bottom