필터 지우기
필터 지우기

Advice needed with the dateshift function

조회 수: 1 (최근 30일)
Michael T
Michael T 2019년 4월 12일
답변: Steven Lord 2020년 7월 27일
I'm struggling with the dateshift function and need some help if anyone can offer it.
I need to write some code that, once a menu option is chosen, will provide the next of two dates. i.e. If option 1 is selected on the menu, then either the next sunday date is displayed or the next wednesday date, whichever is nearest.
I can display the next sunday date, AND the next wednesday date, but i can't display the next sunday OR the next wednesday.
  댓글 수: 1
Michael T
Michael T 2019년 4월 12일
Here is the code i have been using. I'm not an expert so i understand there may be an easier way to do this.
t = datetime('today');
t = datetime;
if Menu == 1
Sunday = dateshift(t,'dayofweek','Sunday',1)
end
if Menu == 2
Wednesday = dateshift(t,'dayofweek','Wednesday',1)
end
if Menu == 3
Next_Day_Is = dateshift(t,'dayofweek','Sunday','Wednesday',1)
end

댓글을 달려면 로그인하십시오.

답변 (3개)

Walter Roberson
Walter Roberson 2019년 4월 12일
days_to_shift_Sw = [0 2 1 0 3 2 1]
days_to_shift_Sw( day(t, 'dayofweek') )
  댓글 수: 4
Michael T
Michael T 2019년 4월 13일
If it’s already Sunday then the date can stay Sunday. It’s really more if it’s monday or Thursday for example.
Walter Roberson
Walter Roberson 2019년 4월 13일
Okay, so just add the indicated number of days to the current day.

댓글을 달려면 로그인하십시오.


AMAN GARG
AMAN GARG 2020년 7월 27일
dayshift(x,'Start','Hour')

Steven Lord
Steven Lord 2020년 7월 27일
N = datetime('today')
W = dateshift(N, 'dayofweek', 'Wednesday')
S = dateshift(N, 'dayofweek', 'Sunday')
answer = min(W, S)

카테고리

Help CenterFile Exchange에서 Dates and Time에 대해 자세히 알아보기

태그

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by