2 последних условия не принимаются во внимание при использовании нижеследующего кода. Можете ли вы помочь понять, почему? Также диапазон «r» возвращает мне ожидаемые результаты + 1 ряд. Мне это не удалось изменить. Есть идеи?Кондиционирование не учитывается в a If statment с excel VBA
Dim x As Range
Dim r As Range
Dim j As Range
Set r = Range("J2").End(xlDown)
Set j = Range("D2").End(xlDown)
For Each x In Range("J2", r)
If x.Value < 0 And j = ("long") Or j = ("") Then
x.Offset(1, 0).Select
ActiveCell.FormulaR1C1 = "=R[-1]C+RC[-1]"
End If
Next
End Sub
могли бы Вы более конкретно о том, что проблема? и я не думаю, что вы можете установить такой диапазон (не уверен, хотя). –
Проблема только в 1-м условии работает «если x.Value <0», «j = (« long ») или j = (« »)« не учитываются. Я также пробовал «j.value», J.cells », но он тоже работал. –
возможно' if (x.Value <0) И (j = ("long") Или j = ("")) '? Или некоторые другие комбинации, которые вы пытаетесь достичь с этим заявлением. Имейте в виду порядок выполнения операторов – 2014-09-29 09:55:44