Страницы: 1
RSS
Автозаполнение чередующихся значение со сдвигим вниз до последнего заполненого ряда
 
Здравствуйте,

Есть вот  такой код. Вносятся данные по условию и потом протягиваются. Трудность возникает когда данных для заполнения <=4 строк.
Ошибка. "Run-time Error 1004. Autofill Method of Range Class Failed”.
"On Error GoTo" Пробовал, немного не подходит.

Как это можно написать код, более "правильно". Включать голову пробовал.:)
Фаил на всякий случай прикрепил.
Спасибо и берегите себя!

Название темы: Автозаполнение чередующихся значение со сдвигим вниз до последнего заполненого ряда.
Код
Sub automatic_data_population()
    Sheets("Sheet1").Activate

    Sheets("Sheet1").Range("C11").FormulaR1C1 = "S"
    Sheets("Sheet1").Range("C12").FormulaR1C1 = "H"
    Sheets("Sheet1").Range("C13").FormulaR1C1 = "=R[-2]C"
    Sheets("Sheet1").Range("C14").FormulaR1C1 = "=R[-2]C"
    Sheets("Sheet1").Range("C13:C14").AutoFill Destination:=Range("C13:C" & Range("D" & Rows.Count).End(xlUp).Row)

    Sheets("Sheet1").Range("B11").FormulaR1C1 = "66815500"
    Sheets("Sheet1").Range("B12").FormulaR1C1 = "69141000"
    Sheets("Sheet1").Range("B13").FormulaR1C1 = "=R[-2]C"
    Sheets("Sheet1").Range("B14").FormulaR1C1 = "=R[-2]C"
    Sheets("Sheet1").Range("B13:B14").AutoFill Destination:=Range("B13:B" & Range("D" & Rows.Count).End(xlUp).Row)
End Sub
 
Оставлю тут. Может пригодится комуто. Мне помогли.
Код
Sub automatic_data_population()
    Dim i As Integer
    Dim lastrow As Integer
    
    With Sheets("sheet1")
    'fetch the row no of lastrow based on the data in column D(4)
    lastrow = .Cells(Rows.Count, 4).End(xlUp).Row
    
    'add row ="S", even row = "H"
    For i = 11 To lastrow
        If i Mod 2 Then
        .Cells(i, 3) = "S"
        Else
        .Cells(i, 3) = "H"
        End If
    Next
    End With
End Sub
 
Alex D, ссылку на кросс дайте хоть
Не бойтесь совершенства. Вам его не достичь.
 
Mershik,
В Баден-Баден собрались?
 
Kuzmich, видимо да
Не бойтесь совершенства. Вам его не достичь.
Страницы: 1
Наверх