Giúp đỡ lọc dữ liệu khi nhập mã số khách hàng

Liên hệ QC

saobekhonglac

Thành viên mới
Tham gia
1/11/08
Bài viết
1,565
Được thích
1,454
Giới tính
Nam
Dear all.

Mình có file Excel có 3 sheet (Sheet Dữ liệu, Sheet Khách hàng, Sheet Bảng kê) ACE giúp mình 2 vấn đề sau:
1: Từ Sheet Bảng kê khi mình nhập MS KH tại Cell B8 thì chi tiết từ Sheet Dữ liệu sẽ được liệt kê tại Sheet Bảng kê từ Cell A15-->G35 giống như trong file (File là mình copy tay, mình muốn dùng Fillter hoặc code khi gõ MSKH vào thì tự động liệt kê bên dưới).
2: ACE tạo giúp mình Form in Bảng kê giống như Sheet Bảng kê (bấm nút Print thì tự động sẽ in hết những MSKH có trong Sheet Khách hàng (mỗi khách hàng là 1 bảng kê riêng).

Thanks all.
 

File đính kèm

Dear all.

Mình có file Excel có 3 sheet (Sheet Dữ liệu, Sheet Khách hàng, Sheet Bảng kê) ACE giúp mình 2 vấn đề sau:
1: Từ Sheet Bảng kê khi mình nhập MS KH tại Cell B8 thì chi tiết từ Sheet Dữ liệu sẽ được liệt kê tại Sheet Bảng kê từ Cell A15-->G35 giống như trong file (File là mình copy tay, mình muốn dùng Fillter hoặc code khi gõ MSKH vào thì tự động liệt kê bên dưới).
2: ACE tạo giúp mình Form in Bảng kê giống như Sheet Bảng kê (bấm nút Print thì tự động sẽ in hết những MSKH có trong Sheet Khách hàng (mỗi khách hàng là 1 bảng kê riêng).

Thanks all.

chỉ có 2 dòng thôi chứ?
Mã:
Sub BKCTPS()
Dim DL As Variant, BK(), i, j, k As Long
With Sheet3
    DL = .[A2].Resize(.[a10000].End(3).Row, 10).Value
End With
ReDim BK(1 To UBound(DL), 1 To 7)
For i = 1 To UBound(DL)
    If DL(i, 2) = [b8] Then
        k = k + 1
        BK(k, 1) = DL(i, 1)
        For j = 2 To 7
            BK(k, j) = DL(i, j + 3)
        Next
    End If
Next
[a15:g1000].ClearContents
[a15].Resize(k, 7) = BK
End Sub
 
Mình làm không được, bạn có thể làm và gửi file giúp mình được không,

Thanks.



chỉ có 2 dòng thôi chứ?
Mã:
Sub BKCTPS()
Dim DL As Variant, BK(), i, j, k As Long
With Sheet3
    DL = .[A2].Resize(.[a10000].End(3).Row, 10).Value
End With
ReDim BK(1 To UBound(DL), 1 To 7)
For i = 1 To UBound(DL)
    If DL(i, 2) = [b8] Then
        k = k + 1
        BK(k, 1) = DL(i, 1)
        For j = 2 To 7
            BK(k, j) = DL(i, j + 3)
        Next
    End If
Next
[a15:g1000].ClearContents
[a15].Resize(k, 7) = BK
End Sub
 

File đính kèm

Lần chỉnh sửa cuối:
Thanks 2 bạn, mình đã làm được rồi. sư huynh nào giúp em yêu cầu 2 với.
Bạn thử thêm sub sau
PHP:
Sub Inso()
With Sheets("Bangke")
    For Each clls In Sheets("Khách hàng").Range("A2:A4") ' Thay doi vung nay
        .[B8].Value = clls.Value
        With .PageSetup
            .PrintArea = .Parent.Range("A1:G22").Address ' thay doi vung nay
            .FitToPagesWide = 1
            .FitToPagesTall = 100
            .Parent.PrintOut 1
        End With
    Next
End With
End Sub
sheet bảng kê để tên ko dấu giống như trên nhé. Thực ra sheet khách hàng cũng vậy , sau có điều kiện nên đổi . Để tên ko dấu viết code đỡ báo lỗi
 
Web KT

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

Back
Top Bottom