Cách cộng dữ liệu trong 1 cells (1 người xem)

Liên hệ QC

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

tracanhtam

Thành viên mới
Tham gia
1/9/07
Bài viết
12
Được thích
0
Trong một cells excel tôi có dữ liệu như sau : 50/10B1. 52/10B12. 53/10B1. (v.v...)
Tôi muốn cộng 50,52,53,... thi làm sao?
(Giữa 50/10B1 va 52/10B12 là một dấu chấm và một khoảng trắng)
 
Theo mình bạn có thể làm như sau:
- Trước hết cần tách dữ liệu từ 1 cell ra nhiều cell: Chọn Cell > Data> Text to column > Chọn Delimited > Next > Chọn Space > Finish.
- Sau đó dùng hàm right để lấy các giá trị cần sum
 
Trong một cells excel tôi có dữ liệu như sau : 50/10B1. 52/10B12. 53/10B1. (v.v...)
Tôi muốn cộng 50,52,53,... thi làm sao?
(Giữa 50/10B1 va 52/10B12 là một dấu chấm và một khoảng trắng)
Nếu dữ liệu đó nằm trong một ô, và giữa các cái đó là một dấu chấm và một khoảng trắng, như bạn nói, thì bạn dùng công cụ Text To Column để tách chúng ra (3 cái thì ra 3 cột, 30 cái thì ra 30 cột...)

Giả sử dữ liệu gốc của bạn sẽ được tách ra 3 ô riêng biệt: 50/10B1, 52/10B12 và 53/10B1 nằm trong 3 ô A1, B1 và C1.

Có hai trường hợp sau:

  • Nếu như những cái này luôn luôn có 2 chữ số ở trước dấu gạch chéo (/), thì bạn dùng công thức sau để tính tổng của những số có hai chữ số này:

    =SUM(LEFT(A1:C1,2)*1)

    Công thức mảng nha. Nhớ nhấn Ctrl+Shift+Enter sau khi nhập xong, liếc lên thanh formula thấy công thức nó như vầy {=SUM(LEFT(A1:C1,2)*1)} là đúng.

  • Nếu như những cái vừa tách ra, cái số ở trước dấu / có thể là 1, 2 hay 3 chữ số (ví dụ như 3/10B2, hay là 521/10B1...), thì bạn phải dùng công thức sau:

    =SUM(LEFT(A1:C1,FIND("/",A1:C1)-1)*1)

    Cũng là công thức mảng luôn nha.

Trong thực tế, sau khi bạn dùng Text To Column tách ra, bạn thay thế cái A1:C1 ở trong các công thức tôi vừa nói ở trên bằng dãy ô chứa dữ liệu của bạn.

Thân.
 
Lần chỉnh sửa cuối:
Giả sử ô D6 là ô chứa dữ liệu như bạn nói: Bạn tham khảo công thức sau nhé

=VALUE(MID(SUBSTITUTE(D6," ",""),FIND("/",SUBSTITUTE(D6," ",""))-2,2))+VALUE(MID(SUBSTITUTE(D6," ",""),FIND("/",SUBSTITUTE(D6," ",""),4)-2,2))+VALUE(MID(SUBSTITUTE(D6," ",""),FIND("/",SUBSTITUTE(D6," ",""),14)-2,2))
Nó hơi dài một chút, để công thức đơn giản và ngắn hơn bạn có thể bỏ hàm Substitute đi cũng được
 
Hoặc bạn có thể sử dụng công thức này:
=VALUE(MID(D6,FIND("/",D6,1)-2,2))+VALUE(MID(D6,FIND("/",D6,FIND("/",D6,1)+1)-2,2))+VALUE(MID(D6,FIND("/",D6,FIND("/",D6,FIND("/",D6,1)+1)+1)-2,2))
 
Công thức của bạn duongdv hay nhưng nếu dãy số dài hơn nữa thì làm như vậy mất công qúa. Bạn nào có thể viết code trong vb để áp dụng luôn cho access thì cám ơn
 
Bạn thử công thức này xem!
Mã:
Function Tong(Clls As Range, Kd As String) As Integer
   Dim i, K As Integer
   K = 0
   For i = 1 To Len(Clls.Value)
      If Mid(Clls.Value, i, 1) = Kd Then
         K = K + Mid(Clls.Value, i - 2, 2)
      End If
   Next
Tong = K
End Function
Ví dụ:
A1 là: 50/10B1. 52/10B12. 53/10B1.
B1=tong(A1,"/")
thì kết quả là 155 = 50+52+53.
Bạn thử dùng trên Access xem, mình cũng không chắc có được không nữa!
 
Xin lỗi nha! Mình mượn nó và biến thành phép cộng luôn quên hỏi xin bản quyền rồi! Thứ lỗi nha!
 
Lần chỉnh sửa cuối:
Xin lỗi nha! Mình mượn nó và biến thành phép cộng luôn quên hỏi xin bản quyền rồi!
Thứ lỗi nha!
Đùa cho vui. Không có ý gì khác vì tôi cũng chỉ nghĩ ra công thức đếm chứ chưa nghĩ ra công thức cộng như bạn!
Cảm ơn nhiều!
 
Cám ơn bạn ndu96081631 , từ ý tưởng này mà tôi làm được công việc của mình
Bạn có viết được code hàm rank không
 
Trong access làm gì có hàm rank? Bạn giúp dùm
 
Trong Access không có hàm rank, nhưng bạn có thể sort data source của report theo nhiều trường, rôì đánh số thứ tự trên report.
 
tôi muốn cộng các số thập phân trong một hàng mà ko dc, bác nào biết chi dùm tui
vd: 123.5+123.6+132.4+...+132.8
nhung sử dụng hàm sum thì kết quả là 0, tôi bối rối wa
 
Web KT

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

Back
Top Bottom