em phải làm báo cáo tổng hợp năng suất thiết bị bóc xúc vận tải than, đất. (1 người xem)

  • Thread starter Thread starter quang285
  • Ngày gửi Ngày gửi
Liên hệ QC

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

Hiện số liệu ở cột Ghi chú (sản lượng) trùng với tổng sản lượng của 3 ca trong ngày đó (trong sheet DATA-T1 em đã thống kê sản lượng của từng ca và tổng sản lượng của ngày hôm đó) nhưng số cần so sánh là ĐM trong 1 ca hoạt động (nghĩa là chỉ ra sản lượng trong 1 ca rồi so sánh với ĐM).
- Em muốn chỉ rõ những số liệu đó thuộc ca nào, ngày nào? các xe trong cùng 1 ca VC cả đất và than, tổng số? xe có ca, ngày không hoạt động?
Bạn nên thể hiện í muốn bằng những số liệu cụ thể, vì dụ

Trong trang 'BCao' tại ô [f5] đang chứa 1.840,622 (số tròn) là sản lượng than của ngày 1/3/2011. Số liệu này đang ứng với [G1]=7;

Đối chiếu với trang tính 'DL01' tại dòng 651 là trùng với SL (sản lượng) ngày;
3 dòng tiếp theo cho biết SL này thuộc về ca 2 là 583 & ca 3 là 1.258 (số tròn)
Vậy bạn hãy cho biết ô [F5] trên 'BCao' sẽ thể hiện nội dung gì vô đó!
Cụ thể đi bạn, đỡ thời gian của chúng ta, trong khi ta đã có số liệu chứ không còn ở fần đường hướng nữa!
 
em xin cụ thể hơn 1 chút nhé

ô [F5] trên 'BCao' sẽ thể hiện nội dung : sản lượng của ca > ĐM (>100% so với ĐM)
VD: để chỉ ra những xe có các ca đạt năng suất > 100% so với ĐM thì số liệu báo cáo sẽ là:
ngày (03/1/2011) - ca (ca3) - chủng loại (HD 325 loại C) - Xe (HD 06) - Sản lượng (1.258)
Như vậy ô F5 ở đây là sản lượng vận tải than của ca3 ngày 03/1/2011 của xe HD 06 (do sản lượng trong ca 3 = 1.258 > 983)
 
Hiện tại ở ô [G1] ta có 7 fương án lựa chọn để xem số liệu BC (báo cáo) & chỉ có fương án cuối là ta xét đến trường hợp = & vượt định mức
Vậy iêu cầu của bạn:
ô [F5] trên 'BCao' sẽ thể hiện nội dung : sản lượng của ca > ĐM (>100% so với ĐM)
VD: để chỉ ra những xe có các ca đạt năng suất > 100% so với ĐM thì số liệu báo cáo sẽ là:
ngày (03/1/2011) - ca (ca3) - chủng loại (HD 325 loại C) - Xe (HD 06) - Sản lượng (1.258)
Như vậy ô F5 ở đây là sản lượng vận tải than của ca3 ngày 03/1/2011 của xe HD 06 (do sản lượng trong ca 3 = 1.258 > 983)

là chỉ ứng với trường hợp 7 này thôi chứ gì?

Các trường hợp còn lại ta ghi gì trên cột [F] này của BC đây?

Chờ í kiến của bạn.
 
Đấy là e chỉ ví dụ cụ thể đối với trường hợp thứ 7 thôi

Các trường hợp khác cũng tương tự: chỉ ra các xe theo chủng loại có các ca mà sản lượng vận tải than (đất) thỏa mãn 7 phương án trên, có nghĩa là cột F vẫn là sản lượng nhưng là sản lượng của 1 ca cụ thể (ca 1, ca 2 hoặc ca 3) chứ không phải là sản lượng của cả ngày hôm đó (như vậy có lẽ phải thêm 1 cột để chỉ tên ca đạt sản lượng thỏa mãn yêu cầu).
Làm phiền bác quá!
 
Bạn xem trong file tải lên này nha!
 

File đính kèm

Cảm ơn bác rất nhiều! em đã kiểm tra và đối chiếu kết quả đều đúng. Em nhờ bác thêm 1 chút:
- Bác có thể giúp em tách ra một cột chỉ số ca để kiểm tra xem ca nào trong tháng (quý, năm) ứng với 1 trong 7 trường hợp trên chiếm tỷ lệ cao nhất (thấp nhất);
- Đếm số ca thực tế vận chuyển than, đất, cả than và đất của từng xe theo chủng loại trong tháng (quý, năm)? để em tính tỷ lệ huy động thiết bị của các xe trong tháng (quý, năm).
 
Lần chỉnh sửa cuối:
Vậy đưa tải trọng xe hay ca tương ứng vô cột 'E' nha, nói đang vô nghĩa thế nào í!
 
Bác giúp em đưa sản lượng ra cột F, ca tương ứng ra cột E

Bác giúp em đưa sản lượng ra cột F, ca tương ứng ra cột E
 
Bạn copy toàn bộ cái ni vô bộ nhớ trung gian máy của bạn & sau đó. . .

PHP:
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
 Dim Sh As Worksheet, Sh0 As Worksheet, Cls As Range, Rng As Range, sRng As Range
 
 If Not Intersect(Target, [g1]) Is Nothing Then
    Dim MyAdd As String, Th As Byte
    Dim DMc As Double, GHD As Double, GHT As Double
 
    If [i1].Value = "T" Then Th = 1
    Set Sh0 = Sheets("GPE"):            [b5].CurrentRegion.Offset(1, 1).ClearContents
    For Each Cls In Sh0.Range(Sh0.[D4], Sh0.[d65500].End(xlUp))
        For Each Sh In ThisWorkbook.Worksheets
            If Left(Sh.Name, 2) = "DL" Then
                DMc = Cls.Offset(, 2 * CByte(Right(Sh.Name, 2)) + Th).Value
                GHD = DMc * Choose(Target.Value, 0, 0.5, 0.6, 0.7, 0.8, 0.9, 1)
                GHT = DMc * Choose(Target.Value, 0.5, 0.6, 0.7, 0.8, 0.9, 1, 9)
                Set Rng = Sh.Range(Sh.[c2], Sh.[c65500].End(xlUp))
                Set sRng = Rng.Find(Cls.Value, , xlValues, xlWhole)
                If Not sRng Is Nothing Then
                    MyAdd = sRng.Address
                    Do
                        DMc = sRng.Offset(, 2 + Th).Value
                        If DMc > 0 And sRng.Offset(, 1).Value <> "" Then
                            If GHD <= DMc And DMc < GHT Then
                                sRng.Interior.ColorIndex = 43
                                With [B9999].End(xlUp).Offset(1)
                                    .Value = sRng.Offset(, -2).Value
                                    .Offset(, 1).Resize(, 2).Value = Cls.Offset(, -1).Resize(, 2).Value
1                                    .Offset(, 3).Value = " C" & Right(sRng.Offset(, 1).Value, 1)
2                                    .Offset(, 4).Value = DMc
                                End With
                            End If
                        End If
                        Set sRng = Rng.FindNext(sRng)
                    Loop While Not sRng Is Nothing And sRng.Address <> MyAdd
                End If
            End If
        Next Sh
    Next Cls
 End If
End Sub
fải chuột vô tên trang tính 'BCao' chọn hàng cuối để hiện macro trước đây;

Tô chọn hết toàn bộ nó & bấm tổ hợp fím để dán những gì có trong bộ nhớ trung gian của bạn đè hết lên macro cũ.

Chú í: Thật ra mình chỉ thay đổi 2 dòng lệnh có mang số trong macro mà thôi.

Rất vui nếu bạn tìm hiểu thêm ngôn ngữ VBA để tự mình điều chỉnh fương cách quản lý số liệu cônghệ của mình sau này!
 
Lần chỉnh sửa cuối:
Em đã sửa và cho kết quả mỹ mãn, cảm ơn bác nhiều nhiều!

Em nhờ bác giúp thêm xem có cách nào đếm số ca thực tế vận chuyển đất, vận chuyển than của các xe trong tháng (quý, năm) ở cột K và L trong sheet CSDL?

Kết quả này chính là số liệu ở cột G mà em đã thống kê trong các sheet PXVT-T1, PXVT-T2, PXVT-T3 và PXVT-Q1 (hay các sheet T01T, T02T, T03T và Q1T mà bác đã đổi tên).
 
Bạn xem trong trang 'Ca'

"số liệu ở cột G mà em đã thống kê trong các sheet PXVT-T1, PXVT-T2, PXVT-T3 và PXVT-Q1 (hay các sheet T01T, T02T, T03T và Q1T mà bác đã đổi tên). "

Vậy bạn đã thống kê như thế nào & quan trọng là thống kê từ đâu?
 

File đính kèm

Số liệu trên em thống kê từ các sheet DL01, DL02..............

VD: Xe HD 35 trong tháng 1 có: 55 ca vận tải đất (sheet T01T ô G91), 8 ca vận tải than (sheet T01T ô G131). Các số này em thống kê thủ công từ sheet DL01.
- Em đã thử cho thêm các số liệu tháng 2, tháng 3 vào các sheet DL02, DL03 tương ứng (vì khi cho vào sheet DL01 thì kết quả tổng sản lượng của từng xe trong sheet SLg lại cộng luôn vào tháng 1) nhưng chỉ hiển thị sản lượng tháng 2 và 3, không hiện sản lượng tháng 1?
- Em muốn tổng hợp kết quả của 1 quý, 6 tháng, 9 tháng hay 1 năm thì phải làm như thế nào?
- Em cũng đã xem kết quả của bác trong sheet "ca" nhưng e chưa hiểu phần ghi chú là gì, chỉ thấy kquả này = tổng số của cột (đất) + (than) + (đất-than).
Tuy nhiên khi cộng gộp tổng số kết quả ở các cột này theo 7 trường hợp (lấy kquả của từng trường hợp cộng lại) lại lớn hơn rất nhiều so với số ca trong tháng 1 (xe hoạt động nhiều nhất trong tháng 1 chỉ là 87 ca nên: tổng số ca vận tải đất+tổng số ca vận tải than <=87 ca)
 
Chắc là lệch lớn rồi, vì:

- Em cũng đã xem kết quả của bác trong sheet "ca" nhưng e chưa hiểu phần ghi chú là gì, chỉ thấy kquả này = tổng số của cột (đất) + (than) + (đất-than).
Tuy nhiên khi cộng gộp tổng số kết quả ở các cột này theo 7 trường hợp (lấy kquả của từng trường hợp cộng lại) lại lớn hơn rất nhiều so với số ca trong tháng 1 (xe hoạt động nhiều nhất trong tháng 1 chỉ là 87 ca nên: tổng số ca vận tải đất+tổng số ca vận tải than <=87 ca)
Cột đất & than ('E') sẽ làm tăng số ca, như sau:

Trong 1 dòng có chở cả đất & than thì rơi vô cùng 1 chủng loại (khoảng % chuye6n chở so với định mức) xác suất là hãn hữu, mà fần nhiều là thuộc vào 2 thể loại

Ví dụ chở than thuộc nhóm TT (tải trọng) 5, nhưng chở đất thuộc TT nhóm 3; Thì khi bạn chọn trên ô [K2]:=3 thì macro báo 1 ca & sau đó chọn [K2]:=5 thì macro cũng thêm 1 ca thoả. (Bạn có hình dung thuật toán chổ này là OR hay không; nếu dùng thuật 'AND' thì sẽ mất ca này luôn (vì xác suất trùng nhau là thấp). Vậy nên cần lấy lầm còn hơn bỏ sót đó là tiêu chí của macro này.

TRong trường hợp như vậy thì bạn bằng tay thống kê như thế nào?
 
Em cũng đã nghĩ đến khả năng này rồi khi thấy kết quả như vậy

Trong file đã gửi các bác em đã thử dùng kết hợp 1 số hàm excel như: countif, sumif, vookup...tuy nhiên vẫn chưa ra kết quả (cái này chắc là sai do chưa kết hợp hết dữ liệu)? Mong các bác chỉ giáo!
 
Trong file đã gửi các bác em đã thử dùng kết hợp 1 số hàm excel như: countif, sumif, vookup...tuy nhiên vẫn chưa ra kết quả (cái này chắc là sai do chưa kết hợp hết dữ liệu)? Mong các bác chỉ giáo!

(|) Với dữ liệu luôn lớn như vậy mình khuyên bạn lần nữa là nên học VBA để tự quản lí hay đọc hiểu code mọi người viết cho bạn!

(|) Với mục chở cả than & đất trong ngày theo mình có cách này:

Làm thêm 1 nút Validation 'T'/'D' trên trang tính, để khi ta chọn 'T' thì thống kê theo tiêu chí than & 'D' - theo tiêu chí của đất'.

Việc này bạn nên hỏi chủ iếu là sếp của bạn; Nếu fương án mình nêu không được chấp nhận thì chào thua sếp bạn luôn!
 
Cảm ơn các bác rất nhiều

Yêu cầu của sếp quá cao so với khả năng của e !$@!!.
Cảm ơn vì các bác đã ủng hộ và giúp đỡ e trong thời gian qua, e sẽ cố gắng bổ sung kiến thức về VBA. Rất mong nhận được sự quan tâm của các bác trong những lần sau!
 
(ó thể iêu cầu của sếp là cao so với bạn thôi.

Nhưng cái cần là iêu cầu đó fải rõ ràng. Bạn cứ hỏi sếp xem trong trường hợp như vậy sếp tính sao?

Xin tặng bạn file cuôí làm kỹ niệm
 

File đính kèm

2mình cũng đang làm bài toán như của bạn. Nhưng là từ cơ sở trên cơ sở định mức sản phẩm. nhập số liệu từng xe sản xuất trong ngày. Ra được báo cáo từng sản lượng trong tháng, sản lượng của từng lái xe trong tháng dựa vào các câu lệnh của hàm vloopkup và pivot. Cũng rất hay. Có gì nhắn tin lại cho mình theo địa chỉ hung_xu20032000@yahoo.com hoặc hungmining@gmail.com để cùng tham khảo. Do file quá nặng không gửi lên gpe được
 
Web KT

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

Back
Top Bottom