Страницы: 1
RSS
добавление новой строки после следующей
 
Добрый день!  
Задача - добавить после каждой строки с данными новую пустую строку, в которой нужно приравнять некоторые ячейки к вышележащим и нижележащим. Я записал макрос того что мне нужно  для первых трех строк:  
 
Sub Макрос1()  
'  
' Макрос1 Макрос  
'  
' Сочетание клавиш: Ctrl+e  
'  
   Rows("3:3").Select  
   Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove  
   Range("A3").Select  
   ActiveCell.FormulaR1C1 = "=R[-1]C"
   Range("B3").Select  
   ActiveCell.FormulaR1C1 = "=R[-1]C[1]"
   Range("C3").Select  
   ActiveCell.FormulaR1C1 = "=R[1]C[-1]"
   Rows("5:5").Select  
   Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove  
   Range("A5").Select  
   ActiveCell.FormulaR1C1 = "=R[-1]C"
   Range("B5").Select  
   ActiveCell.FormulaR1C1 = "=R[-1]C[1]"
   Range("C5").Select  
   ActiveCell.FormulaR1C1 = "=R[1]C[-1]"
   Rows("7:7").Select  
   Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove  
   Range("A7").Select  
   ActiveCell.FormulaR1C1 = "=R[-1]C"
   Range("B7").Select  
   ActiveCell.FormulaR1C1 = "=R[-1]C[1]"
   Range("C7").Select  
   ActiveCell.FormulaR1C1 = "=R[1]C[-1]"
   Range("C8").Select  
End Sub  
 
 
Подскажите пожалуйста, как сделать так чтобы этот макрос действовал до последней строчки в которой есть данные??!!
 
Попробуйте  
 
Sub Макрос1()  
Dim i As Long  
For i = Cells(Rows.Count, 1).End(xlUp).Row + 1 To 4 Step -1  
   Rows(i).Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove  
   Cells(i, 1).Resize(, 3).FormulaR1C1 = Array("=R[-1]C", "=R[-1]C[1]", "=R[1]C[-1]")
Next  
End Sub  
 
=97856= стрит!
 
Спасибо большое! всё получилось!
Страницы: 1
Читают тему
Loading...