Xin giúp công thức tính biến động theo tháng và so với 2019

Liên hệ QC

vutrader

Thành viên mới
Tham gia
20/3/08
Bài viết
13
Được thích
3
Xin các bác giúp đỡ công thức. Tôi muốn dùng công thức để tính biến động tăng/giảm tại cột:
BIEN DONG Vs. THANG: lấy giá trị tại cột phát sinh cuối cùng trừ đi giá trị cột trước đó (biến động tháng này so với tháng trước)
BIEN DONG Vs. 2019: lấy giá trị tại cột phát sinh cuối cùng trừ đi giá trị cột 2019.
1585630196468.png

Vì bảng số liệu lên đến 20,000 dòng nên file khá nặng, nhờ các anh chị giúp đỡ.
 

File đính kèm

  • Cong thuc tinh bien dong.xlsx
    9.2 KB · Đọc: 18
Xin các bác giúp đỡ công thức. Tôi muốn dùng công thức để tính biến động tăng/giảm tại cột:
BIEN DONG Vs. THANG: lấy giá trị tại cột phát sinh cuối cùng trừ đi giá trị cột trước đó (biến động tháng này so với tháng trước)
BIEN DONG Vs. 2019: lấy giá trị tại cột phát sinh cuối cùng trừ đi giá trị cột 2019.
View attachment 234395

Vì bảng số liệu lên đến 20,000 dòng nên file khá nặng, nhờ các anh chị giúp đỡ.
Mã:
N4 =IFERROR(SUMPRODUCT((C4:M4-B4:L4)*(COLUMN($A:$K)=LOOKUP(2,1/(C4:M4<>""),COLUMN($A:$K)))),"")
O4 =IFERROR(LOOKUP(2,1/(B4:M4<>""),B4:M4)-A4,"")
 
Xin cảm ơn bạn, tôi đã làm được theo công thức, file chạy nhẹ nhàng, rất tuyệt.
Chỉ một hạn chế nhỏ là nếu sơ ý gõ nhầm số 0 trong các cột phía sau nó sẽ ra kết quả không mong muốn, tuy nhiên cách này nếu cẩn thận kiểm tra và xóa hết các cột phía sau thì kết quả sẽ đúng, cột BIEN DONG vs. 2019 vẫn ra kết quả đúng.
Đối với cột BIEN DONG vs. THANG tôi có thử thay thế ......=LOOKUP(2,1/(C4:M4<>"")...... thành ......=LOOKUP(2,1/(C4:M4>=0)...... nhưng không thành công.
1585705379205.png
 
Xin cảm ơn bạn, tôi đã làm được theo công thức, file chạy nhẹ nhàng, rất tuyệt.
Chỉ một hạn chế nhỏ là nếu sơ ý gõ nhầm số 0 trong các cột phía sau nó sẽ ra kết quả không mong muốn, tuy nhiên cách này nếu cẩn thận kiểm tra và xóa hết các cột phía sau thì kết quả sẽ đúng, cột BIEN DONG vs. 2019 vẫn ra kết quả đúng.
Đối với cột BIEN DONG vs. THANG tôi có thử thay thế ......=LOOKUP(2,1/(C4:M4<>"")...... thành ......=LOOKUP(2,1/(C4:M4>=0)...... nhưng không thành công.
View attachment 234461
Bạn thử thay thế <>"" bằng <>0
Tuy nhiên công thức gốc vẫn chuẩn hơn, với nhiệm vụ "lấy giá trị tại cột phát sinh cuối cùng" nếu ô rổng là không có phát sinh, nếu giá trị ô là "0" là có phát sinh với giá trị =0
 
Bạn thử thay thế <>"" bằng <>0
Tuy nhiên công thức gốc vẫn chuẩn hơn, với nhiệm vụ "lấy giá trị tại cột phát sinh cuối cùng" nếu ô rổng là không có phát sinh, nếu giá trị ô là "0" là có phát sinh với giá trị =0
Cảm ơn bạn, thay <>0 chạy rất ổn. đây là công thức rất hay. file chạy nhẹ hơn hẳn so với công thức VBA "LASTINROW" từ google.
 
Cảm ơn bạn, thay <>0 chạy rất ổn. đây là công thức rất hay. file chạy nhẹ hơn hẳn so với công thức VBA "LASTINROW" từ google.
Hôm nay mới phát hiện lỗi khi thay <>"" thành <>0. nên chịu khó dùng <>"" vậy. Bác nào có thay đổi thành <>0 lưu ý kẻo sai số.
1586838944651.png
 
Web KT
Back
Top Bottom