2016-11-23 6 views
0

Я пытаюсь этот кодКак получить количество строк в листе?

row = 2 
With Summary 
    .Range("$A$1:$A$100").RemoveDuplicates Columns:=1, Header:=xlYes 
    For row To .Rows.Count 
     .Cells(row, 2) = 1 
     row = row + 1 
    Next row 
End With 

, но я получаю ошибку синтаксиса в для оператора цикла

Как это должно выглядеть?

+0

Операторы 'For' имеют форму' For variable = start To end [Step stepvalue] 'так что вы, вероятно, хотите' For row = 2 To .Rows.Count' – YowE3K

+0

Но см. Ответ Студента Гэри, который остановится вы от заполнения каждой второй строки, для миллиона + строк, со значением 1. – YowE3K

ответ

1

Вам не нужен Loop:

Sub dural() 
    Dim N As Long, summary As Worksheet 
    Set summary = ActiveSheet 

    With summary 
     .Range("$A$1:$A$100").RemoveDuplicates Columns:=1, Header:=xlYes 
     N = .Cells(Rows.Count, 1).End(xlUp).Row 
     .Range("B2:B" & N).Value = 1 
    End With 
End Sub 

Примечание: код предполагает, что нет ничего в колонке .

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