首页 > 解决方案 > 我怎样才能使这个公式动态

问题描述

在电子表格中,我有五列带有以下标题

在我的用户表单上,我有一个组合框,用户将从中选择产品,一个命令按钮和一个文本框。该组合框的值是从电子表格产品代码列中填充的。

一旦用户从组合框中选择产品并在文本框中输入一个值(称为“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

标签: vbaexcelexcel-formula

解决方案


是的,如果我正确理解您的答案。如果我没记错的话,VLookup 的作用与此类似。让我举个例子。如果用户从组合框中选择 4120-5-01 (Allergy 180mg 5ct),此时未知的代码行将循环遍历产品描述,直到代码找到产品,然后我猜偏移到该列保存与该产品对应的值并将该值分配给适当的变量。因此,如果产品名称位于单元格 C3 代码将向右偏移 1 在单元格 D3 中获取“Dozens per case”的值并将其分配给 txtDz 并再次将其偏移 1 并将 E3 中的值分配给 txtCs 等等上。


推荐阅读