답변1
운이 좋으면 VBA가 필요하지 않습니다. 실제로 IF 테스트가 필요하지 않은 훨씬 더 간단한 접근 방식이 있습니다.
=DATE(YEAR(NOW()),MONTH(NOW())+(DAY(NOW())>2),2)
질문을 기준으로 매월 2일을 하드코딩했는데, 셀에서 검색하거나 원래 기한에서 추출할 수 있었습니다.
해당 월의 목표 날짜를 통과했는지 테스트하는 대신 TRUE와 FALSE가 각각 1과 0으로 처리된다는 사실을 사용합니다. 참 또는 거짓일 수 있으므로 해당 월의 2일을 지났는지, 그렇지 않은지 (DAY(NOW())>2)
와 같이 처리됩니다 . 해당 날짜를 통과한 경우 해당 달에 추가됩니다.1
0
1
Excel은 12월에 이런 일이 발생하는 경우 "13"월을 처리할 만큼 똑똑합니다. 내년 1월까지 갑니다.