Vba 如何使此公式具有动态性
在电子表格中,我有五列,标题如下Vba 如何使此公式具有动态性,vba,excel,excel-formula,Vba,Excel,Excel Formula,在电子表格中,我有五列,标题如下 单元格B3中的“产品代码” 单元格C3中的“产品说明” D3单元中的“每箱数十个” 单元格E3中的“每个托盘的箱子” 单元格F3中的“UOM”(表示计量单位) 在我的用户表单上,我有一个用户将从中选择产品的组合框、一个命令按钮和一个文本框。该组合框的值从电子表格产品代码列填充 一旦用户从组合框中选择产品并在文本框(称为“txtbxdz”)中输入值并单击命令按钮,将执行公式 目前,这些值已硬编码到程序中,如下式所示 Private Sub cmdbtnPrin
- 单元格B3中的“产品代码”
- 单元格C3中的“产品说明”
- D3单元中的“每箱数十个”
- 单元格E3中的“每个托盘的箱子”
- 单元格F3中的“UOM”(表示计量单位)
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中的“每箱数十个”值
然后将其分配给txtDz,再将其偏移1,然后将E3中的值分配给txtCs,依此类推。问题是,
如何使某某变量动态?
如果是,请将问题实际包括一个问题:)我不确定你在问什么,但我越是盯着它看,我越想通过将变量传递到函数中来实现硬编码?因此,您希望将变量“传递”到Sub,以便可以使用相同的Sub,但“搜索字符串”中的pas、txtDz、txtCs和TXTOM可能来自工作表单元格值?您可以将一个选择目标传递到Sub中,然后将offset函数传递到相邻单元格中以获取信息,就像行选择一样。需要更多的上下文。