標題:
命令按鈕當中,如何能將Sheet1複製到Sheet2
[打印本頁]
作者:
openpc
時間:
2012-2-16 15:43
標題:
命令按鈕當中,如何能將Sheet1複製到Sheet2
命令按鈕當中,如何能將Sheet1複製到Sheet2, 以下寫法會出現錯誤, 該怎麼寫才好?
Private Sub CommandButton1_Click()
Sheets("Sheet1").Select
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Sheet1").Select
Range("A11").Select
ActiveSheet.Paste
End Sub
作者:
GBKEE
時間:
2012-2-16 16:44
本帖最後由 GBKEE 於 2012-2-16 16:46 編輯
回復
1#
openpc
Private Sub CommandButton1_Click()
Sheets("Sheet1").Select
Range("A1").Select
Range(Selection, Selection.End(xlToRight).End(xlDown)).Select
Selection.Copy
Sheets("Sheet1").Select
' Sheets("Sheet2").Select '<-複製到Sheet2
Range("A11").Select
ActiveSheet.Paste
End Sub
複製代碼
作者:
openpc
時間:
2012-2-17 15:36
Private Sub CommandButton1_Click()
Sheets("Sheet1").Select
Range("A1").Select
Range(Selection, Selection.End(xlToRight)).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
Sheets("Sheet2").Select '==>感謝指正錯誤
Range("A11").Select
ActiveSheet.Paste
End Sub
可是, 我是在CommandButton1_Click()的情況下執行會有,
執行階段錯誤'1004'
Class Range 的Select方法失敗
請教先進,如何解.
作者:
GBKEE
時間:
2012-2-17 15:51
回復
3#
openpc
請多參考 新手 VBA 入門常見問題
你修改程式 放在ThisWorkbook 或一般組 是不會有錯誤的
如程式碼在Sheet1 須改成
Private Sub CommandButton1_Click()
Sheets("Sheet1").Select
Range("A1").Select
Range(Selection, Selection.End(xlToRight).End(xlDown)).Select
Selection.Copy
'Sheets("Sheet1").Select
With Sheets("Sheet2")
.Select '<-複製到Sheet2
.Range("A11").Select
End With
ActiveSheet.Paste
End Sub
複製代碼
作者:
openpc
時間:
2012-2-17 16:24
多謝指點, 我會多多參考新手 VBA 入門常見問題.
請教先進,
如程式碼在Sheet3
3#的02.Sheets("Sheet1").Select, 要如何修改
作者:
GBKEE
時間:
2012-2-17 16:43
回復
5#
openpc
二程式效果一樣
Option Explicit
Private Sub CommandButton1_Click()
With Sheets("Sheet1")
.Range("A1", .Range("A1").End(xlToRight).End(xlDown)).Copy Range("A11")
' Range ("A11") : 程式碼在Sheet3 就是Sheet3的Range ("A11")
End With
End Sub
Private Sub Ex() '有指定工作表 放何處都可以
' Sheets("Sheet1").Range("A1", Sheets("Sheet1").Range("A1").End(xlToRight).End(xlDown)).Copy Sheet3.Range("A11")
' 上式程式碼等同 以下程式碼
With Sheets("Sheet1")
.Range("A1", .Range("A1").End(xlToRight).End(xlDown)).Copy Sheet3.Range("A11")
End With
End Sub
複製代碼
作者:
Hsieh
時間:
2012-2-17 17:02
回復
5#
openpc
不是將Sheet1的內容複製到Sheet2的A11嗎?
只要在這個活頁簿任何程序中執行下列語句就是了
Sheets("Sheet1").Range("A1").CurrentRegion.Copy Sheets("Sheet2").Range("A11")
作者:
openpc
時間:
2012-2-20 17:24
請教只要Range("A1"到"A10"), 使用Sheets("Sheet1").Range("A1").CurrentRegion.Copy Sheets("Sheet2").Range("A11")的模式該如何表達, 感謝再感謝!
作者:
register313
時間:
2012-2-20 17:37
回復
8#
openpc
Sheets("Sheet1").Range("A1:A10").Copy Sheets("Sheet2").Range("A11")
或
Sheets("Sheet1").Range("A1", "A10").Copy Sheets("Sheet2").Range("A11")
或
Sheets("Sheet1").Range("A1").Resize(10, 1).Copy Sheets("Sheet2").Range("A11")
全部貼上
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)