Я не Excel или эксперт VBA, но я хочу вставить эту текущую формулу Excel в использование ячейки VBA.
Текущая Формула Excel:
=IF(OR(ISNUM(D570)=FALSE;ISNUM(D573)=FALSE);"";IF(C573="Total";D573-D570;""))
Формула VBA:
ActiveSheet.Range("a" & ActiveSheet.Rows.Count).End(xlUp).Offset(2, 12).Value = "=IF(OR(ISNUM(R[-3]C[-9])=FALSE;ISNUM(R[0]C[-9])=FALSE);'';IF(R[0]C[-10]='Total';R[0]C[-9]-R[-3]C[-9];''))"
Это не работает …, Кто-то может помочь мне?
Probeer .formula =
in plaats van .value =
in je VBA-code.
Door de .waarde
van een cel in te stellen, kopieert u eenvoudig de waarde die u opgeeft. In dit geval wordt uw formule eenvoudig geconverteerd naar een tekenreekswaarde.
Door de eigenschap .formula
te gebruiken, specificeert u feitelijk de formule waarmee de waarde berekent , waarnaar u op zoek bent.
Могу я сначала предложить упрощение вашей формулы, от:
=IF(OR(ISNUM(D570)=FALSE;ISNUM(D573)=FALSE);"";IF(C573="Total";D573-D570;""))
...до......
=IF(AND(C573="Total"; ISNUM(D570); ISNUM(D573)); D573-D570; "")
Затем я бы установил ячейку (активную ячейку в примере ниже), чтобы использовать эту формулу, используя код VBA:
ActiveCell.Formula = "=IF(...)"