excel - 将一系列单元格剪切并粘贴到选定的目标位置
问题描述
我想剪切并粘贴一系列单元格(例如 A2:D2 到 B1:E1),然后对 692 行重复此过程。
我一直在尝试在宏中执行此操作,但是没有成功。
Sub cut_paste()
Dim nr As Integer
For nr = 1 To 692
Range("A" & nr).Select
Selection.Cut
Range("B" & nr).Select
ActiveSheet.Paste
Range("B" & nr).Select
Selection.Cut
Range("C" & nr).Select
ActiveSheet.Paste
Range("C" & nr).Select
Selection.Cut
Range("D" & nr).Select
ActiveSheet.Paste
Range("D" & nr).Select
Selection.Cut
Range("E" & nr).Select
ActiveSheet.Paste
Next nr
End Sub
错误 4001
解决方案
尝试:
Option Explicit
Sub test()
Dim Lastrow As Long, i As Long
With ThisWorkbook.Sheets("Sheet1")
Lastrow = .Cells(.Rows.Count, "A").End(xlUp).Row
For i = 3 To Lastrow Step 2
.Range("A" & i & ":D" & i).Cut .Range("B" & i - 1 & ":E" & i - 1)
Next i
End With
End Sub
推荐阅读
- angular - 为什么 ngxClipboard 抱怨需要输入元素?
- php - 响应 GetExpressCheckoutDetails 调用 PayPal NVP API 时缺少 SHIPPINGOPTION 值
- django - 将 Windows Django 项目文件夹设置为 OS-X/Linux 样式
- python - 无法在 Linux 上打开 Pyspark Shell
- python - 什么我无法在当前目录中导入经过验证的代码?
- php - Laravel foreach 每个项目增加 3
- delphi - 访问不带名称的过程参数
- hive - Hive-Hbase 集成 - 插入数据时的问题
- javascript - 这是此 JavaScript (JSX) 代码的正确 PHP 代码吗?
- excel - Application.Caption 行为:也返回窗口标题