返回列表 上一主題 發帖

[發問] 請教改良速度方法

回復 40# 198188
那麼是不是要在worksheets前面加上workbooks?但是上一句名稱沒有問題?
工作表名稱無誤!!  程式碼: 程序所在的活頁簿之工作表, 不需加上  workbooks  其他活頁簿的工作表要加workbooks
儲存格要設底色,用錄製新巨集可得程式碼

TOP

回復 38# GBKEE

第38貼
  請問可否在excel 的EDIT FORMATING RULE設定
在A欄設定:如果B欄是值大過0 和不等於A欄就變顏

TOP

本帖最後由 GBKEE 於 2012-12-14 14:57 編輯

回復 41# GBKEE
  1. Option Explicit
  2. Sub ex()
  3.     Dim FRng As Range, Wb As Workbook
  4.     Dim A As Range, Rng As Range
  5.     Dim fs As String, xi As Integer
  6.     Dim i As Integer
  7.     Dim j As Integer
  8.     Dim k As Integer
  9.     i = Worksheets("outstanding payments").Range("A" & Worksheets("outstanding payments").Rows.Count).End(xlUp).Row
  10.     fs = "C:\Users\patrick.HKG\Desktop\payment report 2012.xlsx"
  11.     Set Wb = Workbooks.Open(fs)   
  12.     With Worksheets("New form of payment report")
  13.       j = Worksheets("New form of payment report").Range("E" & Worksheets("New form of payment report").Rows.Count).End(xlUp).Row   
  14.     End With   
  15.     Do   
  16.     ThisWorkbook.Activate   
  17.     If Wb.Worksheets("New form of payment report").Range("k" & j).Value = Date And Wb.Worksheets("New form of payment report").Range("h" & j).Value >= 0.95 Then   
  18.     If IsError(Application.VLookup(Wb.Worksheets("New form of payment report").Range("B" & j).Value, Worksheets("outstanding payments").Range("A:A"), 1, False)) Then   
  19.     Worksheets("outstanding payments").Range("A" & i + 1) = Wb.Worksheets("New form of payment report").Range("B" & j).Value
  20.     Worksheets("outstanding payments").Range("F" & i + 1) = Wb.Worksheets("New form of payment report").Range("K" & j).Value
  21.     End If
  22.     i = i + 1
  23.     End If
  24.     j = j - 1   
  25.    Loop While j = 2  
  26.    
  27.    Wb.Close 0
  28. End Sub
複製代碼
請問
Do
Loop While
是不是寫錯了?他不懂得循環做

TOP

回復 42# 198188
2003版 沒有EDIT FORMATING RULE 這功能
但有 指令[格式]->[設定格式化條件] :寫公式 ,指定顏色
或是VBA
  1. Option Explicit
  2. Sub Ex()  '欄設定如果B欄是值大過0 和不等於A欄就變顏色
  3.     '舉例 [A1]:[B1]
  4.     If [B1] >= 0 And [B1] <> [A1] Then
  5.         With Range("A1")
  6.             .Interior.Color = vbYellow  '底色    :黃
  7.             .Font.Color = vbRed         '字體色  :紅
  8.             .Font.Size = 15             '字體尺寸:15
  9.         End With
  10.     End If
  11. End Sub
複製代碼

TOP

本帖最後由 GBKEE 於 2012-12-14 15:16 編輯

回復 43# 198188
  1. Do
  2. '
  3. '
  4. MSGBOX J  '查看 J=??? 符合條件嗎!!
  5. Loop While J=2   
  6. '執行的條件 While (一直是) :  J=2
  7. '離開的條件 UNTIL (直到是):   J=2
複製代碼
你是要Loop While J>=2  ??
你是要Loop While J<>2  ??
你是要Loop While J<=2  ??
你是要Loop While J<2     ??

TOP

If Target.Column = 1 Then   這個好像是 搜尋範圍  他要將 Target 改成  "TT"  ,只是 看了看,感覺不順.....

TOP

回復 3# GBKEE

高人,可否幫我看看個程式問題?
    http://forum.twbts.com/viewthrea ... amp;page=2#pid51122

TOP

        靜思自在 : 不怕事多,只怕多事。
返回列表 上一主題