首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >输入复制和粘贴选项范围的Application.Input框

输入复制和粘贴选项范围的Application.Input框
EN

Stack Overflow用户
提问于 2015-08-03 02:47:40
回答 2查看 2.5K关注 0票数 1

我一直试图从一个工作表复制和粘贴到另一个工作表,这样就应该使用粘贴链接功能复制单元格,同时使用输入框让用户输入要粘贴复制数据的区域。代码在同一个工作表内工作,但不在另一个工作表上工作。即使它有效,它也不识别我在输入框中输入的范围。相反,它识别游标并粘贴游标在目标工作表中。

这是我用来复制和粘贴从第1页到第2页的代码。代码有什么问题吗?为什么它不识别我在输入框中输入的范围?

代码语言:javascript
运行
复制
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
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-03 06:02:45

这就是你想要的吗?

代码语言:javascript
运行
复制
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
票数 1
EN

Stack Overflow用户

发布于 2015-08-03 03:01:54

修正是因为.我没有研究。选择其他工作表中的范围后,只需使用这一行代码即可。

代码语言:javascript
运行
复制
inp.Copy Destination:=ThisWorkbook.Sheets("Sheet2").Range(rng.Address)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31778749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档