【发布时间】:2018-11-23 15:08:31
【问题描述】:
我正在尝试制作一个在 find 函数选择的一组单元格上运行的公式。从 Bdgt FY21 开始。该公式的目的是从年度转换为月度并添加一个总和公式;
在起点右侧移动一列,复制单元格值,然后在相邻的 12 列(每年到每月)中基本上输入该值的 12 分之一。然后公式需要将这些数字粘贴为值,跳回年度数字,将其删除,并替换为求和公式。注意我不能使用活动单元格,因为那不允许我在多个选定的单元格上运行代码
下面的代码(不是……是我为缩短帖子而遗漏的其他月份)。代码显然不起作用;
Sub A_MONTHLY()
cell.Offset(0, 2)"=RC[-1]/12"
cell.Offset(0, 2).NumberFormat = "#,##0_);(#,##0);"
cell.Offset(0, 3) "=RC[-2]/12"
cell.Offset(0, 3).NumberFormat = "#,##0_);(#,##0);"
cell.Offset(0, 4) "=RC[-3]/12"
cell.Offset(0, 4).NumberFormat = "#,##0_);(#,##0);"
.......
cell.Offset(0, 13) "=RC[-3]/12"
cell.Offset(0, 13).NumberFormat = "#,##0_);(#,##0);"
cell.Offset(0, 2).range("A1:L1").Select
Selection.PasteSpecial Paste:=xlPasteValues
cell.Offset(0, -1).range("A1").Select
Application.CutCopyMode = False
Selection.ClearContents
cell.FormulaR1C1 = "=SUM(RC[1]:RC[12])"
End Sub
【问题讨论】:
-
请注意,"isn't working" 不是错误描述。此外,我认为截图它在宏之前的外观以及它在宏之后的外观可能有助于理解你想要实现的目标。我推荐How to avoid using Select in Excel VBA