Эта программа предназначена для преобразования столбца данных из кумулятивных в некумулятивные. На моем листе у меня есть A1, B1 и C1 с текстом Non-Cumulative, Cumulative и Converted соответственно. У меня есть числа от 1 до 10 под A1, затем они суммируются под B1. C1 - это место, где я хочу преобразовать столбец B обратно в некумулятивный.
IsNumeric используется, чтобы сделать первую строку данных в C равной первой строке данных в B. Он должен определить, что заголовок находится выше числа, которое он оценивает, таким образом зная, что никаких вычислений выполнять не нужно. Для остальных он увидит, что число выше того, которое он оценивает, является числом, и поэтому необходимо выполнить расчет.
Моя проблема в том, что он не работает. Я думаю, причина в том, что IsNumeric() продолжает возвращаться как false. Есть ли другая функция, которую я должен использовать? Ссылки на ячейки не работают в IsNumeric?
Вот программа!
Option Explicit
Dim i As Variant
Sub Conversion()
Sheets("Test Sheet").Select
For i = 1 To 10
If IsNumeric("B" & i) = False Then
Range("C" & i + 1) = Range("B" & i + 1)
Else: Range("C" & i + 1) = Range("B" & i + 1) - Range("B" & i - 1)
End If
Next
End Sub