2013-02-04 25 views
0

需要幫助。我是VBA的新手,並試圖從簡單的宏開始。但即使這種失敗悲慘。 我想要做的就是複製和粘貼從一個工作表到另一個使用輸入框來指定要複製的範圍。 現在我知道該輸入框:使用Excel 2010中的輸入框進行復制和粘貼 - VBA

Application.InputBox("Enter the range from which you want to copy : ", Type:=8) 

但是什麼線我需要以複製到一個細胞中的其他工作表?

對於做白癡我提前道歉。

+0

'範圍( 「A1」)複製範圍( 「A2」)' (這複製A1到A2) – SeanC

+0

感謝您的回覆肖恩。這會不會將A1中的內容複製到A2中。我需要的是一個宏,它允許我使用輸入框指定一個範圍。不過,我需要指定的範圍複製到另一個工作表。在這種情況下,工作表被稱爲「每週原始」 – Nick

回答

2

這是你正在嘗試?

Option Explicit 

Sub Sample() 
    Dim rngCopyFrom As Range 

    On Error Resume Next 
    Set rngCopyFrom = Application.InputBox("Enter the range from which you want to copy", Type:=8) 
    On Error GoTo 0 

    If Not rngCopyFrom Is Nothing Then 
     '~~> Copy the range to say Cell A1 of Sheets("weekly raw") 
     rngCopyFrom.Copy ThisWorkbook.Sheets("weekly raw").Range("A1") 
    End If 
End Sub 
+0

+1錯誤檢查:) – SeanC

+0

謝謝悉達思。是的,這就是我需要的。 – Nick

0

下面是一些示例代碼:

Option Explicit 

Sub CopyStuff() 

Dim x As Range 
Dim y As Range 

Set x = Application.InputBox("Select what copy using the mouse", Type:=8) 
Set y = ActiveWorkbook.Sheets("Sheet2").Range("A1") 

x.Copy y 

End Sub 
1

一種方式來做到這一點是這樣的:

Sub CopyRange() 
    Dim FromRange As Range 
    Dim ToRange As Range 

    Set FromRange = Application.InputBox("Enter the range from which you want to copy : ", Type:=8) 
    Set ToRange = Application.InputBox("Enter the range to where you want to copy : ", Type:=8) 

    FromRange.Copy ToRange 
    'Or you can do it like this if you need some flexibility on Paste 
    'FromRange.Copy 
    'ToRange.PasteSpecial xlPasteValues, xlPasteSpecialOperationNone 
End Sub