Nguyễn Thị Tố Loan
Nguyễn Thị Tố Loan
Thảo luận 2 thảo luận
Vỗ tay 0 vỗ tay
Lượt xem 156 lượt xem

sao mình bấm vào ô bỏ trùng nhưng nó không có lọc và cũng không có thông

sao mình bấm vào ô bỏ trùng nhưng nó không có lọc và cũng không có thông báo nào, đoạn code nó chạy như này bạn ạ

Sub Macro2()

'

' Macro2 Macro

'


'

    Range("A1:A14").Select

    ActiveSheet.Range("$A$1:$A$12").RemoveDuplicates Columns:=1, Header:=xlYes

    Range("C3").Select

    ActiveSheet.Shapes.AddShape(msoShapeRectangle, 144.75, 15, 66.75, 28.5).Select

    Selection.ShapeRange(1).TextFrame2.TextRange.Characters.Text = "b? trùng"

    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 8). _

        ParagraphFormat

        .FirstLineIndent = 0

        .Alignment = msoAlignLeft

    End With

    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(1, 2).Font

        .NameComplexScript = "+mn-cs"

        .NameFarEast = "+mn-ea"

        .Fill.Visible = msoTrue

        .Fill.ForeColor.ObjectThemeColor = msoThemeColorLight1

        .Fill.ForeColor.TintAndShade = 0

        .Fill.ForeColor.Brightness = 0

        .Fill.Transparency = 0

        .Fill.Solid

        .Size = 11

        .Name = "+mn-lt"

    End With

    With Selection.ShapeRange(1).TextFrame2.TextRange.Characters(3, 6).Font

        .BaselineOffset = 0

        .NameComplexScript = "+mn-cs"

        .NameFarEast = "+mn-ea"

        .Fill.Visible = msoTrue

        .Fill.ForeColor.ObjectThemeColor = msoThemeColorLight1

        .Fill.ForeColor.TintAndShade = 0

        .Fill.ForeColor.Brightness = 0

        .Fill.Transparency = 0

        .Fill.Solid

        .Size = 11

        .Name = "+mn-lt"

    End With

    Range("F5").Select

    ActiveSheet.Shapes.Range(Array("Rectangle 1")).Select

    Selection.OnAction = "Macro2"

    Range("A3").Select

    Selection.Copy

    Range("A9").Select

    ActiveSheet.Paste

    Range("A6").Select

    Application.CutCopyMode = False

    Selection.Copy

    Range("A10").Select

    ActiveSheet.Paste

    Range("C7").Select

    ActiveSheet.Shapes.Range(Array("Rectangle 1")).Select

    Range("A10").Select

    Application.CutCopyMode = False

End Sub

Thảo luận 2 câu trả lời
Lượt xem 156 lượt xem
Vỗ tay vỗ tay
Nguyễn Thị Tố Loan 09:10 - Oct 07, 2020

Có 2 vấn đề:

1. Khi record macro bạn quên chưa Stop recording khi xong thao tác, dẫn tới code thừa nhiều. Code đúng cho thao tác lọc trùng chỉ có 2 dòng đầu

     Range("A1:A14").Select

    ActiveSheet.Range("$A$1:$A$12").RemoveDuplicates Columns:=1, Header:=xlYes

2. Với 2 dòng này, bạn có thể hiểu code lọc trùng về bản chất là:

Range("vùng cần lọc trùng").RemoveDuplicates Columns:=1, Header:=xlYes

Trong đó:

Columns:=1 tức là cột thứ 1 trong vùng cần lọc trùng.

Header:=xlYes tức là vùng này có bao gồm tên tiêu đề

---

Bạn có thể thử áp dụng code trên xem sao nhé.

Vỗ tay vỗ tay
Nguyễn Thị Tố Loan 09:10 - Oct 07, 2020
Đúng là mình chưa có stop recording khi xong thao tác, mình đã làm lại => kết quả ok, Cảm ơn bạn nhiều nhiều
Vỗ tay vỗ tay
Câu hỏi liên quan
© 2020 - Bản quyền của Công Ty Cổ Phần Công Nghệ Giáo Dục Gitiho Việt Nam
Giấy chứng nhận Đăng ký doanh nghiệp số: 0109077145, cấp bởi Sở Kế hoạch và Đầu tư TP. Hà Nội
Giấy phép mạng xã hội số: 588, cấp bởi Bộ Thông tin và Truyền thông