У меня есть код для копирования - вставка диапазона после существующих столбцов. Существует необходимость иметь возможность распределять его также между существующими столбцами. Таким образом, он вставит скопированный диапазон справа после следующей выбранной ячейки. Проблема здесь в том, что нет возможности добавить больше столбцов с помощью «Вставить». Таким образом, существующие данные должны быть как-то сдвинуты вправо. По копии - вставить? Это единственное решение и как это сделать технически?
Так что, если я выберу объединенные ячейки H: I и нажму ADD, код переместитсяJ: K и L: M справа и вставьте скопированный диапазон туда, где недавно был J: K.
Мой текущий код кнопки ADD:
Sub CopyPasteTurbineOwnWork()
Application.ScreenUpdating = False
Dim StartRange As Range
Dim cello As Range
Set cello = Worksheets("Price calculation").Cells(13, Columns.Count)
Set StartRange = Worksheets("Price calculation").Range("D13")
StartRange.MergeArea.Copy
cello.End(xlToLeft).Offset(0, 1).PasteSpecial xlPasteAll
StartRange.Offset(1, 0).Resize(16, 2).Copy
cello.End(xlToLeft).Offset(1, 0).PasteSpecial xlPasteAll
StartRange.Offset(17, 0).MergeArea.Copy
cello.End(xlToLeft).Offset(17, 0).PasteSpecial xlPasteAll
StartRange.Offset(18, 0).Resize(2, 2).Copy
cello.End(xlToLeft).Offset(18, 0).PasteSpecial xlPasteAll
StartRange.Offset(148, 0).MergeArea.Copy
cello.End(xlToLeft).Offset(148, 0).PasteSpecial xlPasteAll
StartRange.Offset(149, 0).Resize(5, 2).Copy
cello.End(xlToLeft).Offset(149, 0).PasteSpecial xlPasteAll
Set StartRange = Nothing
Set pasteSheet = Nothing
Set cello = Nothing
Application.CutCopyMode = False
Application.ScreenUpdating = True
End Sub