Tách dữ liệu từ cột tách tương úng vào từng ô trong vùng nhận (1 người xem)

Liên hệ QC

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

nqdn2010

Optimal Сasual Dating - Actual Girls
Tham gia
22/2/12
Bài viết
267
Được thích
15
Giới tính
Nam
Nghề nghiệp
Health
Em có file đính kèm, mục đích tách dữ liệu từ cột tách sang vùng nhận tương ứng với các dữ liệu ở cột tách. Mong sự chỉ giáo của các thầy! Xin cám ơn!
 

File đính kèm

Ban dùng CT này tại D4:
Mã:
=CHOOSE(SUMPRODUCT((D$3=--MID($B4,ROW(INDIRECT("1:"&LEN($B4))),1))*1)+1,"x","")

Sau đó Fill xuống, Fill sang
 
Upvote 0
Để minh thử lại, tuy biến vào bài thấy ổn rồi!
Bạn cho mình hỏi thêm. Đối với 7 cột tách liên tục, tách ra 7 vùng liên tục thì làm sao hả bạn? Nếu dùng Code càng tốt
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Cám ơn bạn! Trước mắt rất hoàn hảo!
 
Upvote 0
Bác xem tạm cái code này coi thế nào//**/
Mã:
Option Explicit

Sub danh_dau()
Dim dich() As Variant
Dim nguon As Range, o As Range
Dim i, j, n, m, col As Long
    With Sheet1
        n = .Range("B4", Cells(.Rows.Count, 2).End(xlUp)).Rows.Count
        Set nguon = .Range("B4", Cells(.Rows.Count, 2).End(xlUp))
        col = .Range("D3", Range("D3").End(xlToRight)).Columns.Count
    End With
    
    ReDim dich(1 To n, 1 To col)
    
    For i = 1 To n
        For j = 1 To col
            dich(i, j) = "x"
        Next j
    Next i
    
    For Each o In nguon
        i = o.Row - 3
        If o.Value = "n" Then
            For m = 1 To col
                dich(i, m) = ""
            Next m
        Else
            For j = 1 To Len(o)
                If IsNumeric(Mid(nguon(i), j, 1)) Then
                    dich(i, CInt(Mid(nguon(i), j, 1))) = ""
                End If
            Next j
        End If
    Next o
    Range("D4").Resize(n, col).Value = dich
    Erase dich
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT

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

Back
Top Bottom