Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2037 / 13645 ツリー ←次へ | 前へ→

【70356】日付をもとめる。 亜矢 11/11/5(土) 16:28 質問[未読]
【70357】Re:日付をもとめる。 かみちゃん 11/11/5(土) 16:38 発言[未読]
【70359】Re:日付をもとめる。 亜矢 11/11/5(土) 17:27 お礼[未読]
【70358】Re:日付をもとめる。 UO3 11/11/5(土) 16:45 回答[未読]

【70356】日付をもとめる。
質問  亜矢  - 11/11/5(土) 16:28 -

引用なし
パスワード
   いつもお世話になります。
 指定した日付から
 その週の開始日(日曜日)を求める方法を
 教えていただきたいと思います。
 よろしくお願いします。

【70357】Re:日付をもとめる。
発言  かみちゃん  - 11/11/5(土) 16:38 -

引用なし
パスワード
   こんにちは。かみちゃん です。

> 指定した日付から
> その週の開始日(日曜日)を求める方法を

'■VBAによる方法

 Dim dt As Date
 
 dt1 = DateValue("2011/11/1")
 dt2 = dt - Weekday(dt) + 1
 MsgBox dt1 & "-->" & dt2

'■一般関数による方法
※日付がA1に入力してある場合
=A1-WEEKDAY(A1)+1

【70358】Re:日付をもとめる。
回答  UO3  - 11/11/5(土) 16:45 -

引用なし
パスワード
   ▼亜矢 さん:

ヒントです

WeekDayという関数があります。
ヘルプも参照いただきたいのですが、何も指定しなければ以下のように日曜日を1とした値がかえります。

また、DateAddという関数があります。
基準の日付に日数を足せば何日になるというものです。
これについては関数をつかわなくても足し算でもできますが。

Sub TestDate1()
  MsgBox Weekday(DateSerial(2011, 11, 4))
  MsgBox Weekday(DateSerial(2011, 11, 5))
  MsgBox Weekday(DateSerial(2011, 11, 6))
  MsgBox Weekday(DateSerial(2011, 11, 7))
End Sub

Sub TestDate2()
  MsgBox DateAdd("d", 4, DateSerial(2011, 11, 5))
End Sub

Sub TestDate3()
  MsgBox DateSerial(2011, 11, 5) + 4
End Sub

【70359】Re:日付をもとめる。
お礼  亜矢  - 11/11/5(土) 17:27 -

引用なし
パスワード
   ▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>> 指定した日付から
>> その週の開始日(日曜日)を求める方法を
>
>'■VBAによる方法
>
> Dim dt As Date
> 
> dt1 = DateValue("2011/11/1")
> dt2 = dt - Weekday(dt) + 1
> MsgBox dt1 & "-->" & dt2
>
>'■一般関数による方法
> ※日付がA1に入力してある場合
> =A1-WEEKDAY(A1)+1
ありがとうございました。
解決しました。

2037 / 13645 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free