我一直试图从一个工作表复制和粘贴到另一个工作表,这样就应该使用粘贴链接功能复制单元格,同时使用输入框让用户输入要粘贴复制数据的区域。代码在同一个工作表内工作,但不在另一个工作表上工作。即使它有效,它也不识别我在输入框中输入的范围。相反,它识别游标并粘贴游标在目标工作表中。
这是我用来复制和粘贴从第1页到第2页的代码。代码有什么问题吗?为什么它不识别我在输入框中输入的范围?
Sub tryuserinput()
Dim rng As Range
Dim inp As Range
Selection.Interior.ColorIndex = 37
Set inp = Selection
Set rng = Application.InputBox("Copy to", Type:=8)
inp.Copy
rng.Select
Worksheets("Sheet2").Paste Link:=True
End Sub发布于 2015-08-03 06:02:45
这就是你想要的吗?
Sub Sample()
Dim rng As Range, inp As Range
'~~> Check if what the user selected is a valid range
If TypeName(Selection) <> "Range" Then
MsgBox "Select a range first."
Exit Sub
Else
Set inp = Selection
inp.Interior.ColorIndex = 37
End If
Set rng = Application.InputBox("Copy to", Type:=8)
If Not rng Is Nothing Then
rng.Parent.Activate
rng.Select
inp.Copy
ActiveSheet.Paste Link:=True
End If
End Sub发布于 2015-08-03 03:01:54
修正是因为.我没有研究。选择其他工作表中的范围后,只需使用这一行代码即可。
inp.Copy Destination:=ThisWorkbook.Sheets("Sheet2").Range(rng.Address)https://stackoverflow.com/questions/31778749
复制相似问题