Private Sub CommandButton1_Click()
'複製主檔案
Range("A1:H44").Select
Selection.Copy
'貼上2.3.4...頁面
Range("A54:D97").Select
ActiveSheet.Paste
Range("A107:D150").Select
ActiveSheet.Paste
'.
'.
'.
Range("A478:D521").Select
ActiveSheet.Paste
'調整列高
Rows("45:53").Select
Selection.RowHeight = 16.5
Rows("98:106").Select
Selection.RowHeight = 16.5
'.
'.
'.
Rows("469:477").Select
Selection.RowHeight = 16.5
End Sub
以上程式運行期間,每次貼都會出現"您要取代目標的儲存格嗎?"
我計算出他們的等差=53
未來我打算利用Textbox填入後執行
有沒有比較快的寫法嗎? 不一定要用For迴圈也可以
迴圈初步概念如下
Dim r1=1 , r2=44
Range("A" r1 & ":H" & "r2").Select
For r1<478 then
r1=r1+53
Next
For r2<521 then
r2=r2+53
Next
不知道對不對?
---------------
答:
語法有誤唷~
FOR的語法應該是下述方式 (從多少到多少)
for i =1 to 100 ...... next
你可以使用Do ....Loop的方式可以上r1與r2累加到滿足妳的條件下離開~
----------------
答:
試一下以下程式碼:
Sub Ex()
Dim i As Integer
With ActiveSheet
.[A1:H44].Copy
For i = 53 To 477 Step 53
.Paste Range("a" & i)
.Rows(i & ":" & i + 43).RowHeight = 16.5
Next
End With
Application.CutCopyMode = False
End Sub
-----------
'複製主檔案
Range("A1:H44").Select
Selection.Copy
'貼上2.3.4...頁面
Range("A54:D97").Select
ActiveSheet.Paste
Range("A107:D150").Select
ActiveSheet.Paste
'.
'.
'.
Range("A478:D521").Select
ActiveSheet.Paste
'調整列高
Rows("45:53").Select
Selection.RowHeight = 16.5
Rows("98:106").Select
Selection.RowHeight = 16.5
'.
'.
'.
Rows("469:477").Select
Selection.RowHeight = 16.5
End Sub
以上程式運行期間,每次貼都會出現"您要取代目標的儲存格嗎?"
我計算出他們的等差=53
未來我打算利用Textbox填入後執行
有沒有比較快的寫法嗎? 不一定要用For迴圈也可以
迴圈初步概念如下
Dim r1=1 , r2=44
Range("A" r1 & ":H" & "r2").Select
For r1<478 then
r1=r1+53
Next
For r2<521 then
r2=r2+53
Next
不知道對不對?
---------------
答:
語法有誤唷~
FOR的語法應該是下述方式 (從多少到多少)
for i =1 to 100 ...... next
你可以使用Do ....Loop的方式可以上r1與r2累加到滿足妳的條件下離開~
----------------
答:
試一下以下程式碼:
Sub Ex()
Dim i As Integer
With ActiveSheet
.[A1:H44].Copy
For i = 53 To 477 Step 53
.Paste Range("a" & i)
.Rows(i & ":" & i + 43).RowHeight = 16.5
Next
End With
Application.CutCopyMode = False
End Sub
-----------
沒有留言:
張貼留言