返回列表 上一主題 發帖

手動製作巨集程式碼過於繁雜問題(如何精簡程式碼)

手動製作巨集程式碼過於繁雜問題(如何精簡程式碼)

如題

請問各位前輩,小弟在前幾篇看見有人問隱藏的問題
於是檢視了我自己的語法
因為是用錄巨集的方式自學的,所以程式碼總是可以發現許許多多的重複
像是
  1. Sheets("Pmax").Select
  2.     Columns("C:AI").Select
  3.     Selection.EntireColumn.Hidden = True
  4.     Columns("AK:BC").Select
  5.     Selection.EntireColumn.Hidden = True
  6.     Columns("BE:BQ").Select
  7.     Selection.EntireColumn.Hidden = True
  8.     Columns("BS:CE").Select
  9.     Selection.EntireColumn.Hidden = True
  10.     Columns("CG:DI").Select
  11.     Selection.EntireColumn.Hidden = True
  12.     Columns("DV:IB").Select
  13.     Selection.EntireColumn.Hidden = True
  14.     Columns("ID:IG").Select
  15.     Selection.EntireColumn.Hidden = True
複製代碼
這樣的東西
或是
  1. ActiveWindow.ScrollRow = 6
  2.     Sheets("Liner").Select
  3.     Sheets("Liner").Copy Before:=Sheets(1)
  4.     Sheets("Liner (2)").Select
  5.     Sheets("Liner (2)").Name = "總表"
  6.     Columns("B:GJ").Select
  7.     Selection.EntireColumn.Hidden = False
  8.     ActiveWindow.ScrollColumn = 4
  9.     ActiveWindow.ScrollColumn = 3
  10.     Sheets("總表").Select
  11.     Sheets("總表").Copy Before:=Sheets(2)
  12.     Sheets("總表").Select
  13.     Sheets("總表").Copy Before:=Sheets(1)
  14.     Sheets("總表").Select
  15.     Sheets("總表").Move Before:=Sheets(1)
  16.     Sheets("總表").Select
  17.     Sheets("總表").Copy Before:=Sheets(2)
  18.     Sheets("總表 (4)").Select
  19.     Sheets("總表 (4)").Name = "Sav"
  20.     Columns("C:AX").Select
  21.     Selection.EntireColumn.Hidden = True
  22.     Columns("BA:BM").Select
  23.     Selection.EntireColumn.Hidden = True
  24.     Columns("BO:CA").Select

  25. ....
複製代碼
這樣子不斷重複重複再重複的語法,在論壇爬文爬了一陣子
發現也許是太簡單 所以沒什麼人再討論這個問題
所以想說要來請益一下各位高手前輩
我該怎麼做精簡呢?
不然龐大的程式碼真的會讓程式跑的越來越慢..

回復 2# 准提部林

謝謝兩位版主的用心,真的受教了!

我會持續學習的 有問題也還請各位前輩幫忙!

非常感謝

TOP

        靜思自在 : 要用心,不要操心、煩心。
返回列表 上一主題