excel - 如何仅通过在 Excel 中选择起始单元格来记录宏以复制和粘贴表格?
问题描述
我希望能够记录一个宏,只需选择起始单元格即可在工作表的任何位置复制和粘贴一个小的 3x2 表格。这是我尝试的代码,但是当我选择一个单元格来运行我的宏时,结果是空白的。
ActiveCell.Offset(1, 0).Range("A1:B3").Select
Selection.Copy
ActiveCell.Range("A1").Select
Selection.PasteSpecial Paste:=xlPasteAllUsingSourceTheme, Operation:=xlNone _
, SkipBlanks:=False, Transpose:=False
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Application.CutCopyMode = False
End Sub
解决方案
我认为这是比依赖Active Cell
.
提示您的用户Input Box
,允许他们选择所需的单元格。
此代码还考虑了用户点击的可能性 Cancel
Option Explicit
Sub Copy_Table()
Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Sheet1") '<-- UPDATE SHEET
Dim MyTable As Range, PasteRange As Range
Set MyTable = ws.Range("A1:B3")
On Error Resume Next
Set PasteRange = Application.InputBox("Select Desired Location for Table", Type:=8)
On Error GoTo 0
If Not PasteRange Is Nothing Then
PasteRange.Resize(3, 2).Value = MyTable.Value
End If
End Sub
推荐阅读
- python - MFRC522 在我的代码中读取 NTAG213 的时间太长,但在其他代码中它很快
- javascript - 加载失败。有关详细信息,请参阅输出窗口 (ctrl+Alt+O)
- windows - 用于单击多个按钮的 Serenity BDD 测试
- python - pip3 安装 PyYAML 失败。(python3.7,macOS High Sierra)
- javascript - Firebase 处理异步函数
- selenium-webdriver - 无法在 selenium webdriver 中设置 cookie,因为日期已被贬低
- python - 使用 Python 进行数据分析
- java - JTable 中没有选择整行
- mockmvc - 在@SpringBootApplication主类中配置ServletRegistrationBean,用mockmvc响应404测试
- java - 没有发现 Spring 验证器程序的 WebApplicationContext 异常