vba - 我怎样才能使这个公式动态
问题描述
在电子表格中,我有五列带有以下标题
- 单元格 B3 中的“产品代码”
- 单元格 C3 中的“产品说明”
- 单元格 D3 中的“每个案例几十个”
- 单元格 E3 中的“每托盘箱数”
- 单元格 F3 中的“UOM”(表示计量单位)
在我的用户表单上,我有一个组合框,用户将从中选择产品,一个命令按钮和一个文本框。该组合框的值是从电子表格产品代码列中填充的。
一旦用户从组合框中选择产品并在文本框中输入一个值(称为“txtbxdz”)并单击命令按钮,就会执行一个公式。
目前,这些值被硬编码到程序中,如下面的公式所示。
Private Sub cmdbtnPrint_Click()
Dim textValUp As Long
Dim textValDown As Long
Dim txtUOM As String
Dim txtCs As Long
Dim txtDz As Long
Case Is = "4120-5-01 (ALLERGY 180MG 5CT)"
txtDz = 2
txtCs = 200
txtUOM = "DZ"
End Select
textValUp = ((txtbxdz.Value) / txtDz / txtCs) + 0.5 - 1E-16
textValDown = ((txtbxdz.Value) / txtDz / txtCs) - 0.5 + 1E-16
End Sub
解决方案
是的,如果我正确理解您的答案。如果我没记错的话,VLookup 的作用与此类似。让我举个例子。如果用户从组合框中选择 4120-5-01 (Allergy 180mg 5ct),此时未知的代码行将循环遍历产品描述,直到代码找到产品,然后我猜偏移到该列保存与该产品对应的值并将该值分配给适当的变量。因此,如果产品名称位于单元格 C3 代码将向右偏移 1 在单元格 D3 中获取“Dozens per case”的值并将其分配给 txtDz 并再次将其偏移 1 并将 E3 中的值分配给 txtCs 等等上。
推荐阅读
- mysql - 将 MySQL 变量查询转换为 SQLite 查询
- java - 性能:最终尝试还是保存到变量并稍后返回?
- laravel - Laravel 验证器:防止同时提交 2 个参数
- python - 使用 list 和 dict 在 python 中创建多个电话簿记录
- jupyter-notebook - 无法让环境内核与 Jupyter notebook 一起使用 geopandas
- azure - 具有身份验证类型 SSH 公钥身份验证的 Azure 数据工厂 SFTP 连接
- javascript - 如何删除 indexeddb 和 firebaseLocalStorage
- mysql - MySQL WHERE 子句链接到另一个表
- reactjs - 如何在 React 中测试是否从 Redux mapStateToProps 收到了 props?
- python - 根据值拆分 Pandas 数据框列