2015-08-20 3 views
0

Я пытаюсь создать базовый скрипт VBA для проверки столбца ячеек и добавления чего-то в ту же строку другого столбца, если найдено определенное значение.VBA script - Ошибка компиляции: неправильное количество аргументов

Я потратил часы на это, и изначально он бежал, но не дал результата. Теперь я вновь факторизуюсь код и независимо от того, что я делаю, я получаю ошибку компиляции:

Wrong number of arguments or invalid property assignment.

Это мой код -

Sub Price_Check() 

    Dim i As Integer, SearchList As Range, Price As Currency 
    SearchList = Range("R1:R5000") 
    Price = 3.99 
    i = 0 
    For Each cell In SearchList 
    i = i + 1 
     If cell.Value = Price Then 
      Cells.Value(2, i) = 2000 
    End If 
    Next cell 

    End Sub 

ответ

1
Sub Price_Check() 

Dim i As Integer, SearchList As Range, Price As Currency 
Dim sht As Worksheet, cell As Range 

Set sht = ActiveSheet 'always best to specify a sheet, 
         ' even if it's the default one 

Set SearchList = sht.Range("R1:R5000") '<< added "Set" 
Price = 3.99 
i = 0 
For Each cell In SearchList 
    i = i + 1 
    If cell.Value = Price Then 
     sht.Cells(2, i).Value= 2000 '<< not Cells.Value(2, i) 
            ' is i supposed to be the row though? 
            ' Here it is the column 
    End If 
Next cell 

End Sub 
+0

Brilliant, спасибо так много. И да, вы также были правы, что я столкнулся с колонкой. После изменения это сработало отлично. Я не могу, чем тебя. –

Смежные вопросы