Nhờ anh sealand sửa lại cái này giúp em tí

Liên hệ QC

tuan206791

Thành viên bị đình chỉ hoạt động
Thành viên bị đình chỉ hoạt động
Tham gia
29/4/08
Bài viết
95
Được thích
-2
Không hiểu sao cái macro anh tạo giúp mỗi khi xóa đề mục thì lại mất đi một ít dữ liệu. Phiền anh nhiều, có gì bỏ qua cho em nhé
Nếu bạn nào đọc bài này biết cách thì sửa giúp mình luôn càng tốt.
 
Lần chỉnh sửa cuối:
Hì, dữ liệu của bạn không thống nhất: khi thì là *.mp3 khi lại là *.MP3.
Bạn sửa code lại 1 chút là được, bảo đảm đủ danh sách
Code cũ:
Mã:
Sub XoaDM()
Dim Cl As Range, Cl1 As Range
Set Cl1 = Sheet1.[a1]
Sheet1.Columns(1).Clear
For Each Cl In Range(Sheet2.[a1], Sheet2.[a65536].End(3))
I[U]f InStr(1, Cl, ".mp3") > 0 Then[/U]
Cl1.Value = Cl.Value
Set Cl1 = Cl1.Offset(1)
End If
Next
End Sub
Sửa thành:

Mã:
Sub XoaDM()
Dim Cl As Range, Cl1 As Range
Set Cl1 = Sheet1.[a1]
Sheet1.Columns(1).Clear
For Each Cl In Range(Sheet2.[a1], Sheet2.[a65536].End(3))
If InStr(1, UCase(Cl), ".MP3") > 0 Then
Cl1.Value = Cl.Value
Set Cl1 = Cl1.Offset(1)
End If
Next
End Sub
 

File đính kèm

Upvote 0
Hì, dữ liệu của bạn không thống nhất: khi thì là *.mp3 khi lại là *.MP3.
Bạn sửa code lại 1 chút là được, bảo đảm đủ danh sách
Code cũ:
Mã:
Sub XoaDM()
Dim Cl As Range, Cl1 As Range
Set Cl1 = Sheet1.[a1]
Sheet1.Columns(1).Clear
For Each Cl In Range(Sheet2.[a1], Sheet2.[a65536].End(3))
I[U]f InStr(1, Cl, ".mp3") > 0 Then[/U]
Cl1.Value = Cl.Value
Set Cl1 = Cl1.Offset(1)
End If
Next
End Sub
Sửa thành:

Mã:
Sub XoaDM()
Dim Cl As Range, Cl1 As Range
Set Cl1 = Sheet1.[a1]
Sheet1.Columns(1).Clear
For Each Cl In Range(Sheet2.[a1], Sheet2.[a65536].End(3))
If InStr(1, UCase(Cl), ".MP3") > 0 Then
Cl1.Value = Cl.Value
Set Cl1 = Cl1.Offset(1)
End If
Next
End Sub
Vẫn chưa được anh ạ, em cũng nhìn ra lỗi chỗ nào nhưng không biết chỉnh sửa, còn nếu sửa trong dữ liệu thì em sợ phức tạp. Anh xem lại trong file đính kèm này để sửa giúp em nhé
 
Upvote 0
Bạn chép đè dòng này vào dòng sửa bài trwớc nha, đúng là còn thiếu các bài dạng *.wma. Lưu ý bài cũ không có các file đuôi dạng này.

Dòng cũ (Dòng số 7):

If InStr(1, UCase(Cl), ".MP3") > 0 Then

Thay bằng:

If InStr(1, ".MP3;.WMA", UCase(Right(Cl, 4))) > 0 Then

Mình không rành âm thanh gồm có những dạng đuôi (Mở rộng) nào , vậy mình viết lại như trên để bạn có thể thêm vào. Ví dụ, dang file *.XXX bạn thêm như sau:

If InStr(1, ".MP3;.WMA;.XXX", UCase(Right(Cl, 4))) > 0 Then
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn chép đè dòng này vào dòng sửa bài trwớc nha, đúng là còn thiếu các bài dạng *.wma. Lưu ý bài cũ không có các file đuôi dạng này.

Dòng cũ (Dòng số 7):

If InStr(1, UCase(Cl), ".MP3") > 0 Then

Thay bằng:

If InStr(1, ".MP3;.WMA", UCase(Right(Cl, 4))) > 0 Then

Mình không rành âm thanh gồm có những dạng đuôi (Mở rộng) nào , vậy mình viết lại như trên để bạn có thể thêm vào. Ví dụ, dang file *.XXX bạn thêm như sau:

If InStr(1, ".MP3;.WMA;.XXX", UCase(Right(Cl, 4))) > 0 Then
Em làm rồi nó chạy được mà lại có 1 ô trống trên đầu anh ạ
 
Upvote 0
Mình không để ý đảo chuỗi nó lại lấy cả ô trống, bạn thay đoạn

If InStr(1, ".MP3;.WMA", UCase(Right(Cl, 4))) > 0 Then

Bằng

If InStr(1, ".MP3;.WMA", UCase(Right(Cl, 4))) > 0 And Trim(Cl) <> "" Then
 
Upvote 0
được rồi anh ạ, có gì em tự dò, chứ có mỗi vậy mà cứ phiền anh từ hôm qua tới giờ em cũng ngại. Nói chung là ổn rồi. Cám ơn anh nhiều nhé
 
Lần chỉnh sửa cuối:
Upvote 0
Đúng, phải tự mày mò mới nhanh nắm bắt được nhưng không ngại phiền chi, nếu mình bận chắc chắn có anh em khác giúp bạn.
 
Upvote 0
Đúng, phải tự mày mò mới nhanh nắm bắt được nhưng không ngại phiền chi, nếu mình bận chắc chắn có anh em khác giúp bạn.
Để nó có thể chạy được với tất cả các định dạng thì phải thêm gì vậy anh, em có thêm thử .*' nhưng không được. Anh chỉ em với
 
Upvote 0
Web KT

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

Back
Top Bottom