Board logo

標題: 關於任何巨集如何加入迴圈呢 [打印本頁]

作者: starry1314    時間: 2015-4-30 13:06     標題: 關於任何巨集如何加入迴圈呢

本帖最後由 starry1314 於 2015-4-30 13:14 編輯

想請問關於迴圈的插入
  1. Sub 巨集6()
  2. '
  3. ' 巨集6 巨集
  4. '

  5. '
  6.     Application.Run "'S-.xlsx'!巨集5"
  7.     Range("G72").Select
  8.     Application.Run "'S-.xlsx'!巨集5"
  9.     Range("G73").Select
  10.     Application.Run "'S-.xlsx'!巨集5"
  11. End Sub
複製代碼
目前需重複執行這動作答一千多次,請問要怎麼加入迴圈呢?

巨集5內容 作用:由目前點選位置至最左方定義名稱(以最左端當名稱)
  1. Sub 巨集5()
  2. '
  3. ' 巨集5 巨集
  4. '

  5. '
  6.     Range(Selection, Cells(ActiveCell.Row, 1)).Select
  7.     Selection.CreateNames Top:=False, Left:=True, Bottom:=False, Right:= _
  8.         False
  9. End Sub
複製代碼

作者: starry1314    時間: 2015-4-30 13:27

回復 1# starry1314
  1. Sub 巨集6()
  2. '
  3. ' 巨集6 巨集
  4. '

  5.    For i = 65 To 1500
  6.    While Sheets(1).Cells(i, 1) <> ""
  7.     Application.Run "'S-小餐單.xlsm'!巨集5"
  8.     Range("G72").Select
  9.     Application.Run "'S-小餐單.xlsm'!巨集5"
  10.     Range("G73").Select
  11.     Application.Run "'S-小餐單.xlsm'!巨集5"
  12.     i = i + 1
  13. Wend
  14. Next
  15. End Sub
複製代碼
目前變成會無限循環再G72∼73
作者: starry1314    時間: 2015-5-1 17:08

巨集5=依目前欄位一起選取至欄位最左方後自動定義明稱(依最左欄)
請問需要如何修改才能讓巨集6單純依序往下一欄在執行巨集5至我所要的欄位或次數呢
作者: starry1314    時間: 2015-5-2 00:12

已解決
  1. Sub 自動定義名稱()
  2. For i = 8 To 40
  3.   Range(Selection, Cells(ActiveCell.Row, 1)).Select
  4.     Selection.CreateNames Top:=False, Left:=True, Bottom:=False, Right:= _
  5.         False
  6.                  ActiveCell.Offset(1, 0).Select  '從目前的儲存格往下移一格
  7.                    Range(Selection, Selection.End(xlToRight)).Select
  8.          Next
  9. End Sub
複製代碼





歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)