当前位置:  开发笔记 > 编程语言 > 正文

如何将Cell的内容复制到剪贴板中

如何解决《如何将Cell的内容复制到剪贴板中》经验,为你挑选了1个好方法。

我正在尝试将单元格内容复制到剪贴板中.

我已阅读并尝试了Excel 2007帮助文件中提供的确切示例.但是由于某种原因,DataObject对象无效.所以这个例子:

Dim MyData As DataObject

Private Sub CommandButton1_Click()
    Set MyData = New DataObject

    MyData.SetText TextBox1.Text
    MyData.PutInClipboard

    TextBox2.Paste
End Sub

Private Sub UserForm_Initialize()
    TextBox1.Text = "Move this data to a " _
        & "DataObject, to the Clipboard, then to " _
        & "TextBox2!"
End Sub

在我的情况下不起作用.我现在已经搜索了很长一段时间,但我无法找到DataObject对象为何不可用的答案.

这是我的代码:

Dim MyData As DataObject

Private Sub Worksheet_Change(ByVal Target As Range)
    If ActiveCell.Column = 3 Then
        Set MyData = New DataObject
        MyData.SetText ActiveCell.Offset(-1, -1).Text
        MyData.PutInclipboard
    End If    
End Sub

编译错误是:"未定义用户定义类型",它突出显示"MyData As DataObject"行.

是否有另一种方法可以简单地将单元格中的文本复制到剪贴板?



1> curtisk..:

好的,很少的东西:

首先,您需要添加对"Microsoft Forms 2.0对象库"的引用,如果您不想搜索,只需将用户表单添加到项目中,然后立即删除它,引用将保留.您需要该引用才能使用DataObject

我会附上一些我开始工作的代码,我改变了偏移但是把它们变成你需要的......

Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Set MyData = New DataObject
    If ActiveCell.Column = 3 Then
        MyData.SetText ActiveCell.Offset(-1, 0).Text
        MyData.PutInClipboard
    End If
End Sub

推荐阅读
虎仔球妈_459
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有