我有一個已經完成或沒有完成的任務的excel文件,用列中的是或否表示。最終,我對不同列中的數據感興趣,但我想設置代碼,以便忽略已完成任務的那些行。到目前爲止,我已經定義了包含yes/no的列範圍,但我不知道在這個範圍上運行哪個命令。我想我要基於列C的值從另一個範圍的值中定義一個範圍
Option Explicit
Sub Notify()
Dim Chk As Range
Dim ChkLRow As Long
Dim WS1 As Worksheet
On Error GoTo WhatWentWrong
Application.ScreenUpdating = False
'--> If the text in column C is Yes then Ignore (CountIF ?)
'--> Find last cell in the column, set column C range as "Chk"
Set WS1 = Sheets("2011")
With WS1
ChkLRow = .Range("C" & Rows.Count).End(xlUp).Row
Set Chk = .Range("C1:C" & ChkLRow)
End With
'--> Else Check date in column H
'--> Count days from that date until today
'--> Display list in Message Box
Reenter:
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Exit Sub
WhatWentWrong:
MsgBox Err.Description
Resume Reenter
Application.ScreenUpdating = True
End Sub
難道也許更容易簡單地定義基於C列的值一個範圍,而不是首先定義列C的範圍內定義新範圍然後重新定義它?
感謝
如何使用自動過濾器,然後獲得可見範圍?你需要使用VBA嗎?您也可以使用公式來獲取說「不」的總天數。 – 2012-04-25 20:07:09
我試圖達到的最終結果是顯示一個消息框,供用戶根據請求顯示尚未完成任務的天數。我不想讓完成的任務始終處於隱藏狀態,並且最終用戶無法自行使用過濾器,因此使用VBA可以在請求時爲他們執行過濾。 – 2012-04-25 20:12:44
所以你想要Col H的未完成日總數? – 2012-04-25 20:14:30