У меня есть 8000 строк данных в столбце A.Транспонирование секции столбца Excel
Я пытаюсь написать код, который будет сканировать строки и каждый раз, когда есть ячейка отформатирована как полужирный, чтобы определить диапазон, который включает в себя эту ячейку и все ячейки в последующих строках до следующей жирной ячейки. Этот диапазон должен быть скопирован в колонку B, преобразован.
Вот код, который я до сих пор:
Sub Sorting()
Application.ScreenUpdating = False
last_row = ActiveSheet.Range("A" & Cells.Rows.Count).End(xlUp).Row
y = 1
For i = 1 To LastRow
If Range("A" & i).Font.Bold = True Then
Range("A" & i).Copy Range("A" & i + 9)
Range("B" & y).PasteSpecial Transpose:=True
y = y + 1
x = i
Else
Range("A" & x).Copy Range("B" & i)
End If
Next i
Application.ScreenUpdating = True
End Sub
Что происходит, когда вы запускаете код? установка переменной x в блоке If не будет работать, если значение x доступно в блоке Else. Вам нужно установить x перед блоком If или внутри Else. – Matts