该宏用于剪切、插入和删除工作簿的单元格区域部分。
我试图解决并放弃在另一个线程中缺乏响应的问题是,为什么将多个不相邻的行复制到 MS 剪贴板通常会在粘贴时丢失它们的行换行符。
例如,由于尝试将 3 个不相邻的行粘贴到第 10、11 和 12 行,通常将所有 3 行放入第 10 行,其中一行在字段 A10-P10 中,下一行在 Q10-AF10 中,最后一行放入 AG10-AV10 ...
当发生这种情况时,我编辑了下面的宏来修复这个错误。
因此,例如,我现在可以突出显示第 10 行并运行宏以剪切/插入字段 Q10-AF10 到 A11-P11,然后删除/移左 Q10-AF10 中的空白字段。
我希望帮助循环这个过程,直到 Column AP 之外没有数据。在这种情况下,单元格 P10 之外没有数据。
Sub FixAllOnLine1OneRowAtATimeInsertToNextRow()
Application.ScreenUpdating = False
Dim copySheet As Worksheet
Dim pasteSheet As Worksheet
Set copySheet = ActiveSheet
Set pasteSheet = ActiveSheet
copySheet.Range("Q" & ActiveCell.Row & ":AF" & ActiveCell.Row).Copy
Range("Q" & ActiveCell.Row & ":AF" & ActiveCell.Row).Offset(1).Select
pasteSheet.Cells(ActiveCell.Row, 1).End(xlUp).Offset(1, 0).PasteSpecial xlPasteValues
Application.CutCopyMode = False
Application.ScreenUpdating = True
Columns("Q:AF").Select
Selection.Delete Shift:=xlToLeft
End Sub