nhóm dữ liệu, thống kê theo yêu cầu

Liên hệ QC

dinhhong04

Thành viên mới
Tham gia
28/7/08
Bài viết
16
Được thích
0
Hôm trước em hỏi các bác về vấn đề phân chia dữ liệu. các bác chỉ rất hợp lý nhưng các bác có thể xem file này được không? đây là file gốc mà em muốn thực hiện theo như ý của em.

http://giaiphapexcel.com/forum/showthread.php?t=20445
 
Lần chỉnh sửa cuối:

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
cảm ơn bác nhé đó cũng là một giải pháp hay. nhưng em đã làm được rồi, nhờ code của mấy bác em ghép lại là chạy ngon rồi. nhưng em còn một vấn đề trong bài làm đó là khi em copy dữ liệu muốn thống kê vào một sheet2 sau đó sử dụng hàm thống kê thì nó chạy nhưng lại không hiển thị kết quả trên sheet4 các bác giúp em với. và xem bài của em xem thế nào rồi hoàn tất giúp em, thanks
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
cảm ơn bác nhé đó cũng là một giải pháp hay. nhưng em đã làm được rồi, nhờ code của mấy bác em ghép lại là chạy ngon rồi. nhưng em còn một vấn đề trong bài làm đó là khi em copy dữ liệu muốn thống kê vào một sheet2 sau đó sử dụng hàm thống kê thì nó chạy nhưng lại không hiển thị kết quả trên sheet4 các bác giúp em với. và xem bài của em xem thế nào rồi hoàn tất giúp em, thanks
Bạn dùng đoạn code này để lấy kết quả từ Sheet2 sang Sheet4 xem kết quả thế nào nhé

PHP:
Sub GPE_boyxin()
Dim Clls As Range, Rng As Range, k As Long
Sheets("Sheet4").[B3].CurrentRegion.Offset(1).ClearContents
Sheets("Sheet2").Activate
Set Rng = [B2].CurrentRegion: k = 1
Tmp = Sheets("Sheet4").[B2].Resize(65000, 4)
For Each Clls In Rng.Offset(1).SpecialCells(2, 1)
    With Clls
        k = k + IIf((Cells(2, .Column) = Cells(2, .Column - 1)) _
                * (.Offset(, -1).Value > 0), 0, 1)
        Tmp(k, 2) = Cells(2, .Column).Value
        Tmp(k, 1) = Left(Cells(.Row, 2).Value, 6)
        Tmp(k, IIf(Cells(3, .Column).Value = "N", 3, 4)) = .Value
    End With
Next
Sheets("Sheet4").[B2].Resize(65000, 4) = Tmp
Sheets("Sheet4").[B3].CurrentRegion.Sort Key1:=Sheets("Sheet4").[C3], _
Order1:=1, Key2:=Sheets("Sheet4").[B3], Order2:=1, Header:=0
End Sub
 
Lần chỉnh sửa cuối:
Upvote 0
Xin các bạn giúp mình tí. Mình muốn sau khi nhập nhóm SP, Tên SP, Số lượng và chọn in trắng đen hoặc in màu thì Cột bù hao sẽ tính toán ra số lượng bù hao theo bảng định mức trên. Cảm ơn các bạn trước!
 

File đính kèm

Upvote 0
Tôi có 1 trang tính điểm cho học sinh, tôi muốn trích một số cột của trang dùng VB thì làm như thế nào? Mong mọi người chỉ giúp. Xin cảm ơn!
 
Upvote 0
Không ai giúp mình hết! vậy là chết với Sếp rồi. Hu..hu..
 
Lần chỉnh sửa cuối:
Upvote 0
Mình đã mua quyển Lập trình VBA trong Excel phiên bản 2 và mấy quyển về hàm của Excel về tìm hiểu mà vẫn chưa có cách nào giải quyết yêu cầu trên của mình cả. Chán Thật!
 
Upvote 0
Hãy tự trách mình đi là vừa!

Không ai giúp mình hết! vậy là chết với Sếp rồi. Hu..hu..

Bạn đưa lên 1 bảng biểu để tra gồm 7 cột & 5 dòng số liệu;
Nhưng trong ví dụ thì tiết kiệm vô chừng; chỉ có 1 dòng (Nói bạn cứ dận, chứ họ không giúp vì sợ phí công của họ)
Theo mình, bạn nên bổ sung vài dòng nữa, cho có tất cả các thể loại
& lần sau bạn cần biết rằng, không nên chỉ biết tiếc thòi gian của mình, mà cũng/càng phải biết tiếc công sức & thòi gian của ai đó trong cộng đồng!
 
Upvote 0
Xin lỗi các bạn vì mình nghĩ chỉ cần các bạn giúp mình làm một dòng còn lại mình sẽ copy để đỡ mất thời gian của mọi người. Ý mình muốn số lượng giấy bù hao sẽ được tính tự động bằng cách dò số lượng, nhóm SP và màu in trong Bảng Định Mức và tính như mình tính bằng tay trong bảng báo cáo. Mong các bạn xem và giúp mình. Xin Chân thành cảm ơn!
 

File đính kèm

Lần chỉnh sửa cuối:
Upvote 0
Hãy thử với hàm người dùng sau

Xin lỗi các bạn vì mình nghĩ chỉ cần các bạn giúp mình làm một dòng còn lại mình sẽ copy để đỡ mất thời gian của mọi người. Mong các bạn xem và giúp mình. Xin Chân thành cảm ơn!
Bạn cung cấp càng nhiều thông tin,càng được giúp nhanh!

PHP:
Option Explicit
Function BuHao(SoLg As Double, NhomSF As String, Optional InMau As Boolean = True)
 Dim FTram As Double
 
 SoLg = SoLg / 1000:                  NhomSF = UCase$(Trim(NhomSF))
 
 If Left(NhomSF, 1) = "S" Then
   If InMau Then
      FTram = Switch(SoLg <= 1, 2.8, SoLg <= 3, 2.4, SoLg <= 5, 1.8, SoLg <= 10, 1.44, _
         SoLg <= 15, 1.26, SoLg > 15, 1)
   Else
      FTram = Switch(SoLg <= 1, 2.5, SoLg <= 3, 1.7, SoLg <= 5, 1.5, SoLg <= 10, 1.2, _
         SoLg <= 15, 1, SoLg > 15, 0.75)
   End If
 ElseIf Left(NhomSF, 2) = "BI" Then
   If InMau Then
      FTram = Switch(SoLg <= 1, 2.8, SoLg <= 3, 2.4, SoLg <= 5, 2, SoLg <= 10, 1.4, _
         SoLg <= 15, 1.2, SoLg > 15, 1)
   Else
      FTram = Switch(SoLg <= 1, 2, SoLg <= 3, 1.6, SoLg <= 5, 1.4, SoLg <= 10, 1, _
         SoLg <= 15, 0.75, SoLg > 15, 0.6)
   End If
 Else 'Bao chi'
   If InMau Then
      FTram = Switch(SoLg <= 1, 2.3, SoLg <= 3, 2, SoLg <= 5, 1.7, SoLg <= 10, 1.3, _
         SoLg <= 15, 1.2, SoLg > 15, 1)
   Else
      FTram = Switch(SoLg <= 1, 2, SoLg <= 3, 1.6, SoLg <= 5, 1.4, SoLg <= 10, 1#, _
         SoLg <= 15, 0.75, SoLg > 15, 0.6)
   End If
 End If
 BuHao = SoLg * 10 * FTram
End Function

Khi đó tại [H14] & [H18] tương ứng bạn nhập cú pháp
=buhao(E14,C14,FALSE)
&
=buhao(E18,C18)
Chúc thành công.
 
Upvote 0
To HYen17:
Cảm ơn bạn đã giúp mình! Mình xin bạn giúp thêm tí trong VBA bù hao có thể nào dùng địa chỉ ô chứa giá trị trong bảng định mức được không.Vì có sự thay đổi trong bảng định mức theo màu in. Mình gơỉ bảng tính chính xác để bạn xem giúp.
 

File đính kèm

Upvote 0
Xin lỗi các bạn vì mình nghĩ chỉ cần các bạn giúp mình làm một dòng còn lại mình sẽ copy để đỡ mất thời gian của mọi người. Ý mình muốn số lượng giấy bù hao sẽ được tính tự động bằng cách dò số lượng, nhóm SP và màu in trong Bảng Định Mức và tính như mình tính bằng tay trong bảng báo cáo. Mong các bạn xem và giúp mình. Xin Chân thành cảm ơn!
Lúc trưa tôi có làm bài của bạn nhưng bận công việc gấp nên chưa gởi kịp. Bạn thử tham khảo công thức này nhe!(Có sửa một tí ở bảng định mức!)
 

File đính kèm

Upvote 0
Định mức vật tư

Cảm ơn bạn đã hướng dẫn. Bạn xem lại giúp bảng định mức bạn sửa lại có tí nhầm lẫn. Dòng đầu tiên trong bảng của mình là <=1000 chứ không phải là < 1000.
 
Upvote 0
Web KT

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

Back
Top Bottom