Excel VBA質問箱 IV

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

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


9236 / 13644 ツリー ←次へ | 前へ→

【28501】週の表示 たくやん 05/9/8(木) 9:39 質問[未読]
【28506】Re:週の表示 小僧 05/9/8(木) 10:11 発言[未読]
【28510】Re:週の表示 たくやん 05/9/8(木) 12:11 質問[未読]
【28516】Re:週の表示 小僧 05/9/8(木) 13:19 回答[未読]
【28535】Re:週の表示 たくやん 05/9/8(木) 18:27 お礼[未読]

【28501】週の表示
質問  たくやん  - 05/9/8(木) 9:39 -

引用なし
パスワード
   下のように水曜日から翌週の火曜日を1週間として
表示させることは可能でしょうか?

9/3(土)  →08/30-09/06
9/3(土)  →08/30-09/06
9/5(月)  →08/30-09/06
9/5(月)  →08/30-09/06
9/6(火)  →08/30-09/06
9/7(水)  →09/07-09/13
9/7(水)  →09/07-09/13
9/8(木)  →09/07-09/13
9/8(木)  →09/07-09/13

【28506】Re:週の表示
発言  小僧  - 05/9/8(木) 10:11 -

引用なし
パスワード
   ▼たくやん さん:
おはようございます。

まず2点ほど…。

対象が 「9/3(土)」 という文字列なのか、「2005/9/3」のような日付型なのかで

コードが違ってくると思いますよ。


>下のように水曜日から翌週の火曜日を1週間として
>表示させることは可能でしょうか?

>9/3(土)  →08/30-09/06

8/30 から 9/06 までは 8日間ありますよ。

「2005/09/05」 のような日付型で、
また × 8/30 → ○ 8/31 であるならば、

Sub 週の表示()
Dim MyDate As Date
Dim StartDate As Date
Dim EndDate As Date
  
  MyDate = "2005/9/6"

  StartDate = DateAdd("d", 1 - Weekday(MyDate, vbWednesday), MyDate)
  EndDate = DateAdd("d", 6, StartDate)
  
  MsgBox StartDate & " - " & EndDate

End Sub

もし年度に関係なく「9/3(土)」から文字列で判断するのであれば
違った処理になると思います。

【28510】Re:週の表示
質問  たくやん  - 05/9/8(木) 12:11 -

引用なし
パスワード
   ▼小僧 さん:
ありがとうございます。

小僧さんのおっしゃる通り、
「2005/09/05」 のような日付型で、
また × 8/30 → ○ 8/31 です。

2005/09/05と書いてあるセルの横のセルに
2005/08/31-2005/09/06と表示させたいのですが、
なかなかうまくいきません。
基本的な事で申し訳ないのですが、ご教授いただけ
ないでしょうか?

【28516】Re:週の表示
回答  小僧  - 05/9/8(木) 13:19 -

引用なし
パスワード
   ▼たくやん さん:
こんにちは。

Sub 週の表示()
Dim MyRange As Range
Dim R As Range
Dim MyDate As Date
Dim StartDate As Date
Dim EndDate As Date
  
  Set MyRange = ActiveSheet.Range("A1:A10")
  
  For Each R In MyRange
    MyDate = R.Value
    StartDate = DateAdd("d", 1 - Weekday(MyDate, vbWednesday), MyDate)
    EndDate = DateAdd("d", 6, StartDate)
    R.Offset(0, 1).Value = StartDate & " - " & EndDate
  Next
  
  Set MyRange = Nothing
End Sub

A1 から A10 に日付に入っていると時に、B 列に対象の週を表示する例です。

こんな感じでしょうか。

【28535】Re:週の表示
お礼  たくやん  - 05/9/8(木) 18:27 -

引用なし
パスワード
   ▼小僧 さん:

こんばんは。
ありがとうございます。やりたいことができました〜。

もっと勉強して小僧さんみたいに色々できるように
がんばります。

ホントにありがとうございました。

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