2014-10-29 7 views
0

열 W의 스프레드 시트에서 데이터를 필터링 한 다음 N 열의 값이 오늘 날짜와 같은 경우이 시트의 모든 행을 다른 시트로 복사합니다.오늘 날짜로 필터 열.

내가 막히고있는 곳은 열 N의 데이터를 오늘 날짜로 필터링하는 것입니다. 아래에서 임의의 데이터를 선택하여 어떻게 보이는지 알기 위해 수동으로 변경하지 않고 자동으로 현재 날짜로 업데이트하는 방법이 있는지 파악하고 있습니다. 또는 다른 접근법을 취해야 할 경우.

ActiveSheet.Range("$B$3:$W$2012").AutoFilter Field:=13, Operator:= _ 
    xlFilterValues, Criteria2:=Array(0, "1/20/2015") 

날짜가에 포맷 ("DDD, 날짜, mmmyy HH : MM -> 화 20 Jan15 14시) 난 단지 그 날짜가 아닌 시간을 기준으로 필터링 할 나는 또한하지 않습니다. 내가 만든이 아니 스프레드 시트의 업데이트 나에게 주어진 매일 같이이 형식을 변경하려면

내가 지금 어떤 도움을 주시면 감사하겠습니다 VBA 상당히 새로운 해요

답변

0

이 작동한다.. 그것은 needn ' 함수 나 변수 "todaysYear"등으로 나눌 수 있지만, 어떻게했는지 알 수 있도록했습니다.

Sub filter() 
todaysDate = getTodaysDate()    'calls a function which prepares todays date in the format needed 
With ActiveSheet 
    .AutoFilterMode = False 
    .Range("N:W").AutoFilter 
    .Range("N:W").AutoFilter field:=10, Criteria1:=">2"    'whatever your first criteria is (Column W) 
    .Range("N:W").AutoFilter field:=1, Criteria1:="=*" & todaysDate & "*" 
End With 
ActiveSheet.Cells.SpecialCells(xlCellTypeVisible).copy 
Sheets("Sheet2").[a1].PasteSpecial xlPasteValues      'Change to the name of the destination sheet 
End Sub 

Function getTodaysDate() 
todayDay = WeekdayName(Weekday(Now), True) 
todayDayDate = Weekday(Now) 
todayMonth = MonthName(Month(Now), True) 
todayYear = Mid(Year(Now), 3, 2) 
getTodaysDate = todayDay & " " & todayDayDate & " " & todayMonth & todayYear 
End Function 
+0

약간의 조정을해야했지만 이것이 훌륭하게 작동했습니다. 답장을 보내 주셔서 감사 드리며 유감스럽게 생각합니다. – Locinine

+0

유용 할 경우이 답변을 투표하는 것을 고려하십시오. :) – quantum285