返回列表 上一主題 發帖

減化程式

本帖最後由 GBKEE 於 2010-8-11 09:23 編輯

回復 1# myleoyes
  1. Private Sub Worksheet_SelectionChange(ByVal Target As Range)
  2.    'Sheet1 是程序  夢想 or  成真 所在的模組 請自行修改 ; 'Target(1).Column = 1 A欄   ;     'Target(1).Column = 6 F欄
  3.     Dim Msg%
  4.     If (Target(1).Column = 1 Or Target(1).Column = 6) And Target(1) Like "連結*年度" Then
  5.         Msg = Val(Replace(Replace(Target(1), "連結", ""), "年度", ""))
  6.         If Msg > 0 Then
  7.             If Target(1).Column = 1 Then Run "Sheet1.夢想" & Msg Else Run "Sheet1.成真" & Msg
  8.          Else
  9.             If Target(1).Column = 1 Then 夢想 Else 成真
  10.         End If
  11.     End If
  12. End Sub
複製代碼

TOP

本帖最後由 GBKEE 於 2010-8-11 16:35 編輯

回復 3# myleoyes
Sheet1 是程序  夢想 or  成真 所在的模組 請自行修改
這個意思是 Run "Sheet1.夢想" & Msg   的 Sheet1 是工作表物件模組中的程序   "夢想" & Msg 所在
如 程序 "夢想" & Msg  改放別的物件模組就 請你要自行修改   
如今你的附檔分別 放在一般模組  (成真模組 , 夢想模組)  且程序是 公用程序  就不加上模組的名稱了
  1. If Msg > 0 Then
  2. If Target(1).Column = 1 Then Run "夢想" & Msg Else Run "成真" & Msg
  3. Else
  4. If Target(1).Column = 1 Then 夢想 Else 成真
  5. End If
複製代碼

TOP

回復 5# myleoyes
試試看


re-Leov24.rar (18.68 KB)

TOP

本帖最後由 GBKEE 於 2010-8-12 12:51 編輯

回復 7# myleoyes
  1. Sub 隱藏表()
  2.     Dim E As Range
  3.     If Range("B4").End(xlDown).Row = Rows.Count Then Exit Sub
  4.     For Each E In Range("B5:B" & Range("B4").End(xlDown).Row)
  5.         Sheets(E.Value).Visible = False
  6.     Next
  7.     Range("A1").Select
  8. End Sub
  9. Sub 展開表()
  10.     Dim Sh As Worksheet
  11.     For Each Sh In Sheets
  12.     Sh.Visible = True
  13.     Next
  14.     Range("A1").Select
  15. End Sub
複製代碼

TOP

回復 9# myleoyes
Sorry  *  點錯邊  If Sh.Name Like "成真*" Or Sh.Name Like "夢想*" Then   
                 改成  If Sh.Name Like "*成真" Or Sh.Name Like "*夢想" Then

TOP

        靜思自在 : 人的心地是一畦田,土地沒有播下好種子,也長不出好的果實。 -
返回列表 上一主題