简体   繁体   中英

Excel formula error on VBA

I am trying to put the following code into VBA. What I ideally want is to apply the formula to the column H when column A is empty. Any help would be appreciated. endPosition is a variable which holds the row# value where column A is empty.

ActiveCell.Formula = "=SUM(N(FREQUENCY(R[endPosition]C[-1]:R[endPosition]C[-1],R[endPosition]C[-1]:R[endPosition]C[-1])>0))"

This formula is applied at the end when the loop sees a blank cell:

    Range("A1").Select
    beginPosition = 2 'Start from row number 2
    Do While IsEmpty(ActiveCell.Offset(1, 0)) = False
    ActiveCell.Offset(1, 0).Select
    endPosition = ActiveCell.Row
    Loop
    endPosition = endPosition + 1
    Range("H15").Select
    ActiveCell.Formula = "=SUM(N(FREQUENCY(R[endPosition]C[-1]:R[endPosition]C[-1],R[endPosition]C[-1]:R[endPosition]C[-1])>0))"

Assuming the formula is correct, if endPosition is a variable, you should not include it in the string:

ActiveCell.FormulaR1C1 = "=SUM(N(FREQUENCY(R[" & endPosition & _
     "]C[-1]:R[" & endPosition & "]C[-1],R[" & endPosition & _
     "]C[-1]:R[" & endPosition & "]C[-1])>0))"

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM