【问题标题】:Can't use ActiveSheet in a formula不能在公式中使用 ActiveSheet
【发布时间】:2022-07-21 20:47:28
【问题描述】:

我尝试在公式中插入我的 ActiveSheet 名称。仍然不明白为什么它不起作用......

Sub AddResume()

    Dim ws As Worksheet: Set ws = Worksheets("Résumé")
    Dim LastRow As Long: LastRow = ws.Cells(Rows.Count, 1).End(xlUp).Offset(1).Row
    Dim namee As String: namee = ActiveSheet.Name
    
     ActiveSheet.Range("B1").Copy
     ws.Cells(LastRow, 1).PasteSpecial xlPasteValues

Application.CutCopyMode = False
 
    For i = 1 To 200
       If ws.Cells(i, 1) = ActiveSheet.Range("P3").Value Then
          ws.Cells(i, 2).FormulaR1C1 = "=""&namee&"!P3"
       End If
    Next
  
Application.CutCopyMode = False
 

End Sub

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    您必须将工作表变量名称放在单引号中

    ws.cells(i,2).Formula = "='" & namee & "'!P3"

    当您引用一个单元格时 - 您不需要 FormulaR1C1 这是一个相对公式。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-09-01
      • 1970-01-01
      相关资源
      最近更新 更多