Add formula expression instead of values in VBA Macro excel code
我正在编写一个 VBA 代码来在 excel 上进行一些计算。
我有一个带有数字的单元格,我希望另一个单元格具有基于第一个的公式,而不是具有公式的计算值。我一直在尝试使用 .Formula 但它不起作用:
1 2 3 4 5 | 'Ciclo Cells(rowWhereToAddPhase, 6).Value = Round(3600 / Worksheets(originalSheet.Name).Cells(row, 22), 2) 'Prod/h Cells(rowWhereToAddPhase, 7).Formula ="=Round(60 / Cells(rowWhereToAddPhase, 6).Value * 60, 0)" |
当我尝试这个时,我只是得到错误 400。
如果我改用这个:
1 2 | 'Prod/h Cells(rowWhereToAddPhase, 7).Value= Round(60 / Cells(rowWhereToAddPhase, 6).Value * 60, 0) |
我只是得到一个普通的数字。
图片,第二种情况下的样子:
在此处输入链接描述
我多么想拥有它:
在此处输入链接描述
我想问题是如何调用单元格:我使用
有什么想法吗?
谢谢
1 2 | Cells(rowWhereToAddPhase, 7).Formula = _ "=Round(60/" & Cells(rowWhereToAddPhase, 6).Address() &"*60,0)" |
.Formula 必须是一个字符串,其内容与您在 Excel 中手动输入公式时的内容相同(例如 oRange.Formula ="=SUM(A5:C7)")。
尝试在 Excel 单元格中手动创建公式。然后当它工作时,通过 VBA 设置它,也许使用一些字符串连接来获取变量 rowWhereToAddPhase 。