Em muốn tính tổng như trong file mà không biết dùng công thức nào cho hợp lý? (1 người xem)

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

ngocdoan0802

Thành viên mới
Tham gia
21/6/12
Bài viết
10
Được thích
0
Em muốn tính tổng như trong file mà chưa biết dùng công thức nào cho hpợ lý. Mong các anh chị giúp đỡ.
 

File đính kèm

Hi check nhé, điều kiện chạy đúng là cái nào tính tổng thì bôi đậm, 2 là không nên kéo hạm xuống mà nên dùng chức năng copy and paste special chọn fomula
 

File đính kèm

Chưa hiểu ý của bạn thế nào! Bạn giải thích tính tổng và yêu cầu không rõ ràng, bạn giải thích lại để mọi người hiểu mới giúp đỡ được bạn! Không biết bài hỗ trợ trên đã đúng yêu cầu chưa??
 
hi all,


Tình hình là mình muốn làm 1 cái bảng excell để quản lý phòng họp ,


ngày giờ (lay ngay gio he thong may tinh)
gio hop( gio bat dau , gio ket thuc cung theo dang sort)
người đang ký(sort theo tên co sẵn)
nội dung cuoc họp)


giup minh nhe ca nha
 
Em cảm ơn thaytu, nhưng nếu add code vào và em sử dụng thì Ok, nhưng khi chuyển file sang máy khác và xử lý tiếp file nữa có bị lỗi không thaytu?
 
Bị lỗi bạn à, trong này mình có sữ dụng VBA code của thành viên trong GPE mình, không nhớ rõ. Bạn làm như sau
Mở File cần dùng, nhấn ALT + F11; Insert, Module và dán đoạn mã sau vào và lưu lại nhé:
Public Function SumType(TypeFunc As Byte, Opt As Boolean, Rng1 As Range, Optional Rng2 As Range, Optional Rng3 As Range, Optional Rng4 As Range, Optional Rng5 As Range) As Double
Dim Cell As Range, SumT As Double
For Each Cell In Rng1
If Not IsError(Cell) Then
If IsNumeric(Cell) Then
Select Case TypeFunc
Case 1 'cong cac cell dang value hay formula
If Cell.HasFormula = Opt Then SumT = SumT + Cell
Case 2 'cong cac cell co mau hay khong co mau nen
If Cell.Interior.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 3 'cong cac cell co mau hay khong co mau font chu
If Cell.Font.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 4 'cong cac cell co hay khong co font in dam
If Cell.Font.Bold = Opt Then SumT = SumT + Cell
End Select
End If
End If
Next
'---------------------------------------------------------------------
If Not Rng2 Is Nothing Then
For Each Cell In Rng2
If Not IsError(Cell) Then
If IsNumeric(Cell) Then
Select Case TypeFunc
Case 1 'cong cac cell dang value hay formula
If Cell.HasFormula = Opt Then SumT = SumT + Cell
Case 2 'cong cac cell co mau hay khong co mau nen
If Cell.Interior.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 3 'cong cac cell co mau hay khong co mau font chu
If Cell.Font.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 4 'cong cac cell co hay khong co font in dam
If Cell.Font.Bold = Opt Then SumT = SumT + Cell
End Select
End If
End If
Next
End If
'---------------------------------------------------------------------
If Not Rng3 Is Nothing Then
For Each Cell In Rng3
If Not IsError(Cell) Then
If IsNumeric(Cell) Then
Select Case TypeFunc
Case 1 'cong cac cell dang value hay formula
If Cell.HasFormula = Opt Then SumT = SumT + Cell
Case 2 'cong cac cell co mau hay khong co mau nen
If Cell.Interior.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 3 'cong cac cell co mau hay khong co mau font chu
If Cell.Font.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 4 'cong cac cell co hay khong co font in dam
If Cell.Font.Bold = Opt Then SumT = SumT + Cell
End Select
End If
End If
Next
End If
'---------------------------------------------------------------------
If Not Rng4 Is Nothing Then
For Each Cell In Rng4
If Not IsError(Cell) Then
If IsNumeric(Cell) Then
Select Case TypeFunc
Case 1 'cong cac cell dang value hay formula
If Cell.HasFormula = Opt Then SumT = SumT + Cell
Case 2 'cong cac cell co mau hay khong co mau nen
If Cell.Interior.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 3 'cong cac cell co mau hay khong co mau font chu
If Cell.Font.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 4 'cong cac cell co hay khong co font in dam
If Cell.Font.Bold = Opt Then SumT = SumT + Cell
End Select
End If
End If
Next
End If
'---------------------------------------------------------------------
If Not Rng5 Is Nothing Then
For Each Cell In Rng5
If Not IsError(Cell) Then
If IsNumeric(Cell) Then
Select Case TypeFunc
Case 1 'cong cac cell dang value hay formula
If Cell.HasFormula = Opt Then SumT = SumT + Cell
Case 2 'cong cac cell co mau hay khong co mau nen
If Cell.Interior.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 3 'cong cac cell co mau hay khong co mau font chu
If Cell.Font.ColorIndex > 0 = Opt Then SumT = SumT + Cell
Case 4 'cong cac cell co hay khong co font in dam
If Cell.Font.Bold = Opt Then SumT = SumT + Cell
End Select
End If
End If
Next
End If
SumType = SumT
End Function
Đừng quên Security ở mức Low nhé. Thân
 
Bị lỗi bạn à, trong này mình có sữ dụng VBA code của thành viên trong GPE mình, không nhớ rõ. Bạn làm như sau
Mở File cần dùng, nhấn ALT + F11; Insert, Module và dán đoạn mã sau vào và lưu lại nhé:

Đừng quên Security ở mức Low nhé. Thân

Như vậy thì mình gặp khó rồi thaytu ơi, tại vì file mình làm và chuyển đi nhiều người của nhiều cơ quan khác nhau. Nên không thể add code vào file được.
Mình có ý tưởng thế này mà không biết dùng công thức gì, thaytu có thể viết giúp mình với: Nếu phát hiện ô rỗng; Sum(từ ô đã chọn tới 65536)-sum(từ ô rỗng tới ô 65536); ngược lại thì nhân định mức với đơn giá bình thường. Nhưng vấn đề mình không viết được công thức tim vị trí ô rỗng. Không biết thế có Ok không? Hic hic.
 
Phương án này thì mình chưa nghĩ ra được, theo PA trên thì bạn tạo mẫu sẵn cho người dùng nhập là chạy ok mà, chỉ có tùy chọn thêm trong Security thôi.
 
Như vậy thì mình gặp khó rồi thaytu ơi, tại vì file mình làm và chuyển đi nhiều người của nhiều cơ quan khác nhau. Nên không thể add code vào file được.
Mình có ý tưởng thế này mà không biết dùng công thức gì, thaytu có thể viết giúp mình với: Nếu phát hiện ô rỗng; Sum(từ ô đã chọn tới 65536)-sum(từ ô rỗng tới ô 65536); ngược lại thì nhân định mức với đơn giá bình thường. Nhưng vấn đề mình không viết được công thức tim vị trí ô rỗng. Không biết thế có Ok không? Hic hic.

Nếu muốn dùng công thức thì thử dùng hàm mảng sau:

=IF(MID(D5,2,1)="/", SUM(OFFSET(I6, 0, 0, IF(MIN(IF(MID(D6:$D$32,2,1)="/",1,10^10)*ROW(D6:$D$32))-MAX(ROW(D6))>10^10,MAX(ROW($D$32))-MAX(ROW(D6)),MIN(IF(MID(D6:$D$32,2,1)="/",1,10^10)*ROW(D6:$D$32))-MAX(ROW(D6))), 1)), IF(C5="", G5 * H5, ""))

với 1 vài chú ý sau:
Các dòng có chứa Vật liệu, Nhân công phải bắt đầu bởi A/ hoặc B/ hoặc C/ ... (kí tự thứ 2 là dấu /)
ô D32 là ô dưới của ô cuối cùng của bảng dữ liệu (bảng kết thúc tại D31)
Khi áp dụng thì thay giá trị D32 bằng giá trị cụ thể cho phù hợp.
 
Em cam on anh hoangvuluan, dung la em dang can cong thuc dang mang nay vi chuyen file di may khac van chay duoc. Nhung em copy cong thuc vao file thi khong chay duoc, bao loi roi. Ma em dang kiem tra cong thuc lai thi hic, kiem khong noi. Hi hi hi, nho anh giup do.
 
Em cam on anh hoangvuluan, dung la em dang can cong thuc dang mang nay vi chuyen file di may khac van chay duoc. Nhung em copy cong thuc vao file thi khong chay duoc, bao loi roi. Ma em dang kiem tra cong thuc lai thi hic, kiem khong noi. Hi hi hi, nho anh giup do.
Sau khi copy công thức, bạn phải nhấn ctrl-shift-enter nữa mới được.
Xem file đính kèm. (Đọc lại những lưu ý tôi đã ghi ở bài trước)
 

File đính kèm

Em cam on anh hoangvuluan, dung la em dang can cong thuc dang mang nay vi chuyen file di may khac van chay duoc. Nhung em copy cong thuc vao file thi khong chay duoc, bao loi roi. Ma em dang kiem tra cong thuc lai thi hic, kiem khong noi. Hi hi hi, nho anh giup do.

Lưu ý: bài vi phạm nội quy.
 

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

Back
Top Bottom