[ Giúp đỡ ] Thêm code ẩn hàng trong sheet khi không có số liệu (1 người xem)

  • Thread starter Thread starter GTK-PM
  • Ngày gửi Ngày gửi
Liên hệ QC

Người dùng đang xem chủ đề này

GTK-PM

Thành viên thường trực
Tham gia
10/11/13
Bài viết
313
Được thích
15
Trước tiên mình xin cảm ơn BaTe vì đã viết cho mình cái Code VBA trong file này.Về nội dung code trong file đã OK !
Chỉ có 1 vấn đề mình đưa lên đây để nhờ mọi người giúp đỡ thêm, Mình muốn ở sheet BC_Ngày và BC_Hạng Mục khi bấm nút marco thì chỉ hiện những tên vật tư có số lượng nhập xuất tồn theo ngày, hay theo hạng mục.
1.jpg
 

File đính kèm

1./ Nên gộp 2 trang tính cùng kiểu vô "DanhMuc"

2./ Trong trang 'BC TongHop' có cả 4 loại báo cáo theo ngày, tuần, nữa tháng & tháng;
Vậy cho nên 'BC ngày' là nên dẹp

(Bạn xem file sẽ rõ hơn)
 
Lần chỉnh sửa cuối:
Upvote 0
1./ Nên gộp 2 trang tính cùng kiểu vô "DanhMuc"

2./ Trong trang 'BC TongHop' có cả 4 loại báo cáo theo ngày, tuần, nữa tháng & tháng;
Vậy cho nên 'BC ngày' là nên dẹp

(Bạn xem file sẽ rõ hơn)
Bạn ơi cho mình hỏi, trong BC_TongHop bạn có thể bỏ code xem tối đa 7 ngày không?
Vì mình nhập ngày đầu là 01/4/2016 là nó tự nhảy đển 06/07/2016 nên nhiều lúc mình muốn theo dõi số ngày xa hơn lại không đc
 
Upvote 0
Ở [D6] của trang này ta có thể chọn 1 trong 4 fương án; Chắc fải viết thêm cho bạn fương án 5 nữa quá!
 
Upvote 0
Nội dung code của ai đó...mình không thay đổi. Chỉ là thêm cái việc "Chỉ lấy những dòng có số lượng > 0" mà thôi.
Mình đã sửa được, bạn có thể cho mình thêm code ẩn hiện hàng khi có số lượng nhập xuất tồn không?
 
Lần chỉnh sửa cuối:
Upvote 0
Ở [D6] của trang này ta có thể chọn 1 trong 4 fương án; Chắc fải viết thêm cho bạn fương án 5 nữa quá!
Mỗi người có 1 cách xử lý khác nhau mà, mình vào để học hỏi, hoàn thiện bảng tính của mình đc tốt nhất thôi. Cảm ơn bạn đã comment !
 
Upvote 0
Thì đây, xin mời bạn thử xem!
Bạn ơi, xem giùm mình thống kê theo ngày ,không chạy !!!
Bạn giúp mình thêm thống kê số ngày bất kỳ ( là mình có thể thoái mái chọn lựa theo thời gian ) Hoặc để code như bên BC_Hạng mục, có thể chọn lựa thời gian không bị giới hạn. BC_TongHop chỉ khác BC_HangMuc là không cần theo điều kiện thống kê theo HạngMuc
 
Lần chỉnh sửa cuối:
Upvote 0
Bạn copy toàn bộ macro mới này đè lên toàn bộ macro sự kiện đang có trong trang đó là được:
PHP:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
 If Not Intersect(Target, [g7]) Is Nothing Then
    Dim Dat1 As Date, Dat2 As Date, J As Long, Rws As Long, W As Byte, Dm As Byte
    Dim Sh As Worksheet, WF As Object, Cls As Range
    Dim ShName As String
 
    ReDim dArr(1 To 99, 1 To 3)
    Dat2 = Target.Value
    Dat1 = Target.Offset(-1).Value
    Range("$AA$1:$AC$1").CurrentRegion.Delete
    [C12:H92].ClearContents
    Rows("12:99").Hidden = False
    For W = 1 To 2
        ShName = Choose(W, "Nhap", "Xuat", "GPE.COM")
        Set Sh = ThisWorkbook.Worksheets(ShName)
        Rws = Sh.[d9].CurrentRegion.Rows.Count
        Dim Arr()
        Arr() = Sh.[d11].Resize(Rws, 12 - W).Value
        For J = 1 To UBound(Arr())
            If Arr(J, 1) >= Dat1 And Arr(J, 1) <= Dat2 Then     '***'
                Dm = Dm + 1:                        dArr(Dm, 1) = Arr(J, 3)
                dArr(Dm, 2) = Arr(J, 2)
                dArr(Dm, 3) = Arr(J, 12 - W)
            End If
        Next J
    Next W
    Application.ScreenUpdating = False
    If Dm Then
        [aa1].Resize(Dm, 3).Value = dArr()
        Range("$AA$1:$AC$1").CurrentRegion.RemoveDuplicates Columns:=1, Header:=xlNo
        [Ab2].CurrentRegion.Copy Destination:=[c12]
        Set WF = Application.WorksheetFunction
        For Each Cls In Range([c12], [C99].End(xlUp))
            For W = 1 To 2
                ShName = Choose(W, "Nhap", "Xuat", "GPE.COM")
                Set Sh = ThisWorkbook.Worksheets(ShName)
                Rws = Sh.[d9].CurrentRegion.Rows.Count
                Sh.[AC2].Value = Cls.Value
                Cls.Offset(, 3 + W).Value = WF.DSum(Sh.[d9].Resize(Rws, 17), Sh.Cells(9, 17 - W), Sh.[AA1:AC2])
            Next W
        Next Cls
        Rows([C11].End(xlDown).Row + 1 & ":99").Hidden = True
    End If
    Application.ScreenUpdating = True
    
 End If
End Sub

Bây giờ sự kiện nhập vô [G7] sẽ làm macro chuyển mình!

Chúc thành công.
 
Lần chỉnh sửa cuối:
Upvote 0
Mỗi người có 1 cách xử lý khác nhau mà, mình vào để học hỏi, hoàn thiện bảng tính của mình đc tốt nhất thôi. Cảm ơn bạn đã comment !

Tôi thấy có thể gom 3 trong 1, thành 1 sheet TONGHOP
- Từ Ngày: Bắt buộc phải nhập
- Đến ngày: Nếu bỏ trống coi như = từ ngày
- Mã HM: Nếu bỏ trống coi như lấy tất tần tật.
- Từ dòng 1001 trở xuống là những dòng "kết thúc" tuỳ bạn.
Sheet BC Loai VT biểu mẫu có khác, không gom chung được.
--------------------------
File của bạn dính link với file QL cầu Đông Thịnh.xlsx
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Tôi thấy có thể gom 3 trong 1, thành 1 sheet TONGHOP
- Từ Ngày: Bắt buộc phải nhập
- Đến ngày: Nếu bỏ trống coi như = từ ngày
- Mã HM: Nếu bỏ trống coi như lấy tất tần tật.
- Từ dòng 1001 trở xuống là những dòng "kết thúc" tuỳ bạn.
Sheet BC Loai VT biểu mẫu có khác, không gom chung được.
--------------------------
File của bạn dính link với file QL cầu Đông Thịnh.xlsx

Cảm ơn bạn nhiều !!! -=.,,-=.,,-=.,,-=.,,-=.,, Nhờ mod đóng giúp topic, cảm ơn sự nhiệt tình của các bạn. Chúc mọi người mạnh khỏe !
 
Upvote 0
Web KT

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

Back
Top Bottom