Xử lí chuỗi kí tự

Liên hệ QC

tranhoainam9701

Thành viên chính thức
Tham gia
15/11/11
Bài viết
67
Được thích
5
Kính chào các Anh / Chị trong diễn đàn!
Mong Anh .. chị viết giùm 02 cho hai tập tin đính kèm phụ Vba lí kí tự trong chuỗi xử lý ra chỉ để ghi lại kí tự duy nhất có trong chuỗi và liệt kê chuỗi. Nội dung mong muốn viết Sub write trong file đính kèm.
Kính mong Anh / Chị giúp đỡ cho.
Trân trọng/
 

File đính kèm

  • Loại trừ bớt kí tự lặp lại trong chuỗi và liệt kê tính tổng.xlsm
    15 KB · Đọc: 9
  • gửi lại code anh Hương TCKT code giúp.xlsm
    411.3 KB · Đọc: 5
Kính chào các Anh / Chị trong diễn đàn!
Mong Anh .. chị viết giùm 02 cho hai tập tin đính kèm phụ Vba lí kí tự trong chuỗi xử lý ra chỉ để ghi lại kí tự duy nhất có trong chuỗi và liệt kê chuỗi. Nội dung mong muốn viết Sub write trong file đính kèm.
Kính mong Anh / Chị giúp đỡ cho.
Trân trọng/
Code tịnh tiến gì đó có viết cho bạn nhưng không phản hồi nên lần này không đề cập nữa.
Code tách chuỗi thử chạy code dưới:
Mã:
Sub nt()
Dim sArr(), dArr(), I As Long, J As Long, K As Long, item As String, Tmp
With Sheets("Sheet2")
    sArr = .Range("A2:A8").Value
    ReDim dArr(1 To UBound(sArr, 1), 1 To 2)
    For I = 1 To UBound(sArr)
        K = 0
        Tmp = Split(sArr(I, 1), ",")
        If UBound(Tmp) >= 0 Then
            For J = 0 To UBound(Tmp)
                item = "|" & Tmp(J) & "|"
                If InStr(dArr(I, 1), item) = 0 Then
                    K = K + 1
                    dArr(I, 1) = IIf(dArr(I, 1) = "", item, dArr(I, 1) & "," & item)
                    dArr(I, 2) = K
                End If
            Next
        dArr(I, 1) = VBA.Replace(dArr(I, 1), "|", "")
        End If
    Next
    .Range("B2:C8") = dArr
End With
End Sub
 
Góp thêm code tịnh tiến gì đó
Mã:
Sub XYZ()
Dim arr(), Res(1 To 9, 1 To 10), j&
With Sheet1
    n = 1
    Do Until n = 10
    arr = .Range("E2:N2").Value
        For J = 1 To UBound(arr, 2)
            Res(n, J) = (arr(1, J) + n) Mod 10
        Next
    n = n + 1
    Loop
    .Range("E2").Resize(9, 10).Value = Res
End With
End Sub
 
Lần chỉnh sửa cuối:
Code tịnh tiến gì đó có viết cho bạn nhưng không phản hồi nên lần này không đề cập nữa.
Code tách chuỗi thử chạy code dưới:
Mã:
Sub nt()
Dim sArr(), dArr(), I As Long, J As Long, K As Long, item As String, Tmp
With Sheets("Sheet2")
    sArr = .Range("A2:A8").Value
    ReDim dArr(1 To UBound(sArr, 1), 1 To 2)
    For I = 1 To UBound(sArr)
        K = 0
        Tmp = Split(sArr(I, 1), ",")
        If UBound(Tmp) >= 0 Then
            For J = 0 To UBound(Tmp)
                item = "|" & Tmp(J) & "|"
                If InStr(dArr(I, 1), item) = 0 Then
                    K = K + 1
                    dArr(I, 1) = IIf(dArr(I, 1) = "", item, dArr(I, 1) & "," & item)
                    dArr(I, 2) = K
                End If
            Next
        dArr(I, 1) = VBA.Replace(dArr(I, 1), "|", "")
        End If
    Next
    .Range("B2:C8") = dArr
End With
End Sub
Thực lòng xin cám ơn rất nhiều tới sự quan tâm giúp đỡ của Anh, Kính chúc anh có ngày lễ 8.3 bên người thân vui vẻ và hạnh phúc!
Trân trọng/
 
Kính chào các Anh / Chị trong diễn đàn!
Mong Anh .. chị viết giùm 02 cho hai tập tin đính kèm phụ Vba lí kí tự trong chuỗi xử lý ra chỉ để ghi lại kí tự duy nhất có trong chuỗi và liệt kê chuỗi. Nội dung mong muốn viết Sub write trong file đính kèm.
Kính mong Anh / Chị giúp đỡ cho.
Trân trọng/
Đã trót Tây thì Tây cho trọn chảnh. Tây này chưa đủ đô.

Câu ấy không thể dùng chủ từ hiểu ngầm được. Bắt buộc phải hiểu chủ từ là "Nội dung...". Và như thế, động từ phải ở dạng past participle: written.
 
Đã trót Tây thì Tây cho trọn chảnh. Tây này chưa đủ đô.

Câu ấy không thể dùng chủ từ hiểu ngầm được. Bắt buộc phải hiểu chủ từ là "Nội dung...". Và như thế, động từ phải ở dạng past participle: written.
Hihi tại khi em viết bài nó nhảy từ viết sang tiếng Anh, sorry anh ak. Em có một bài muốn Nhờ anh code giùm em được không ak?.
Bài về tô màu liên tục và đếm màu đã được tô tính từ bên phải qua trái ak. Anh giúp em nhé! Bài này Anh Hương TCKT viết cho em mà do em diễn đạt kiểu Anh với Việt nên là mãi làm em rối quá ak
 

File đính kèm

  • gửi lại code anh Hương TCKT code giúp (code mong sửa lại).xlsm
    421.1 KB · Đọc: 3
Code tịnh tiến gì đó có viết cho bạn nhưng không phản hồi nên lần này không đề cập nữa.
Code tách chuỗi thử chạy code dưới:
Mã:
Sub nt()
Dim sArr(), dArr(), I As Long, J As Long, K As Long, item As String, Tmp
With Sheets("Sheet2")
    sArr = .Range("A2:A8").Value
    ReDim dArr(1 To UBound(sArr, 1), 1 To 2)
    For I = 1 To UBound(sArr)
        K = 0
        Tmp = Split(sArr(I, 1), ",")
        If UBound(Tmp) >= 0 Then
            For J = 0 To UBound(Tmp)
                item = "|" & Tmp(J) & "|"
                If InStr(dArr(I, 1), item) = 0 Then
                    K = K + 1
                    dArr(I, 1) = IIf(dArr(I, 1) = "", item, dArr(I, 1) & "," & item)
                    dArr(I, 2) = K
                End If
            Next
        dArr(I, 1) = VBA.Replace(dArr(I, 1), "|", "")
        End If
    Next
    .Range("B2:C8") = dArr
End With
End Sub
Cám ơn Anh rất nhiều ak!
 
. . . . ....................
Những câu dùng rất nhiều trong việc ăn nói hằng ngày, thường được người ta vắn tắt đi, chỉ còn lại một hay hai từ chính. Ngôn ngữ nào cũng vậy. Ví dụ "cám ơn anh" tắt lại thành "cám ơn" (hiểu ngầm túc từ), "Many thanks to you" tắt thành "Thanks" hay "Many thanks".

Tương tự vậy, "I'm sorry" được người ta dùng trong tình trạng vắn tắt là "sorry". Tuy nhiên, đây là một câu (sentence) trọn vẹn cho nên nó phải có chấm câu. Tối thiểu là một dấu phẩy. "Sorry, my bad", "Sorry, I didn't mean that".

Khi không có chấm câu thì "sorry" là một tĩnh tự dùng diễn tả danh tự đi ngay sau nó - tức là cái được dẫn trích trong bài #7. Với nhiệm vụ này, sorry có nghĩa là "khốn nạn", "đáng thương". Đại khái là cái ấy rất xơ xác, thảm thương.
Từ đó quý vị có thể tính ra mệnh đề "Sorry bạn", hay "Sorry anh" được hiểu là gì.
 
Lần chỉnh sửa cuối:
Bạn nên viết chữ "ạ" cho đúng chính tả và không nên chèn tiếng Tây trong bài viết thì sẽ nhận được nhiều sự trợ giúp hơn.
Dạ anh!
Góp thêm code tịnh tiến gì đó
Mã:
Sub XYZ()
Dim arr(), Res(1 To 9, 1 To 10), j&
With Sheet1
    n = 1
    Do Until n = 10
    arr = .Range("E2:N2").Value
        For J = 1 To UBound(arr, 2)
            Res(n, J) = (arr(1, J) + n) Mod 10
        Next
    n = n + 1
    Loop
    .Range("E2").Resize(9, 10).Value = Res
End With
End Sub
Cám ơn em nhiều nhé!
 
Web KT
Back
Top Bottom