Dùng VBA xóa các dữ liệu trong vùng mà có điều kiện

Liên hệ QC

Uyennamph

Thành viên mới
Tham gia
31/5/20
Bài viết
21
Được thích
0
Em xin nhờ Anh Chị nào biết giúp em với ạ. Em chỉ muốn giữ lại vùng dữ liệu đã tô màu và muốn xóa vùng dữ liệu mà không được tô màu. Anh Chị nào biết dùng vba cho nhanh thì viết giúp em với ạ, em xin chân thành cảm ơn ạ
 

File đính kèm

  • Book1.xlsx
    9.1 KB · Đọc: 12
Em xin nhờ Anh Chị nào biết giúp em với ạ. Em chỉ muốn giữ lại vùng dữ liệu đã tô màu và muốn xóa vùng dữ liệu mà không được tô màu. Anh Chị nào biết dùng vba cho nhanh thì viết giúp em với ạ, em xin chân thành cảm ơn ạ
Bạn thử.............
 

File đính kèm

  • Book1 (14).xlsm
    15.6 KB · Đọc: 11
Upvote 0
Lấy màu chuẩn là ô A1? Coi chừng không phải.
So với 1 ô "ba khơi" cho chắc.
PHP:
Sub xoa_o_khong_mau()
Dim x As Long, Rng As Range, Cll As Range
With Sheet1
    Set Rng = .Range("A1:F3")  'Khai bao vung muon xoa'
    x = .Range("XFD1").Interior.ColorIndex  'Mau o ba khoi: Khong to mau'
    For Each Cll In Rng
        If Cll.Interior.ColorIndex = x Then Cll.ClearContents
    Next Cll
End With
End Sub
 
Upvote 0
Lấy màu chuẩn là ô A1? Coi chừng không phải.
So với 1 ô "ba khơi" cho chắc.
PHP:
Sub xoa_o_khong_mau()
Dim x As Long, Rng As Range, Cll As Range
With Sheet1
    Set Rng = .Range("A1:F3")  'Khai bao vung muon xoa'
    x = .Range("XFD1").Interior.ColorIndex  'Mau o ba khoi: Khong to mau'
    For Each Cll In Rng
        If Cll.Interior.ColorIndex = x Then Cll.ClearContents
    Next Cll
End With
End Sub
Lúc đầu em cũng định như vậy, nhưng thấy có mỗi một mầu nên em hơi ẩu anh ạ.
 
Upvote 0
Lúc đầu em cũng định như vậy, nhưng thấy có mỗi một mầu nên em hơi ẩu anh ạ.
Em cảm ơn Hoàng Tuấn 868 nhé. Đúng như em kỳ vọng rồi ạ
Bài đã được tự động gộp:

Lấy màu chuẩn là ô A1? Coi chừng không phải.
So với 1 ô "ba khơi" cho chắc.
PHP:
Sub xoa_o_khong_mau()
Dim x As Long, Rng As Range, Cll As Range
With Sheet1
    Set Rng = .Range("A1:F3")  'Khai bao vung muon xoa'
    x = .Range("XFD1").Interior.ColorIndex  'Mau o ba khoi: Khong to mau'
    For Each Cll In Rng
        If Cll.Interior.ColorIndex = x Then Cll.ClearContents
    Next Cll
End With
End Sub
Em cảm ơn Ba Tê nhé.
 
Upvote 0
Lúc đầu em cũng định như vậy, nhưng thấy có mỗi một mầu nên em hơi ẩu anh ạ.
Anh ơi, thế nếu xóa vùng trắng thì viết code như thế nào ạ?
Bài đã được tự động gộp:

Lấy màu chuẩn là ô A1? Coi chừng không phải.
So với 1 ô "ba khơi" cho chắc.
PHP:
Sub xoa_o_khong_mau()
Dim x As Long, Rng As Range, Cll As Range
With Sheet1
    Set Rng = .Range("A1:F3")  'Khai bao vung muon xoa'
    x = .Range("XFD1").Interior.ColorIndex  'Mau o ba khoi: Khong to mau'
    For Each Cll In Rng
        If Cll.Interior.ColorIndex = x Then Cll.ClearContents
    Next Cll
End With
End Sub
Anh ơi, thế nếu xóa vùng trắng thì viết code như thế nào ạ? Anh trợ giúp em với ạ
 
Upvote 0
Em xin nhờ Anh Chị nào biết giúp em với ạ. Em chỉ muốn giữ lại vùng dữ liệu đã tô màu và muốn xóa vùng dữ liệu mà không được tô màu. Anh Chị nào biết dùng vba cho nhanh thì viết giúp em với ạ, em xin chân thành cảm ơn ạ
Thử code sau.
Mã:
Sub Xoa()
    Dim Cell As Range
    For Each Cell In Sheet1.Range("A1").CurrentRegion
        If Cell.Interior.Pattern = xlNone Then
            Cell.ClearContents
        End If
    Next
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Lấy màu chuẩn là ô A1? Coi chừng không phải.
So với 1 ô "ba khơi" cho chắc.
PHP:
Sub xoa_o_khong_mau()
Dim x As Long, Rng As Range, Cll As Range
With Sheet1
    Set Rng = .Range("A1:F3")  'Khai bao vung muon xoa'
    x = .Range("XFD1").Interior.ColorIndex  'Mau o ba khoi: Khong to mau'
    For Each Cll In Rng
        If Cll.Interior.ColorIndex = x Then Cll.ClearContents
    Next Cll
End With
End Sub
Anh ơi, nếu làm ngược lại như cái anh phía trên ( xóa các vùng mà được tô màu ) thì phải viết code như thế nào ạ? mong Anh trợ giúp em với ạ
 

File đính kèm

  • Book1.xlsx
    9.1 KB · Đọc: 7
Upvote 0
Anh ơi, nếu làm ngược lại như cái anh phía trên ( xóa các vùng mà được tô màu ) thì phải viết code như thế nào ạ? mong Anh trợ giúp em với ạ
Thử code sau:
Xóa màu nó khó hơn là không màu, vì cách tô màu của mỗi người mỗi khác nên sử dụng RGB để xác định màu là chuẩn nhất.
Mã:
Sub XoaDL_ChoToMau()
Dim Cell As Range
    For Each Cell In Sheet1.Range("A1").CurrentRegion
        If Cell.Interior.Color = RGB(255, 255, 0) Then
            Cell.ClearContents
        End If
    Next
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Thử code sau:
Xóa màu nó khó hơn là không màu, vì cách tô màu của mỗi người mỗi khác nên sử dụng RGB để xác định màu là chuẩn nhất.
Mã:
Sub XoaDL_ChoToMau()
Dim Cell As Range
    For Each Cell In Sheet1.Range("A1").CurrentRegion
        If Cell.Interior.Color = RGB(255, 255, 0) Then
            Cell.ClearContents
        End If
    Next
End Sub
xin cảm ơn Be_09 nhiều ạ
 
Upvote 0
Web KT

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

Back
Top Bottom