Application.Input框input复制和粘贴选项的范围

我一直在试图从一张纸复制粘贴到另一张纸上,因此应该使用pastelinkfunction复制这些单元格,同时利用input框让用户进入他想要粘贴复制数据的范围。 代码在同一张工作表中工作,但不在另一张工作表上。 即使它起作用,它也不能识别我在input框中input的范围。 相反,它会识别光标,并粘贴光标位于目标工作表中。

这是我用于从表1到表2复制和粘贴的代码。对于为什么它不能识别我在input框中input的范围的代码,是否有任何问题?

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 

这是你正在尝试?

 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 

修改因为…我没有研究。 在其他工作表中select范围后,只需使用这一行代码即可。

 inp.Copy Destination:=ThisWorkbook.Sheets("Sheet2").Range(rng.Address)