使用另一个子

时间:2016-05-22 21:22:57

标签: excel vba excel-vba

我正在使用excel构建计算器。用户将自己定义为225种内置类型,然后使用该类型的数据自动填充2个计算器。

计算器中有10个数据源。我已经在15x15网格中的10个不同工作表中设置了这些数据。每种类型用户的数据存储在10个不同表中的每一个中的相同单元中。 (例如,如果您是类型20,则该结果的数据将存储在所有10张表格中的单元格"D6"中)。

我试图弄清楚如何在我的代码中更改此引用,以便每种类型的特定单元格引用都存在,但我还没有能够找到正确的方法来完成这项工作。示例代码放在下面:

Sub CallTypeX()
    Dim backendvalue As Range
    Set backendvalue = Range("L17")

    Call CallGeneralCode

End Sub

 Sub CallGeneralCode()
     'Call data for InsCalc, where backendvalue represents appropriate range for type
     ThisWorkbook.Sheets("InsCalc").Range("H18").Value = ThisWorkbook.Sheets("Indic2a").backendvalue.Value

     'Call data for Indicator A worksheet, where backendvalue represents appropriate range for type
     ThisWorkbook.Sheets("IndicatorA").Range("F17").Value =     ThisWorkbook.Sheets("Indic2a").backendvalue.Value
     ThisWorkbook.Sheets("IndicatorA").Range("F18").Value = ThisWorkbook.Sheets("Indic3a").backendvalue.Value
     ThisWorkbook.Sheets("IndicatorA").Range("F19").Value = 0.44

     'Call data for InsCalc, where backendvalue represents appropriate range for type
     ThisWorkbook.Sheets("InsCalc").Range("H19").Value = ThisWorkbook.Sheets("Indic2a").backendvalue.Value

     'Call data for Indicator A worksheet, where backendvalue represents appropriate range for type
     ThisWorkbook.Sheets("IndicatorA").Range("F22").Value = ThisWorkbook.Sheets("Indic2b").backendvalue.Value
     ThisWorkbook.Sheets("IndicatorA").Range("F23").Value = ThisWorkbook.Sheets("Indic3b").backendvalue.Value
     ThisWorkbook.Sheets("IndicatorA").Range("F24").Value = 0.52

'
     'Move to Indicator B section

     [TRUNCATED CODE FOR LENGTH]

基本上,我试图找出如何设置我正在调用的内容" backendvalue"作为该类型的适当范围,无需为我的225种类型中的每一种调用"CallGeneralCode",并替换适当的单元格引用。

我是VBA.

的新手

0 个答案:

没有答案