Board logo

標題: [發問] 請問如何將巨集!改成可以在隱常工作表中做塞選?? [打印本頁]

作者: 棋語鳥鳴    時間: 2011-6-2 21:35     標題: 請問如何將巨集!改成可以在隱常工作表中做塞選??

本帖最後由 棋語鳥鳴 於 2011-6-2 21:42 編輯
  1. Sub Macro1()
  2. '
  3. ' Macro1 Macro
  4. '

  5. '
  6. Sheets("Sheet1").Select
  7. Range("B2:Q50").Select
  8.     Selection.AutoFilter
  9.     Range("Q2").Select
  10.     ActiveSheet.Range("$B$2:$Q$50").AutoFilter Field:=16, Criteria1:=RGB(112, _
  11.         48, 160), Operator:=xlFilterCellColor
  12.     Range("C3:F32").Select
  13.     Selection.Copy
  14.     Sheets("Sheet4").Select
  15.     Range("A10").Select
  16.     Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
  17.         :=False, Transpose:=False
  18.     Sheets("Sheet1").Select
  19.     Application.CutCopyMode = False
  20.     Selection.AutoFilter
  21.     Range("B2").Select
  22.     Sheets("Sheet4").Select
  23.     Range("A9").Select
  24. End Sub
複製代碼
此巨集為Sheet1在沒有隱常工作表時錄製的,但是隱藏工作表後卻不能使用!請問要如何修改成可以在Sheet1隱藏時使用??[attach]6472[/attach]
作者: kimbal    時間: 2011-6-2 23:08

簡單的話,可以把SHEET1在工作前顯示出來
sheets("SHEET1").Visible = xlSheetVisible
然後在完成時收起
sheets("SHEET1").Visible = xlSheethidden

還有這一對,可以不給用戶看中間過程(從而運行速度也可提昇)
application.screenupdating = false
application.screenupdating = true
作者: Hsieh    時間: 2011-6-3 08:54

回復 1# 棋語鳥鳴
用With敘述

    http://forum.twbts.com/thread-3727-1-1.html
作者: mark15jill    時間: 2011-6-3 14:51

回復 2# kimbal


版大 不好意思 插個主題

application.screenupdating = false
application.screenupdating = true
這個的用法和時機是???
有看了說明 但是不太了解
作者: Hsieh    時間: 2011-6-3 16:30

回復 4# mark15jill
這是螢幕更新的語法
Application.ScreenUpdating = False就是關閉螢幕更新功能,也就是不會將所有資料的改變立即顯示
必須等到程序結束,才會直接顯示結果
作者: mark15jill    時間: 2011-6-3 17:01

回復 5# Hsieh


    版大 那您的意思是說 這個指令 不會隨著程式跑而畫面跟著動 要等到程式完 才會更新嗎???
那 要放在哪邊呢??
不好意思 沒接觸過這個指令
不然我上千筆的資料更新 螢幕都一直閃 很傷眼睛+螢幕
作者: Hsieh    時間: 2011-6-3 20:36

程式開始先關螢幕更新,結束前再開啟更新
Sub ex()
Application.ScreenUpdating=False
.
.
.
Application.ScreenUpdating=True
End Sub




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