2014-12-04 47 views
0

非专业VBA试图调试我的代码。制作这些代码的人已经过世了。 此子是这样的:调试.Cells(i - 3,“A”)。Formula =“= Sheet2!A”&i&“”

Sub UpdateFormulaCUI() 
Dim i As Integer 
i = 6 
With Sheets("CUI") 

    Do Until Sheets("Sheet2").Cells(i, "A") = "" 


     .Cells(i - 3, "A").Formula = "=Sheet2!A" & i & "" 
     .Cells(i - 3, "B").Formula = "=IFERROR(VLOOKUP(A" & i - 3 & ",Purchases!A:P,7,FALSE),"""")" 
     .Cells(i - 3, "D").Formula = "=GETPIVOTDATA(""Sum of Inventory"",Sheet2!$A$3,""Inventory" & Chr(10) & "Number"",A" & i - 3 & ")" 
     .Cells(i - 3, "E").Formula = "=GETPIVOTDATA(""Average of Cost $"",Sheet2!$A$3,""Inventory" & Chr(10) & "Number"",A" & i - 3 & ")" 
     .Cells(i - 3, "F").Formula = "=D" & i - 3 & "*E" & i - 3 & "" 

    i = i + 1 
    Loop 
End With 
i = 6 
With Sheets("CUI") 

    Do Until Sheets("Sheet2").Cells(i, "A") = "" 


     .Cells(i - 3, "A") = .Cells(i - 3, "A") 
     .Cells(i - 3, "B") = .Cells(i - 3, "B") 
     .Cells(i - 3, "D") = .Cells(i - 3, "D") 
     .Cells(i - 3, "E") = .Cells(i - 3, "E") 
     .Cells(i - 3, "F") = .Cells(i - 3, "F") 

    i = i + 1 
    Loop 

End With 

End Sub 

在这篇文章的主题线路被停止。凭借我对VBA的有限了解,我无法理解"=Sheet2!A" & i & ""代表什么。
请帮忙!

+1

请问你能解释一下更好的问题是什么?你想让人们回答什么? – Elisha 2014-12-04 15:52:45

+0

代码使用i作为变量在每次循环时添加(1),以便公式中的引用随着循环而变化。根据i的值,Ai可以是A1,A2,A3,A4。这个&是VB注意到你要添加更多引用内容的方式。 'str =“this”-------“Hope”&str&“helps” – peege 2014-12-04 17:05:42

回答

1

这条线:

.Cells(i - 3, "A").Formula = "=Sheet2!A" & i & "" 

指出在特定细胞被设置为特定字符串。变量'i'是一个在循环中改变的数字。例如,当i = 5,你已经基本上得到了:

.Cells(2, "A").Formula = "=Sheet2!A5" 

如果步宏并停止它,你会发现,你所引用的单元格有一个公式现在在里面,它应该be = Sheet2!A5

如果工作表不存在,那可能会导致您的错误。

当这停止时,它是否会给出特定的错误?

在此处添加信息 - 上面的参考是指工作表的名称,而不是您在宏编辑器中看到的列表。

所以,如果你Sheet11(Sheet2),那就是你正在引用的那个。如果您看到Sheet2(销售),那张表的名称是'销售' - 这就是您在公式中使用的内容。

+0

这回答了我的问题。你可以添加链接到这个类型的单元格引用的类型被描述的库吗?我的意思是“&i&” – clic 2014-12-04 17:36:16

+0

现在,这里是截图的链接:https://www.dropbox.com/s/jy3jki3qf644epk/Screenshot%202014-12-04%2012.49.28.png?dl=0 so在左侧面板中可以看到Sheet11(Sheet2),然后再往下看Sheet2(Sales)。那么现在我们之前提到的这个参考是指哪一个?谢谢 – clic 2014-12-04 17:51:33

+0

clic - 请参阅答案中的其他信息。 – asylumax 2014-12-04 18:49:15

相关问题