На моем листе 5 столбцов, заполненных данными, и когда я дважды щелкну мышью на любой ячейке, появится поле ввода для ввода «Количество строк» и несколько раз скопировано. До сих пор все работает нормально, но мое требование - только скопировать данные двух столбцов (A & B) и очистить содержимое данных других столбцов только для созданных новых строк.
Мои данные Excel:
Настоящее решение:
Мои требования должны выглядеть следующим образом:
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Dim xCount As Integer
LableNumber:
xCount = Application.InputBox("Number of Rows", "Copy previous data of Team and Place", , , , , , 1)
If xCount < 1 Then
MsgBox "the entered number of rows is error, please enter again", vbInformation
GoTo LableNumber
End If
ActiveCell.EntireRow.Copy
'copy and move down
Range(ActiveCell.Offset(1, 0), ActiveCell.Offset(xCount, 0)).EntireRow.Insert Shift:=xlDown
'clear the contents only for new rows added from the column C to column D
Sheets(ActiveSheet.Name).Range(ActiveCell.Offset(1, 4), ActiveCell.Offset(1, 4)).Select
Selection.ClearContents
Application.CutCopyMode = False
End Sub