Excel VBA绝对参考

对Excel很新。 我有3张表格在Excel中。 我正在尝试将旧的值粘贴到一个单元格中,并从另一个表单中查找新的值。 我的问题是

  1. 如何引用公式中的其他表(例如,在包含Match的函数中),我想引用表单EDR而不是使用'for edr II'!

  2. 我如何使用绝对参考? 例如,我想在查找表中查找G列而不是C [4]?

对Excel很新,所以我想以适当的方式学习,并知道经验法则。 谢谢

Sub EDRII() Dim EDR As Worksheet, Lookup As Worksheet, FA As Worksheet Set EDR = ThisWorkbook.Worksheets("for edr II") Set Lookup = ThisWorkbook.Worksheets("Lookup") Set FA = ThisWorkbook.Worksheets("FA_Segment_Region") 'Copy & Paste Past Values EDR.Range("B6:X10").Value = EDR.Range("B5:X9").Value 'Lookup Value from Lookup Tab EDR.Range("C10").FormulaR1C1 = _ "=INDEX(Lookup!C[4],MATCH('for edr II'!R[-8]C[-1],Lookup!C[3],0))" EDR.Range("D10").FormulaR1C1 = _ "=INDEX(Lookup!C[4],MATCH('for edr II'!R[-8]C[-2],Lookup!C[2],0))" End Sub 

要指定绝对范围,请删除方括号。 如果公式引用自己的工作表,则根本不需要工作表名称。

 With EDR .Range("C10").FormulaR1C1 = "=INDEX(Lookup!C7,MATCH('" & .Name & "'!R[-8]C[-1],Lookup!C[3],0))" .Range("D10").FormulaR1C1 = "=INDEX(Lookup!C7,MATCH('" & .Name & "'!R[-8]C[-2],Lookup!C[2],0))" End With