excel - 如何让用户在另一个工作表中选择单元格,然后粘贴到它,在 Excel 中使用 VBA
问题描述
我想从一个工作表中选择一系列单元格,按下一个按钮,让用户选择另一个工作簿中另一张工作表上的单元格,然后将复制的单元格粘贴在那里。
我有以下代码:
Private Sub btnCopyPaste_Click()
Dim CopyWS As Worksheet
Set CopyWS = ActiveWorkbook.Sheets("CopySheet")
Dim rngMyRange As Range
If TypeName(Selection) = "Range" Then
Set rngMyRange = Selection
Dim sCell As String
sCell = Range(Application.InputBox(Prompt:="Pick the Cell", Type:=8)).Value
rngMyRange.Copy .Range(sCell) 'this is the bad line
Else
Exit Sub
End If
End Sub
我正在尝试使用 Application.InputBox 从用户那里获取“要粘贴的单元格”,但是我无法获取有关该单元格的相关信息。比如,工作簿/工作表位置。
当我运行代码并在出现提示时选择“要粘贴的单元格”时,表单上的输入框会显示:'[WorkbookName]SheetName'!$A$1 ..
此信息是否存储在后台,以便我可以使用命令访问它,还是我必须获取此字符串并剖析它?
谢谢您的帮助!
解决方案
像这样的东西应该工作:
Private Sub btnCopyPaste_Click()
Dim rngMyRange As Range, c As Range
If TypeName(Selection) = "Range" Then
Set rngMyRange = Selection
On Error Resume Next 'in case user cancels
Set c = Application.InputBox(Prompt:="Pick the Cell", Type:=8)
On Error GoTo 0
If Not c Is Nothing Then rngMyRange.Copy c
End If
End Sub
推荐阅读
- excel - Add a running total to a PowerQuery result
- flutter - 如何更改垂直 pageView 控制器?
- google-apps-script - 在 Google Sheet 中创建 PDF 循环
- javascript - 使用预设缩放级别从书签打开网页
- amazon-web-services - AWS Terraform 试图破坏和重建 RDS 集群
- c++ - 如何使用 c++ 文件 io 修复我的程序?
- node.js - @google-vision npm 包的“类型”属性缺失
- html - 如何在css中实现曲线渐变效果
- vb.net - 将路径保存到 txt 文件 (VB.net)
- android - How to get access to root view in kotlin?