Hướng dẫn Trích lọc dữ liệu

Thảo luận trong 'Ứng dụng Excel' bắt đầu bởi binthanh, 29 Tháng sáu 2012.

5,254 lượt xem

  1. binthanh

    binthanh Thành viên hoạt động

    Bài viết:
    18
    Đã được thích:
    0
    Nơi ở:
    ninh thuan
    Chào các anh chi ! Hàng tháng tôi phải lập kế hoạch thu chi cụ thể (Sheet KH_T7) Và hàng ngày tôi phải in ra KH từng ngày để trình xếp (Sheet KHngay). Tôi muốn nhờ các anh chị hướng dẫn giúp tôi viết đoạn macro hoặc công thứcđể khi tôi gõ bất kỳ ngày nào trong tháng ở Sheet KHngay thì chương trình tự động trích lọc dữ liệu của ngày đó ở sheet KH_T7 sang Sheet KHngay.( Hiện nay tôi đang làm thủ công sửa từng ngày theo công thức)
     

    Các file đính kèm:

    #1
  2. SA_DQ

    SA_DQ Thành viên thân thiết

    Bài viết:
    426
    Đã được thích:
    34
    Nơi ở:
    HCM city
    Ðề: Trước tiên xin lỗi bạn vì sự chậm trễ!

    Do tưởng không Down được file của bạn, khì, khì,. . . . !

    Bạn xem trong file đính kèm

    (Chọn ngày ở [D3])
     

    Các file đính kèm:

    #2
  3. chuhai91

    chuhai91 Thành viên sơ cấp

    Bài viết:
    1
    Đã được thích:
    0
    Nơi ở:
    hà nội
    Ðề: Hướng dẫn Trích lọc dữ liệu

    Anh chị có thể giải thích rõ giúp em cách làm trích lọc bảng dưới được không a?

    Kiểu File: rar gpeFilter.rar (21.8 KB, 16 lần xem)
     
    #3
  4. QDuc

    QDuc Thành viên thân thiết

    Bài viết:
    252
    Đã được thích:
    18
    Nơi ở:
    Biển khơi
    Ðề: Hướng dẫn Trích lọc dữ liệu

    Trong file có macro sự kiện gắn kết với ô [D3] của trang tính 'KHngay'
    Có nghĩa là khi ta chọn 1 trị nào đó trong hộp Validation tại đây, thì macro dựa trên trị ta chọn để lọc ra những số liệu cần thiết.
    Thực chất vấn đề là tạo ra biến kiểu ngày tháng (Dòng lệnh 1) dựa thêm trị trong 2 ô [E1] & [F1], ngoài ô liên kết [D3] nói trên

    Sau đó là áp dụng phương thức FIND() (tìm kiếm) trị này trong vùng các ô từ [H6:AL6] của trang tính chứa cơ sở dữ liệu (dòng lệnh có số 5), như dưới đây:

    Mã:
    Option Explicit
    [B]Private Sub Worksheet_Change(ByVal Target As Range)[/B]
     If Not Intersect(Target, [D3]) Is Nothing Then
        Dim Sh As Worksheet, Rng As Range, sRng As Range
        Dim Dat As Date
        
    1    Dat = DateSerial([f1].Value, [e1].Value, Target.Value)
        Set Sh = ThisWorkbook.Worksheets("KH_T7")
        Set Rng = Sh.Range(Sh.[h6], Sh.[h6].End(xlToRight))
        Rng.NumberFormat = "mm/dd/yyyy"
    5    Set sRng = Rng.Find(Format(Dat, "mm/dd/yyyy"), , xlValues, xlWhole)
        If sRng Is Nothing Then
            MsgBox "Nothing"
        Else
            [a8].Resize(190, 4).Clear
    10        Sh.[a8].Resize(99, 2).Copy Destination:=[a8]
            [c8].Resize(99, 2).Value = sRng.Offset(2, -1).Resize(99, 2).Value
            With [d190].End(xlUp).Offset(-1)
                [B200].Resize(5).Copy Destination:=.Offset(, -2)
                [D204].Resize(2, 2).Copy Destination:=.Offset(4)
    15            .Resize(2).Font.Bold = True
            End With
        End If
        Rng.NumberFormat = "DD"
     End If
    [B]End Sub[/B]
    





    Khi tìm thấy thì chép dữ liệu tương ứng sang trang tính cần thiết (các dòng lệnh từ 10-15)
     
    #4

Chia sẻ trang này