У меня есть таблица Excel с упорядоченным текстовым столбцом и столбцом MoveToRow. Таблица в правильном порядке, но мне нужно разнести строки, добавив пустые строки между значениями, используя столбец MoveToRow.
Ex:
1. cat 2
2. dog 3
3. Rat 5
Есть ли способ в Excel использовать формулу или код vb или c # для перемещения или копирования поля животных в нужную строку, указанную во втором столбце?
Результаты:
1.
2.cat
3.dog
4.
5.rat
или я могу изменить столбец MoveToRow на столбец InsertThisManyRowsAfter, если это возможно.
я бы подумал, что-то вроде этого кода циклы по целочисленному столбцу, который содержит количество строк для вставки ниже текущей, и если значение равно 0, пропустите его, но если значение> = 1, он вставляет это количество строк , Но это не работает должным образом, добавляя слишком много строк и все в одном диапазоне. Где здесь неправильная логика?
Sub Test1()
Dim x As Integer
Dim y As Integer
Dim z As Integer
' Set numrows = number of rows of data.
' NumRows = Range("A2", Range("A2").End(xldown)).Rows.Count
NumRows = 100
' Select cell a1.
Range("I1").Select
' Establish "For" loop to loop "numrows" number of times.
For x = 1 To NumRows
' Insert your code here.
' Selects cell down 1 row from active cell.
y = ActiveCell.Row
z = ActiveCell.Value
If z >= 1 Then
Rows(y & ":" & y + z).Insert Shift:=xlShiftDown
ActiveCell.Offset(1, 0).Select
Else
ActiveCell.Offset(1, 0).Select
End If
Next
End Sub