Loại các dữ liệu trùng nhau trong cùng 1 ô.

Liên hệ QC

minhtan902

Thành viên mới
Tham gia
15/4/12
Bài viết
7
Được thích
0
dear các anh chị,
mình có vấn đề này cần anh chị nào giúp với. Vd cells(1,1) co giá trị A-B-B-A-S-D, sau khi xử lý dữ liệu cells(1,1) có giá trị A-B-S-D. EM GUI THEO FILE DINH KEM.
CẢM ƠN.
 

File đính kèm

  • Book1.xlsx
    9.8 KB · Đọc: 10
Giải thuật:
- Dùng hàm split tách chuỗi thành mảng thep ký tự "-"
- Bắt đầu từ phần tử đầu tiên, duyệt các phần từ còn lại và so sánh với phần tử này. Nếu thấy trùng thì đổi thành char(0)
- Tiếp tục đến phần tử áp cuối (không cần phần tử cuối cùng)
- Ráp mảng lại, phần tử nào bằng char(0) thì bỏ qua
 
Upvote 0
dear các anh chị,
mình có vấn đề này cần anh chị nào giúp với. Vd cells(1,1) co giá trị A-B-B-A-S-D, sau khi xử lý dữ liệu cells(1,1) có giá trị A-B-S-D. EM GUI THEO FILE DINH KEM.
CẢM ƠN.
Với dữ liệu kiểu này có khi phải dùng vba xây dựng hàm tự tạo mới ok:
Không hiểu dữ liệu này bạn lấy từ đâu ra, hay là trích xuất từ chương trình nào !!
 
Upvote 0
dear các anh chị,
mình có vấn đề này cần anh chị nào giúp với. Vd cells(1,1) co giá trị A-B-B-A-S-D, sau khi xử lý dữ liệu cells(1,1) có giá trị A-B-S-D. EM GUI THEO FILE DINH KEM.
CẢM ƠN.
Dùng hàm sau của Thầy Tuấn.
Mã:
Function StrUnique(Chuoi As String, LoaiDau As String) As String
  Dim i As Long, Temp
  On Error Resume Next
  Chuoi = WorksheetFunction.Trim(Replace(Chuoi, LoaiDau, " "))
  Temp = Split(Chuoi, " ")
  With CreateObject("Scripting.Dictionary")
    For i = 0 To UBound(Temp)
      .Add Temp(i), ""
    Next i
    StrUnique = Join(.Keys, LoaiDau)
  End With
End Function
 

File đính kèm

  • LocDuyNhatTrongChuoi.xlsm
    16.7 KB · Đọc: 13
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom