有人能帮我处理这段代码吗?
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和运行宏。这个宏应该转到"sheet 3“,根据A2值设置"Val”,转到sheet 1,选择AY & "Val“中的范围,然后从剪贴板粘贴到这个单元格数据(数字)。
但是当宏到达第7行(Selection.PasteSpecial)时,Im会出错:
运行时错误“1004”:Range类的PasteSpecial方法失败
请把窃听器放在哪里:)
发布于 2020-03-04 09:39:58
必须使用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
https://stackoverflow.com/questions/60521713
复制相似问题