주어진 날짜에 매크로가 실행되면 현재 날짜를 확인하고 해당 연도의 다른 분기와 비교 한 다음 분기 기준으로 특정 셀의 값을 변경해야합니다 우리는에있어날짜에 따른 셀 값 설정 Excel VBA
이것은 내가 현재 매크로의 끝에 추가하는 것을 시도하고 있다는 지금까지 무슨이다.
Sub Dates()
Dim wb As Workbook
Dim ws As Worksheet
Dim mgr, rsk As Range
Dim d, Q1B, Q1E, Q2B, Q2E, Q3B, Q3E, Q4B, Q4E As Date
Set wb = ActiveWorkbook
Set ws = wb.Sheets("Mutual")
Set mgr = ws.Range("B37")
Set rsk = ws.Range("F37")
d = Date
Q1B = DateValue("01/01/2015")
Q1E = DateValue("03/31/2015")
Q2B = DateValue("04/01/2015")
Q2E = DateValue("06/30/2015")
Q3B = DateValue("07/01/2015")
Q3E = DateValue("09/30/2015")
Q4B = DateValue("10/01/2015")
Q4E = DateValue("12/31/2015")
If d <= Q1E Then
mgr.Value = "Works 1"
rsk.Value = "Works 2"
End If
End Sub
암 I을 옳은 길? 이것을 작성하는 좀 더 우아한 방법이있을 것이라고 확신합니다. 그러나 이것은 내 자신의 VBA 코드를 처음 작성하는 것입니다.
가 포함 된 세포 그냥 헤드 업 : 단지'Q4E' 코드에서 Date''로 선언한다 그 행에있는 다른 모든 변수는'Variant'입니다. VBA는 그런 선언을 지원하지 않습니다. –
그래서 나는 그들 모두를 날짜로 선언해야합니까? 또는 각 문장 앞에 Set를 사용하면 동일하게 작동합니까? – Catalog
예, 모두 날짜로 선언해야하지만 한 줄로 처리 할 수는 있습니다. –