我有一个 Excel 存档,其中包含大约 100 个工作表,我想编写 VBA 宏,以便每个工作表的单元格 A1 都包含以下公式:
=RECHERCHEV(B2;'SUMUP'!B$1:H478;3;FAUX)
这是我的宏
Sub WorksheetLoop()
' Declare Current as a worksheet object variable.
Dim Current As Worksheet
' Loop through all of the worksheets in the active workbook.
For Each Current In Worksheets
'Change the formula of cell A1
Current.Range("A1").Formula ="=RECHERCHEV(B2;'SUMUP'!B$1:H478;3;FAUX)"
Next
End Sub
当我执行这个宏时,我收到执行错误“1004”,请注意,SUMUP 是我的存档的一张表
最佳答案
VBA 非常以 EN-US 为中心。 Range.Formula property期望输入为 EN-US;您可以使用 Range.FormulaLocal property如果您想使用非 EN-US Office 语言包 FR-FR 区域。
使用其中之一:
Current.Range("A1").Formula = "=VLOOKUP(B2,'SUMUP'!B$1:H478, 3, False)"
Current.Range("A1").FormulaLocal = "=RECHERCHEV(B2;'SUMUP'!B$1:H478;3;FAUX)"
Current.Range("A1").FormulaLocal = "=REMPLACER(CELLULE(""filename"";A1);1;TROUVE(""]"";CELLULE(""filename"";A1));"""")"
关于vba - 更改存档所有工作表中的单元格公式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32587622/