arrays - 库存管理 - 由于到期而注销 qn
问题描述
我有一份物品清单、有效期、数量和使用情况。目标是找出每个到期日的每个项目(如果有的话)在到期前需要注销为未使用的数量。
不同的项目可能有不同的有效期。假设首先使用最短到期日的库存(EEFO)[因此同一项目的不同行被链接],并且当库存到期时,它不能再使用了。
我假设 VBA 循环宏不知何故是最好的方法。我正在阅读并认为可能也需要一个数组,但我在这方面完全是新手。
解决方案
您实际上并不需要 VBA。您可以使用 Excel 公式执行此操作,并且使用一些帮助列会非常容易。如果您不想显示帮助列,可以将它们放在第二个隐藏表上,然后在显示表上显示结果。您编写的任何 VBA 基本上都会做同样的事情,但如果您不熟悉循环等,可能会变得有点复杂。
要获得这些结果:
我使用了这些公式:
我为项目“E”取了你的数字,但为项目“D”做了我自己的数字,所以我可以测试更改 A 列中的项目以确保它有效。
就像我在评论中所说的那样,确保每个项目的到期日期按升序排序。
(例如,按到期日期排序,然后是使该表正常工作的项目)
另一个忠告,如果这些事情大规模发生,那么 SQL 数据库会很好,如果你有 MS ACCESS,你可以尝试将数据放在那里并重新提出问题。
推荐阅读
- android - Firebase 数据库构建 Android
- json - 如何根据 JSON 中的字段对两个表进行 Hive JOIN?
- csv - 使用 awk 解析字段中的字段
- azure - Get-azureRmDisk 不显示属性 DiskState
- python-3.x - 通过 Homebrew 安装的 Python 模块未导入 .command 可执行文件
- java - Spark:用Java打印数据框
- javascript - 插入许多在 mongo DB 中不起作用的原因是什么?
- c# - Blazor 中的数据绑定:如何将值传播出组件?
- c# - DllImport("msvcrt.dll") 在 linux 上运行时不起作用
- jasper-reports - 如何在带有 MS SQL Server 数据库的 netbeans 中使用 javafx 调试 iReport (JasperReport) 中的 java.lang.NullException 错误