This is a mobile optimized page that loads fast, if you want to load the real page, click this text.

Hỏi/ Thắc mắc EXCEL làm sao cộng trừ với những ô trống xen kẽ???

XuxiLady

Rìu Bạc Đôi
Function Remaining() As Integer
Remaining = ActiveCell.End(xlUp).Value - ActiveCell.Offset(, -1)
End Function


Coppy dòng lệnh trên vào modul , sau đó gọi hàm = Remaining() tại ô cần tính tồn
Chào bạn, cách này là bạn sử dụng lập trình VBA để làm đúng không? Mình rất muốn học những thứ này mà chưa rõ bắt đầu từ đâu, bạn có thể giới thiệu một số cuốn sách mà bạn biết được không? Cảm ơn bạn!
 

huynv92

Rìu Sắt
đúng rồi bạn, cái này VBA, lúc trước có đi làm về văn phòng nên mình có học qua qua , giờ chuyển sang web nên khá lâu không động tới, nguồn tài liệu lúc trước mình học khá hỗn tạp, chủ yếu là lúc cần thì google search, vừa rồi mình có lục trên google và đọc qua thì thấy bạn có thể học ở https://viettuts.vn/excel-vba thấy khá ổn, có một bí quyết nhỏ để học tốt VBA đó là MACRO , bạn có thể thu(record) các thao tác rồi học từ nó , từ khóa là "MACROS VBA EXCEL", do bạn để ẩn tuổi nên không dõ để xưng hô, mông b thông cảm
 

XuxiLady

Rìu Bạc Đôi
Cảm ơn bạn nhiều. Thôi thì cứ xưng bạn-mình cho dễ bạn ạ, cá nhân mình thấy việc xưng hô theo độ tuổi ở một môi trường ảo đôi khi gây ra một số tình huống khó xử nên mình ẩn tuổi, mong bạn hiểu ^^.
 

daiquytoc

Gà con
Mình đã thử cái này rồi đó chứ, đơn giản nhất mà, nhưng nó sẽ làm các ô xám hiện lên số hết, không để trống những ngày ta không nhập thông tin
 
Sửa lần cuối:

daiquytoc

Gà con
Function Remaining() As Integer
Remaining = ActiveCell.End(xlUp).Value - ActiveCell.Offset(, -1)
End Function

Coppy dòng lệnh trên vào modul , sau đó gọi hàm = Remaining() tại ô cần tính tồn


Thanks bạn, nhưng nếu cứ mỗi ô cần tính tồn mình gõ =REMAINING() thì thôi mình gõ 2 con số vô luôn cho lẹ. Ý mình là chỉ gõ mã ở 1 ô rồi kéo mã tới tất cả các ô còn lại, ngày nào có nhập số ở 2 cột Xuất Nhập thì sẽ tự động có số ở ô Tồn, còn ngày nào không nhập số thì nó để trống.
Nhìn thì đơn giản nhưng có vẻ khó hả các bác???
 
Bạn có thể sử dụng VBA như bạn #2
Giải pháp khác là "lách luật" tính bằng số tồn đầu tiên trừ đi tổng số xuất:

P/S: Quên mất chưa cộng số nhập, bạn tự thêm vào nha.
Dùng công thức mảng chắc cũng được nhưng mình chưa thử, nếu được mình sẽ update lại post này.
 
Sửa lần cuối:

Coriolano

Rìu Sắt Đôi
Vậy làm cái này easy hơn, giải pháp là cố định số đầu kỳ, ví dụ là dòng 3 là dòng chứa số đầu kỳ, thì: D25=If(B25+C25=0,"",D$3+Sum(B$4:B25)-sum(C$4:C25)).
Anw, mình đưa ra phương án ban đầu vì về mặt kế toán, bạn không xuất, nhập thêm thì vẫn có 1 số tồn nên nó sẽ chính xác hơn