Home Articles

我可以为多张床单使用一种配方吗?

Asked
Viewed 1967 times
0

我有一张目前有20张的工作簿,每天大约增加3张 .
所有工作表在H-L列中使用相同的公式 .
但有时我会在公式中发现错误或需要为其添加条件然后我需要使用相同的公式更新所有工作表公式 . 这就是问题所在 .

我可以在某个单元格中的某个单元格和每个列中引用该公式,只是引用此公式,这样如果我更改此单元格中的公式,它将在所有位置发生变化吗?

在每张纸上,我需要公式“填充”大约2300行 .

在sheet1中

A1
=A1+B1

在sheet2中

A1
='sheet1'!A1    // will calculate A1+B1

有人知道这样做的方法吗?

2 Answers

  • 2

    您可以在VBA中为您的目标创建一个UDF(用户定义的函数):

    按Alt F11,在项目资源管理器中右键单击项目,然后选择“插入” - >“模块” . 粘贴下面的代码:

    Function ExecuteFormula(ByVal Target As Range)
    
       On Error Resume Next
    
       ExecuteFormula = Evaluate(Target.Formula)
    
    End Function
    

    现在你可以像所有其他功能一样使用 ExecuteFormula() . 如果要在主表中输入公式作为字符串 "=A1+B1" 只需将第3行替换为:

    ExecuteFormula = Evaluate(Target.Value)
    

    我希望这有帮助 .

  • 0

    如果所有工作表具有相同的结构,则可以使用3D选择来更改所有工作表上相同单元格中的公式 .

    例如,如果工作簿具有工作表1到10,请在Sheet1中选择单元格B1,然后按住Shift键并单击Sheet10 . 现在,无论工作表名称是什么,都会选择从Sheet1到Sheet10的所有工作表中的所有单元格B1 .

    输入类似 =A1+A2 的公式,然后按Enter键 . 单击任何工作表并检查结果 . B1将在每张纸中具有该公式 .

    现在返回Sheet1,选择B1,按住Shift并单击Sheet10 . 将公式更改为 =A1*A2 (乘以而不是添加)并按Enter键 . 复制公式 .

    检查其他工作表,看看是否已应用相同的公式并将其复制到所有其他工作表上 .

    使用此技术,您可以在工作簿的所有工作表中选择相同的单元格,并通过一次编辑更改所有工作表中的公式 . 当然,只有在选择中的所有工作表具有相同的数据结构时,它才有效 .

    评论后编辑:您可以使用第一张工作表作为公式母版工作表,只需要记住,如果要更改公式,首先必须使用3D选择 . 除此之外,Excel不以您描述的方式提供公式复制 . 对单元格的引用将始终返回单元格的值,而不是其公式 .

Related