Cộng các loại tiền tệ theo Format Cell

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

minghng

Thành viên mới
Tham gia
1/8/08
Bài viết
46
Được thích
3
Xin chào,

mình muốn tìm tổng theo loại tiền tệ như : tổng Aud, Vnd, Usd.
nhờ các bạn chỉ mình dùng công thức nào vậy.
tks
 

File đính kèm

Xin chào,

mình muốn tìm tổng theo loại tiền tệ như : tổng Aud, Vnd, Usd.
nhờ các bạn chỉ mình dùng công thức nào vậy.
tks
ôi ôi, mỗi ô là một kiểu format khác nhau à, nếu làm cột đơn vị tiền tệ riêng thì dễ rồi. các bạn giải để mình học hỏi với nhé !
 
Xin chào,

mình muốn tìm tổng theo loại tiền tệ như : tổng Aud, Vnd, Usd.
nhờ các bạn chỉ mình dùng công thức nào vậy.
tks

Cách cộng như sau:
- Chọn cell B1, Vào Insert\Name\Define... :
+ Trong khung Names in Workbook bạn gõ Format
+ Trong khung Refers to bạn gõ:

=LEFT(GET.CELL(53,Sheet1!$B1),4)
+ Nhấn OK

- C1 bạn gõ

- B11 bạn gõ:

=SUMIF($C$1:$C$10,RIGHT(A12,4),$B$1:$B$10) --> Kéo xuống
Bạn xem file nhé

Lưu ý: Bạn không nên post bài nhiều nơi cùng 1 nội dung nhé.
 

File đính kèm

Xin chào,

mình muốn tìm tổng theo loại tiền tệ như : tổng Aud, Vnd, Usd.
nhờ các bạn chỉ mình dùng công thức nào vậy.
tks
Xin góp cách giải bằng hàm tự tạo
Mã:
Public Function Ngowa(Vung As Range, Dk As String) As Long
    Dim Cll As Range, Tam As Long, I As Integer
    I = InStrRev(Dk, " ")
    Dk = UCase(Right(Dk, Len(Dk) - I))
        For Each Cll In Vung
            If Mid(Cll.NumberFormat, 5, Len(Dk)) = Dk Then Tam = Tam + Cll
        Next
    Ngowa = Tam
End Function
 

File đính kèm

Xin góp cách giải bằng hàm tự tạo
Mã:
Public Function Ngowa(Vung As Range, Dk As String) As Long
    Dim Cll As Range, Tam As Long, I As Integer
    I = InStrRev(Dk, " ")
    Dk = UCase(Right(Dk, Len(Dk) - I))
        For Each Cll In Vung
            If Mid(Cll.NumberFormat, 5, Len(Dk)) = Dk Then Tam = Tam + Cll
        Next
    Ngowa = Tam
End Function
Ủa! Hàm này phải khai báo Double chứ anh! (nếu là Long thì nó cắt hết số thập phân đó nghen)
Mà thay vì dùng NumberFormat, sao anh không dùng Cll.Text cho tiện
Cll.Value là giá trị thực của Cll
Cll.Text là cái ta nhìn thấy trên cell (chưa chắc là giá trị thực)
Đại khái thế này:
If InStr(Cll.Text, Dk) Then Ngowa = Ngowa + Val(Cll)
 
vậy là số tổng chưa được chính xác , vì nó cắt hết số thập phân.
 
Web KT

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

Back
Top Bottom