tohoangdung
Thành viên chính thức


- Tham gia
- 16/5/09
- Bài viết
- 50
- Được thích
- 5
- Giới tính
- Nam
(Đã cập nhật lại nội dung, mới thêm 2 cột Bill No. và Packaging Date)
Chào các bạn,
Mình cần lập công thức (Sheet STOCKCARD) cho các cột A, B, C, D, E, F, G, H những cột I, J, K thì đã có công thức khá hoàn chỉnh rồi, có lẽ không cần chỉnh sửa lại.
Sheet nhập liệu hàng ngày là DATAENTRY, sẽ nhập vào đây trong nhiều năm. STOCKCARD sẽ lấy dữ liệu từ Sheet DATAENTRY.
Làm sao thẻ kho này có thể xem chi tiết NXT theo khoảng thời gian ngẫu nhiên của từng mã hàng.
Ô E1 và G1, sẽ chỉnh sửa lại ngày theo nhu cầu xem Thẻ kho.
Chọn mã hàng để xem ở Listbox ô B3.
- Cột Date: lập công thức dựa vào cột D trong Sheet DATAENTRY, và 2 ô: E1 và G1.
+ Nếu mã hàng còn tồn và E1 là ngày 01 tây của tháng mới thì hiện ngày 01 ở một số dòng của cột Date.
+ Hiển thị các ngày nhập xuất ở cột này theo từng mã chọn ở Listbox ô B3.
- Cột Inv. No.:
+ Nhập xuất trong khoảng thời gian ở E1 và G1 sẽ lấy thông tin ở cột C của Sheet DATAENTRY.
+ Nếu mã hàng còn tồn cuối kỳ của tháng, quý, năm trước thì những dòng đầu sẽ hiện chữ "Balance".
- Cột Bill No.: lấy thông tin từ sheet DATAENTRY
+ Nếu là tồn đầu thì không cần hiển thị số Bill, chỉ cho hiện chữ Balance ở cột Inv. No.
- Cột Receipts: lấy dữ liệu ở cột F trong Sheet DATAENTRY.
+ Là số lượng nhập trong kỳ (tháng, quý, năm) theo từng số Invoice ở cột Inv. No.
+ Là số lượng tồn đầu kỳ, sẽ nằm ở những dòng đầu (từ D9 trở xuống).
- Cột Lot No.: lấy thông tin từ sheet DATAENTRY
+ Bao gồm số Lot tồn đầu kỳ, và số Lot nhập xuất trong kỳ.
- Cột Packaging Date (Ngày đóng gói): lấy thông tin từ sheet DATAENTRY.
+ Tồn đầu kỳ sẽ bỏ trống phần này.
+ Nhập xuất trong kỳ sẽ cho hiển thị như trong sheet DATAENTRY.
- Cột Issues: lấy dữ liệu ở cột G trong Sheet DATAENTRY.
+ Là số lượng xuất trong kỳ theo từng số Invoice ở cột Inv. No. Lấy dữ liệu ở cột H trong Sheet DATAENTRY.
- Cột Balance:
+ Là số lượng tồn cuối kỳ.
Giải thích thêm các cột:
- Cột I: Liệt kê các số Lot từ danh sách số Lot trùng ở cột E.
- Cột J: Là số lượng tồn còn lại của từng Lot.
- Cột K: Là số lượng tổng của từng Lot.
Không được gộp các dòng của những Lot khác nhau lại thành 1 dòng, vì mình phải nhập xuất hàng dựa vào số Lot, mình theo dõi các số Lot của 1 mã hàng, mỗi Lot còn tồn với số lượng bao nhiêu. Ví dụ, nếu mình xem từ ngày 03/02/2018 đến ngày 07/02/2018 thì nếu ngày 02/02/2018 mã hàng còn tồn thì ngày tồn đầu kỳ là ngày 02/02/2018, nếu 1 số Lot có nhiều dòng trùng nhau từ những ngày trước đến ngày 02/02/2018 thì cho gộp thành 1 dòng cùng số lượng tổng của Lot đang tồn, dòng tiếp theo của tồn đầu sẽ là số Lot khác cùng với số lượng.
Hiện tại, hàng ngày mình nhập liệu vào 2 file rất mất thời gian: NXT.xlsx và stockcard.xlsx. (Xem file đính kèm)
Mình muốn nhập vào 1 file cho tiện: NXT.xlsx.
Mong các bạn giúp đỡ mình, cảm ơn các bạn.

Dưới đây là hình của file stockcard.xlsx (hàng ngày mình nhập thêm vô file này để theo dõi chi tiết từng mã):

Đây là Sheet FGDETAILREPORT, mình đang mong mọi người giúp đỡ viết công thức hoặc VBA cho Sheet này, để xem Nhập Xuất Tồn chi tiết:

Yêu cầu của Sheet FGDETAILREPORT:
Tất cả đều lấy dữ liệu từ Sheet DATAENTRY (Sheet này để nhập liệu hàng ngày).
1. Có thể xem NXT ngẫu nhiên trong 1 khoảng thời gian (VD: Xem từ 03/02/2018 đến 08/02/2018).
2. Hiện những số Lot đang tồn và phát sinh trong kỳ.
VD: Lot LP17081100079 của mã 1010782 có tồn đầu kỳ (là trước ngày 03/02/2018) là 0, vì ngày 01/02/2018 có số lượng là 17280 (số 17280 là số tồn cuối tháng 01/2018), ngày 02/02/2018 có xuất đi 17280 nên Lot này = 0.
- Nếu số Lot không có tồn đầu trong khoảng thời gian mình muốn xem ngẫu nhiên, nhưng trong khoảng thời gian mình xem báo cáo có nhập xuất thì liệt kê số Lot ra.
- Nếu số Lot không có tồn đầu trong khoảng thời gian mình muốn xem ngẫu nhiên, và trong khoảng thời gian mình xem báo cáo không có nhập xuất thì không liệt kê số Lot đó ra.
Nghĩa là:
- Tồn đầu = 0, Nhập hoặc Xuất > 0 thì liệt kê số Lot đó ra.
- Tồn đầu > 0, Nhập hoặc Xuất = 0 thì liệt kê số Lot đó ra.
- Tồn đầu > 0, Nhập hoặc Xuất > 0 thì liệt kê số Lot đó ra.
- Tồn đầu = 0, Nhập và Xuất = 0 thì không liệt kê số Lot đó ra.
Part No.: là mã hàng cần liệt kê ra cùng với số Lot.
Description: là tên hàng cần liệt kê ra cùng với số Lot.
Unit: Đơn vị tính cần liệt kê ra cùng với số Lot.
Opening Balance: là số lượng tổng cộng của Lot đó trước thời điểm xem báo cáo, nghĩa là trước ngày 03/02/2018.
Receipts: là số lượng tổng cộng nhập vào của Lot đó trong khoảng thời gian mình xem báo cáo.
Issues: là số lượng tổng cộng xuất ra của Lot đó trong khoảng thời gian mình xem báo cáo.
Closing Balance: là số lượng tồn cuối, lấy tồn đầu + nhập - xuất = tồn cuối.
HY VỌNG MỌI NGƯỜI HIỂU!!!!
Chào các bạn,
Mình cần lập công thức (Sheet STOCKCARD) cho các cột A, B, C, D, E, F, G, H những cột I, J, K thì đã có công thức khá hoàn chỉnh rồi, có lẽ không cần chỉnh sửa lại.
Sheet nhập liệu hàng ngày là DATAENTRY, sẽ nhập vào đây trong nhiều năm. STOCKCARD sẽ lấy dữ liệu từ Sheet DATAENTRY.
Làm sao thẻ kho này có thể xem chi tiết NXT theo khoảng thời gian ngẫu nhiên của từng mã hàng.
Ô E1 và G1, sẽ chỉnh sửa lại ngày theo nhu cầu xem Thẻ kho.
Chọn mã hàng để xem ở Listbox ô B3.
- Cột Date: lập công thức dựa vào cột D trong Sheet DATAENTRY, và 2 ô: E1 và G1.
+ Nếu mã hàng còn tồn và E1 là ngày 01 tây của tháng mới thì hiện ngày 01 ở một số dòng của cột Date.
+ Hiển thị các ngày nhập xuất ở cột này theo từng mã chọn ở Listbox ô B3.
- Cột Inv. No.:
+ Nhập xuất trong khoảng thời gian ở E1 và G1 sẽ lấy thông tin ở cột C của Sheet DATAENTRY.
+ Nếu mã hàng còn tồn cuối kỳ của tháng, quý, năm trước thì những dòng đầu sẽ hiện chữ "Balance".
- Cột Bill No.: lấy thông tin từ sheet DATAENTRY
+ Nếu là tồn đầu thì không cần hiển thị số Bill, chỉ cho hiện chữ Balance ở cột Inv. No.
- Cột Receipts: lấy dữ liệu ở cột F trong Sheet DATAENTRY.
+ Là số lượng nhập trong kỳ (tháng, quý, năm) theo từng số Invoice ở cột Inv. No.
+ Là số lượng tồn đầu kỳ, sẽ nằm ở những dòng đầu (từ D9 trở xuống).
- Cột Lot No.: lấy thông tin từ sheet DATAENTRY
+ Bao gồm số Lot tồn đầu kỳ, và số Lot nhập xuất trong kỳ.
- Cột Packaging Date (Ngày đóng gói): lấy thông tin từ sheet DATAENTRY.
+ Tồn đầu kỳ sẽ bỏ trống phần này.
+ Nhập xuất trong kỳ sẽ cho hiển thị như trong sheet DATAENTRY.
- Cột Issues: lấy dữ liệu ở cột G trong Sheet DATAENTRY.
+ Là số lượng xuất trong kỳ theo từng số Invoice ở cột Inv. No. Lấy dữ liệu ở cột H trong Sheet DATAENTRY.
- Cột Balance:
+ Là số lượng tồn cuối kỳ.
Giải thích thêm các cột:
- Cột I: Liệt kê các số Lot từ danh sách số Lot trùng ở cột E.
- Cột J: Là số lượng tồn còn lại của từng Lot.
- Cột K: Là số lượng tổng của từng Lot.
Không được gộp các dòng của những Lot khác nhau lại thành 1 dòng, vì mình phải nhập xuất hàng dựa vào số Lot, mình theo dõi các số Lot của 1 mã hàng, mỗi Lot còn tồn với số lượng bao nhiêu. Ví dụ, nếu mình xem từ ngày 03/02/2018 đến ngày 07/02/2018 thì nếu ngày 02/02/2018 mã hàng còn tồn thì ngày tồn đầu kỳ là ngày 02/02/2018, nếu 1 số Lot có nhiều dòng trùng nhau từ những ngày trước đến ngày 02/02/2018 thì cho gộp thành 1 dòng cùng số lượng tổng của Lot đang tồn, dòng tiếp theo của tồn đầu sẽ là số Lot khác cùng với số lượng.
Hiện tại, hàng ngày mình nhập liệu vào 2 file rất mất thời gian: NXT.xlsx và stockcard.xlsx. (Xem file đính kèm)
Mình muốn nhập vào 1 file cho tiện: NXT.xlsx.
Mong các bạn giúp đỡ mình, cảm ơn các bạn.

Dưới đây là hình của file stockcard.xlsx (hàng ngày mình nhập thêm vô file này để theo dõi chi tiết từng mã):

Đây là Sheet FGDETAILREPORT, mình đang mong mọi người giúp đỡ viết công thức hoặc VBA cho Sheet này, để xem Nhập Xuất Tồn chi tiết:

Yêu cầu của Sheet FGDETAILREPORT:
Tất cả đều lấy dữ liệu từ Sheet DATAENTRY (Sheet này để nhập liệu hàng ngày).
1. Có thể xem NXT ngẫu nhiên trong 1 khoảng thời gian (VD: Xem từ 03/02/2018 đến 08/02/2018).
2. Hiện những số Lot đang tồn và phát sinh trong kỳ.
VD: Lot LP17081100079 của mã 1010782 có tồn đầu kỳ (là trước ngày 03/02/2018) là 0, vì ngày 01/02/2018 có số lượng là 17280 (số 17280 là số tồn cuối tháng 01/2018), ngày 02/02/2018 có xuất đi 17280 nên Lot này = 0.
- Nếu số Lot không có tồn đầu trong khoảng thời gian mình muốn xem ngẫu nhiên, nhưng trong khoảng thời gian mình xem báo cáo có nhập xuất thì liệt kê số Lot ra.
- Nếu số Lot không có tồn đầu trong khoảng thời gian mình muốn xem ngẫu nhiên, và trong khoảng thời gian mình xem báo cáo không có nhập xuất thì không liệt kê số Lot đó ra.
Nghĩa là:
- Tồn đầu = 0, Nhập hoặc Xuất > 0 thì liệt kê số Lot đó ra.
- Tồn đầu > 0, Nhập hoặc Xuất = 0 thì liệt kê số Lot đó ra.
- Tồn đầu > 0, Nhập hoặc Xuất > 0 thì liệt kê số Lot đó ra.
- Tồn đầu = 0, Nhập và Xuất = 0 thì không liệt kê số Lot đó ra.
Part No.: là mã hàng cần liệt kê ra cùng với số Lot.
Description: là tên hàng cần liệt kê ra cùng với số Lot.
Unit: Đơn vị tính cần liệt kê ra cùng với số Lot.
Opening Balance: là số lượng tổng cộng của Lot đó trước thời điểm xem báo cáo, nghĩa là trước ngày 03/02/2018.
Receipts: là số lượng tổng cộng nhập vào của Lot đó trong khoảng thời gian mình xem báo cáo.
Issues: là số lượng tổng cộng xuất ra của Lot đó trong khoảng thời gian mình xem báo cáo.
Closing Balance: là số lượng tồn cuối, lấy tồn đầu + nhập - xuất = tồn cuối.
HY VỌNG MỌI NGƯỜI HIỂU!!!!
File đính kèm
Lần chỉnh sửa cuối: