Theo yêu cầu của bạn, code cho loc dữ liệu Sheets("SONG"):Em có 1 sheets dữ liệu, em muốn lọc và tách dữ liệu từ sheet này vào các sheets đã có mẫu sẵn. mong được mọi người giúp đỡ ạ.
Dim a(), b(), i&, k%, LR, j%
With Sheets("DL")
a = .Range("B2", .Range("B65000").End(3)).Resize(, 11).Value
LR = UBound(a)
End With
ReDim b(1 To LR, 1 To 11)
With Sheets("DL")
For i = 1 To LR
If a(i, 3) <> Empty And a(i, 11) = "s" & ChrW(7889) & "ng" Then
k = k + 1: b(k, 1) = k
b(k, 2) = a(i, 1): b(k, 3) = a(i, 2): b(k, 4) = a(i, 3): b(k, 10) = a(i, 9)
b(k, 11) = a(i, 10)
End If
Next i
Sheets("SONG").Range("A12:K140").ClearContents
If k Then
With Sheets("SONG")
.Range("A12").Resize(k, 11) = b
.Rows(k + 12 & ":140").Hidden = True
End With
End If
End With
nếu được bác làm trên file cả các sheets còn lại, rồi cho em xin đc không ạ. em tưởng đơn giản, chứ thế này chắc em không vận dụng được híc. cảm ơn bác nhiều ạTheo yêu cầu của bạn, code cho loc dữ liệu Sheets("SONG"):
PHP:Dim a(), b(), i&, k%, LR, j% With Sheets("DL") a = .Range("B2", .Range("B65000").End(3)).Resize(, 11).Value LR = UBound(a) End With ReDim b(1 To LR, 1 To 11) With Sheets("DL") For i = 1 To LR If a(i, 3) <> Empty And a(i, 11) = "s" & ChrW(7889) & "ng" Then k = k + 1: b(k, 1) = k b(k, 2) = a(i, 1): b(k, 3) = a(i, 2): b(k, 4) = a(i, 3): b(k, 10) = a(i, 9) b(k, 11) = a(i, 10) End If Next i Sheets("SONG").Range("A12:K140").ClearContents If k Then With Sheets("SONG") .Range("A12").Resize(k, 11) = b .Rows(k + 12 & ":140").Hidden = True End With End If End With
Bạn chưa biết sử dụng vba à. Copy đoạn code trên vào 1 module. Sau đó chạy module đó là đượcGiúp em với ạ
mình làm rồi nhưng không đượcBạn chưa biết sử dụng vba à. Copy đoạn code trên vào 1 module. Sau đó chạy module đó là được
Thử copy sub này chay coimình làm rồi nhưng không được
Bài đã được tự động gộp:
khi chạy nó không hiện tên module , bảng module trống không
Sub ABC ()
Dim a(), b(), i&, k%, LR, j%
With Sheets("DL")
a = .Range("B2", .Range("B65000").End(3)).Resize(, 11).Value
LR = UBound(a)
End With
ReDim b(1 To LR, 1 To 11)
With Sheets("DL")
For i = 1 To LR
If a(i, 3) <> Empty And a(i, 11) = "s" & ChrW(7889) & "ng" Then
k = k + 1: b(k, 1) = k
b(k, 2) = a(i, 1): b(k, 3) = a(i, 2): b(k, 4) = a(i, 3): b(k, 10) = a(i, 9)
b(k, 11) = a(i, 10)
End If
Next i
Sheets("SONG").Range("A12:K140").ClearContents
If k Then
With Sheets("SONG")
.Range("A12").Resize(k, 11) = b
.Rows(k + 12 & ":140").Hidden = True
End With
End If
End With
End sub
Giúp em với ạ
Em mới quen VBA nên không hiểu lắm, nên lúc đầu chưa biết là tạo nút lệnh để nhập code, em cứ đi tạo module nên nó không chạy.Bạn đang muốn nhờ ai thế. Nhờ thớt hay 1 trong những người trong này vậy
Thử cách khác tách sheet 1 lần.Em có 1 sheets dữ liệu, em muốn lọc và tách dữ liệu từ sheet này vào các sheets đã có mẫu sẵn. mong được mọi người giúp đỡ ạ.
dạ cảm ơn bác ạ, mấy hôm rồi làm được rồi nên em lại không vào lại. em xin file bác để học hỏi thêm. cảm ơn tất cả các bác giúp đỡ ạThử cách khác tách sheet 1 lần.
Nếu sửa lại các từ viết tắt và gửi file đính kèm thì sẽ có thành viên giúp bạn.e cũng muốn tách theo tên khách hàng mà làm theo mãi k được, ai giúp e vs ạ
em có file đính kèm đó ạ, ai làm mẫu giúp e được khôngNếu sửa lại các từ viết tắt và gửi file đính kèm thì sẽ có thành viên giúp bạn.
Nước đổ lá mônNếu sửa lại các từ viết tắt và gửi file đính kèm thì sẽ có thành viên giúp bạn.
Bạn chưa sửa các từ viết tắt "e, đc, vs, k"e có file đính kèm đó ạ, ai làm mẫu giúp e đc k
Trong file của bạn đâu là dữ liệu gốc, đâu là kết quả mong muốn nhỉ?em có file đính kèm đó ạ, ai làm mẫu giúp e được không
dữ liệu mình nhập 1 số hàng làm mẫu, còn kết quả là mình muốn tách thành nhiều file con mỗi file là 1 khách hàng khác nhauBạn chưa sửa các từ viết tắt "e, đc, vs, k"
Bài đã được tự động gộp:
Trong file của bạn đâu là dữ liệu gốc, đâu là kết quả mong muốn nhỉ?
Chủ đề của bài này là: "Giúp em tách dữ liệu thành nhiều sheets theo điều kiện".dữ liệu mình nhập 1 số hàng làm mẫu, còn kết quả là mình muốn tách thành nhiều file con mỗi file là 1 khách hàng khác nhau