[英]Excel VBA - paste text from clipboard (error 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 並運行宏。 這個宏應該根據 A2 值轉到“工作表 3”設置“Val”,轉到工作表 1,在 AY 和“Val”中選擇范圍並從剪貼板粘貼到該單元格數據(數字)。
但是當宏到達第 7 行(Selection.PasteSpecial)時,我收到錯誤:
運行時錯誤“1004”:Range 類的 PasteSpecial 方法失敗
請問哪里有BUG:)
您必須使用 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
要將文本放入剪貼板,您可以使用以下兩種方法:
oData.SetText sText
oData.PutInClipboard
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.