標題:
[發問]
關於For迴圈的使用(已解決)
[打印本頁]
作者:
av8d
時間:
2011-8-12 11:46
標題:
關於For迴圈的使用(已解決)
本帖最後由 av8d 於 2011-8-15 12:11 編輯
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
不知道對不對? 煩請各位大大指導了!
------------------------------------------------------------------------
感謝2樓大大~GBKEE大大您給的正是我要的答案~再次感謝兩位!
2011/8/15 留
------------------------------------------------------------------------
作者:
hugh0620
時間:
2011-8-12 12:46
回復
1#
av8d
迴圈初步概念如下
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累加到滿足妳的條件下離開~
至於樓主要的解決方式~ 是否提供檔案~ 可以比較清楚知道樓主你要的結果是什麼....
作者:
GBKEE
時間:
2011-8-12 14:26
回復
1#
av8d
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
複製代碼
作者:
av8d
時間:
2011-8-17 16:55
回復
3#
GBKEE
突然發現一個問題~在複製的時候~中間的第12,34列~向下複製後~下方的對應列~寬度都會變寬(原寬度16.5)~請問我是否還有下For迴圈去制定他的寬度呢?還是有其他方法?
檔案如下:
[attach]7482[/attach]
歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)