在计算公式时,我一直使用用户输入的小数(货币换算,例如1.12(。我不知道如何在公式中引用myvalue
,也不知道是否需要将其调暗为double或vartype?
输入的值(例如1.12(应用于计算的所有3个范围行,但现在我遇到了名称错误,因为在我运行宏后,公式无法识别myvalue
。我在定义上做错了什么?
' convert_in_EUR_column_GHL Macro
Dim gRow As Long, hRow As Long
Dim myvalue As Double
gRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, 7).End(xlUp).Row
hRow = ActiveSheet.Cells(ActiveSheet.Rows.Count, 8).End(xlUp).Row
myvalue = InputBox("Enter 2 decimal currency conversion rate")
Range("M2").Resize(gRow).FormulaR1C1 = "=IFERROR(IF(IFERROR(RC[-6]/myvalue,"""")=0,"""",RC[-6]/myvalue),"""")"
Range("N2").Resize(hRow).FormulaR1C1 = "=IF(IFERROR(RC[-6]/myvalue,"""")=0,"""",RC[-6]/myvalue)"
Range("O2").Resize(hRow).FormulaR1C1 = "=IF(IFERROR(RC[-3]/myvalue,"""")=0,"""",RC[-3]/myvalue)"
您没有错误地实现它。
Range("M2").Resize(gRow).FormulaR1C1 = "=IFERROR(IF(IFERROR(RC[-6]/myvalue,"""")=0,"""",RC[-6]/myvalue),"""")"
应该是
Range("M2").Resize(gRow).FormulaR1C1 = "=IFERROR(IF(IFERROR(RC[-6]/" & myvalue &
","""")=0,"""",RC[-6]/" & myvalue &
"),"""")"
因为公式将不能评估作为存储在存储器中的变量的CCD_ 5部分。同样,您应该能够修复其他公式。