调用变量并分配变量的有效方法

时间:2019-09-18 16:20:18

标签: excel vba

潜伏在后的第一次海报,所以如果我做的不正确,请告诉我!

基本上,我收到“过程太大,编译错误” 而我正试图将它们分解为更小的子例程

这个想法是能够从工作簿A提取数据,并根据工作簿A的单元格中存储的动物类型调用工作簿B或C(等)

 '.....Code that opens workbooks/declares variables....'

Set test_wb = Workbooks.Open(Filename:=test_path, ReadOnly:=True)
Set DataTab = DataTab.Worksheets("DataWorksheet")



  For i = 1 To N

    With DataTab
A_Type = .Range(Cells(i, 8).Address).Text
A_Gender = .Range(Cells(i, 9).Address).Text
A_Owner = .Range(Cells(i, 10).Address).Text

这将打开数据工作表,并将Cells作为变量存储在DataTab中,并循环遍历所有动物

  If Animal = Chicken
    With TabPotato

.range("_Animal") = A_Type
.range("_Gender").Value = A_Gender
.range("_Owner").Value = A_Owner

  If Animal = Rabbit

    With TabHouse
.range("_Creature") = A_Type
.range("_Sex").Value = A_Gender
.range("_Hooman").Value = A_Owner

现在这是我的问题所在;分配存储变量的最佳方法是什么, 根据动物标准进入其他excel-名称管理器。

理想情况下,我希望它看起来像

If Animal = Chicken
Call Rabbit()
Else
Call = Rabbit()

但是这样做,在Rabbit()中,存储的变量超出范围。我相信使用全局变量是解决此问题的方法,但是我对如何设置一个循环以将变量作为全局变量存储在另一个电子表格的循环中一无所知。

任何帮助/地方向我指出在哪里可以学到的知识,我们将不胜感激! [或有关改善我写的任何内容的建议] 我正在处理100-200个变量,所以这就是为什么我过大的程序的原因:(

0 个答案:

没有答案