Excel VBA-从剪贴板粘贴文本(错误1004)



有人能帮我处理这段代码吗?

Sub TEST()
Dim Val As Variant
Sheets("Sheet 3").Select
Val = Range("A2").Value
Sheets("Sheet 1").Select
Range("AY" & Val).Select
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
Sheets("Sheet 3").Select
Application.CutCopyMode = False
End Sub

我必须将简单的数字从网络转移到excel。我需要将数字从网络复制到剪贴板,然后转到excel并运行宏。这个宏应该转到"工作表3",根据A2值设置"Val",转到工作表1,在AY&"Val"并将剪贴板中的数据(数字(粘贴到此单元格。

但是当宏到达第7行(Selection.PasteSpecial(时,我得到错误:

运行时错误"1004":粘贴Range类的特殊方法失败

我有错误的地方,请:(

您必须使用MSForms.DataObject与剪贴板交互:

Sub TextFromClipboard()
'This works only with text!
Dim oData As Object
'New MSForms.DataObject with guid and late binding
Set oData = CreateObject("New:{1C3B4210-F441-11CE-B9EA-00AA006B1A69}")
'Get text from clipboard
'to the DataObject
oData.GetFromClipboard
'Show text
MsgBox oData.GetText
End Sub

要将文本放入剪贴板,可以使用以下2种方法:

oData.SetText sText
oData.PutInClipboard

最新更新