如何在工作表上的所有公式中更改单元格引用

tedi

我是VBA的初学者,所以我希望这不是一个愚蠢的问题。我四处搜寻,找不到一种简单的方法来做我需要的事情。因此,我有一个数据表可提供其他12个工作表(每月1个),并且需要将工作表中所有公式中的单元格引用向下偏移13行。例如:

我需要将公式从“ = Data!C18”更改为“ = Data!C31”

谢谢你的帮助

第一次误解了您的问题。您可以执行以下操作:

如果您的公式是上面给出的简单引用,则此通用方法应该有效:

Sub shift_reference(rgRange As Excel.Range, iRowOffset As Integer)

  Dim rgCell As Excel.Range
  Dim sFormula$, iRow%

  For Each rgCell In rgRange.Cells

    ' read formula from cell
    sFormula = rgCell.FormulaR1C1

    ' cut off = sign from equation
    sFormula = Right$( sFormula, Len( sFormula ) - 1 )

    ' insert offset command and reassemble
    sFormula = "= offset( " + sFormula + ", " + CStr( iRowOffset ) + ", 0 )"

    ' set new formula for this cell
    rgCell.FormulaR1C1 = sFormula  

  Next rgCell
End Sub

当然,最困难的部分是注释过的部分-如果您所有的公式都只是上面给出的引用,那么这应该不难,只是有些乏味(您需要使用字符串从公式中提取行号和列号,操作)。您需要任何帮助吗?

更新:好的,您还可以简单地插入offsetExcel中可用命令。这为您提供了更多选择:现在,我使用了“硬编码”行偏移量-作为参数传递的行偏移量。另外,您也可以使用单元格引用,在其中输入ror偏移量-如果需要更改,只需更新一个参数即可。假设包含偏移量的单元格为A1,则代码中的插入行变为

sFormula = "= offset( " + sFormula + ", A1, 0 )"

最后但并非最不重要的一点是,也没有什么可以阻止您也插入偏移量,在这种情况下,您需要0用您的内心需求替换偏移量公式的第三个参数(当前包含)。

在这一点上,我要指出的是,我现在不在任何Windows计算机上,因此我正在进行干式编码,但这应该还可以。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在整个工作簿中的所有工作表中的所有单元格上执行代码

来自分类Dev

当工作表中的任何单元格更改时,Excel VBA重新运行公式(更新)

来自分类Dev

如何在Laravel Excel中更改所有单元格的高度和宽度

来自分类Dev

如何创建和命名引用工作簿中单元格的Excel工作表

来自分类Dev

如何在Excel中的所有工作表中以特定颜色计算单元格

来自分类Dev

在编辑公式时如何突出显示(其他工作表中的单元格)?

来自分类Dev

在许多工作表的不同工作表中,根据单元格(其中具有公式)更改选项卡颜色

来自分类Dev

在工作表的所有单元格中更改工作簿引用

来自分类Dev

复制Excel工作表并在公式中维护相对单元格引用

来自分类Dev

使用单元格的内容引用公式中的工作表名称

来自分类Dev

如何跨列和行复制公式,调整单元格引用和工作表名称

来自分类Dev

如何引用其他工作表中的单元格

来自分类Dev

如果第一列与另一个工作表上的值匹配,如何返回一行中的所有单元格

来自分类Dev

我可以从Excel中的所有工作表中选择所有单元格吗?

来自分类Dev

如何在公式中引用包含通配符的单元格?

来自分类Dev

公式中的Excel单元格引用

来自分类Dev

Excel-在RAND公式中的另一张工作表上使用单元格引用

来自分类Dev

更改档案所有工作表中的单元格公式

来自分类Dev

使用VBA清除工作表中所有不包含公式的单元格?

来自分类Dev

Excel VBA如何使用工作表上的公式编辑每个单元格

来自分类Dev

如何在不重写与之链接的所有公式的情况下将输入单元格移动到另一张工作表?

来自分类Dev

如何使用在公式的单元格中引用的工作表名称?

来自分类Dev

如何在包含值的行中查找所有单元格引用,并将其显示在一个单元格中?

来自分类Dev

更改工作表中的所有公式

来自分类Dev

使用 VBA 替换列中所有单元格的公式中的工作表名称

来自分类Dev

如何在excel中更改单元格的背景,通过使用公式,没有条件格式

来自分类Dev

vba 输入公式引用另一个动态工作表中的单元格

来自分类Dev

需要公式在所有可用的工作表上添加单元格 B5(将创建未来的工作表)并在单元格 D5 上显示总数

来自分类Dev

更改大量工作表的单元格公式中的工作表引用

Related 相关文章

  1. 1

    在整个工作簿中的所有工作表中的所有单元格上执行代码

  2. 2

    当工作表中的任何单元格更改时,Excel VBA重新运行公式(更新)

  3. 3

    如何在Laravel Excel中更改所有单元格的高度和宽度

  4. 4

    如何创建和命名引用工作簿中单元格的Excel工作表

  5. 5

    如何在Excel中的所有工作表中以特定颜色计算单元格

  6. 6

    在编辑公式时如何突出显示(其他工作表中的单元格)?

  7. 7

    在许多工作表的不同工作表中,根据单元格(其中具有公式)更改选项卡颜色

  8. 8

    在工作表的所有单元格中更改工作簿引用

  9. 9

    复制Excel工作表并在公式中维护相对单元格引用

  10. 10

    使用单元格的内容引用公式中的工作表名称

  11. 11

    如何跨列和行复制公式,调整单元格引用和工作表名称

  12. 12

    如何引用其他工作表中的单元格

  13. 13

    如果第一列与另一个工作表上的值匹配,如何返回一行中的所有单元格

  14. 14

    我可以从Excel中的所有工作表中选择所有单元格吗?

  15. 15

    如何在公式中引用包含通配符的单元格?

  16. 16

    公式中的Excel单元格引用

  17. 17

    Excel-在RAND公式中的另一张工作表上使用单元格引用

  18. 18

    更改档案所有工作表中的单元格公式

  19. 19

    使用VBA清除工作表中所有不包含公式的单元格?

  20. 20

    Excel VBA如何使用工作表上的公式编辑每个单元格

  21. 21

    如何在不重写与之链接的所有公式的情况下将输入单元格移动到另一张工作表?

  22. 22

    如何使用在公式的单元格中引用的工作表名称?

  23. 23

    如何在包含值的行中查找所有单元格引用,并将其显示在一个单元格中?

  24. 24

    更改工作表中的所有公式

  25. 25

    使用 VBA 替换列中所有单元格的公式中的工作表名称

  26. 26

    如何在excel中更改单元格的背景,通过使用公式,没有条件格式

  27. 27

    vba 输入公式引用另一个动态工作表中的单元格

  28. 28

    需要公式在所有可用的工作表上添加单元格 B5(将创建未来的工作表)并在单元格 D5 上显示总数

  29. 29

    更改大量工作表的单元格公式中的工作表引用

热门标签

归档