Создание строки по условию - VBA
Формулировка задачи:
Подскажите пожалуйста, как создать строку по условию, если есть показатель3 или показатель7 то должна создаться строка после показателя3 или показателя7 с формулой темпа роста соответствующего показателя?
ФИО | наименование | Январь 2016 | Февраль 2016 | Март 2016 | Апрель 2016 | Май 2016 |
чел1 | показатель1 | 1 | 2 | 3 | 2 | 1 |
чел1 | показатель2 | 3 | 3 | 3 | 3 | 3 |
чел1 | показатель3 | 3 | 3 | 3 | 3 | 3 |
чел1 | показатель1 | 3 | 3 | 3 | 3 | 4 |
чел1 | показатель5 | 3 | 3 | 3 | 3 | 3 |
чел1 | показатель6 | 5 | 4 | 3 | 5 | 6 |
чел1 | показатель7 | 2 | 1 | 1 | 1 | 1 |
чел2 | показатель1 | 3 | 3 | 3 | 3 | 3 |
чел2 | показатель2 | 3 | 3 | 3 | 3 | 3 |
чел2 | показатель6 | 3 | 3 | 3 | 3 | 3 |
чел2 | показатель3 | 3 | 3 | 3 | 3 | 3 |
чел2 | показатель8 | 3 | 3 | 3 | 3 | 3 |
Решение задачи: «Создание строки по условию»
textual
Листинг программы
Sub qweqwe() Dim i&, j&, LastColumn&, LastRow& LastColumn = ActiveSheet.UsedRange.Columns.Count LastRow = Cells(Rows.Count, 1).End(xlUp).Row For i = LastRow To 2 Step -1 If Cells(i, 2) = "показатель3" Or Cells(i, 2) = "показатель7" Then Rows(i + 1).Insert Cells(i + 1, 2) = "Темп роста" For j = 4 To LastColumn Cells(i + 1, j).FormulaR1C1 = "=R[-1]C/R[-1]C[-1]" Next j End If Next i End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д