Excel VBA質問箱 IV

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

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


2845 / 13646 ツリー ←次へ | 前へ→

【65642】週番号から日付を取得する かな 10/6/18(金) 8:33 質問[未読]
【65644】Re:週番号から日付を取得する 超初心者 10/6/18(金) 9:34 発言[未読]
【65646】Re:週番号から日付を取得する かな 10/6/18(金) 10:30 お礼[未読]

【65642】週番号から日付を取得する
質問  かな  - 10/6/18(金) 8:33 -

引用なし
パスワード
   週から日付を取得する方法がうまくできなくて困っています
伝授していただけるとありがたいです

シート1に下記のように作成したいと思っていますが、なかなかうまくいきません
全部で157週まであります

週     1       2       3       4・・・157
日付期間 2008/12/28〜  2009/01/04〜  2009/01/11〜
     2009/01/03   2009/01/10   2009/01/17

上記のように、2行目に日付期間を入れたいのですが、どうすればうまくいくのでしょうか?

今は、下記のような記述してます

For i = 2 To 158
  Cells(1, i).Value = i - 1
  開始日付 = Application.WorksheetFunction.Date(2009, 1, Cells(1, i) * 7 - 10)
  終了日付 = Application.WorksheetFunction.Date(2009, 1, Cells(1, i) * 7 - 4)
  Cells(2, i).Value = 開始日付 & "〜" & Chr(13) & 終了日付
Next i

よろしくお願いします

【65644】Re:週番号から日付を取得する
発言  超初心者  - 10/6/18(金) 9:34 -

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

私も先日知ったのですが、
WorksheetFunctionは、全ての関数が使える訳ではないようです。

Dateの代わりにDateSerialを使ってみてください。

> 開始日付 = Application.WorksheetFunction.Date(2009, 1, Cells(1, i) * 7 - 10)
> 終了日付 = Application.WorksheetFunction.Date(2009, 1, Cells(1, i) * 7 - 4)
 開始日付 = DateSerial(2009, 1, Cells(1, i) * 7 - 10)
 終了日付 = DateSerial(2009, 1, Cells(1, i) * 7 - 4)

ついでに

> Cells(2, i).Value = 開始日付 & "〜" & Chr(13) & 終了日付
 Cells(2, i).Value = 開始日付 & "〜" & Chr(10) & Chr(13) & 終了日付

こちらの方が良い?かな^^;

【65646】Re:週番号から日付を取得する
お礼  かな  - 10/6/18(金) 10:30 -

引用なし
パスワード
   ▼超初心者 さん:

ありがとうございました
問題は解決しました

マクロも、全ての関数が使えると思っていましたが、そうではなかったんですね
まだまだ勉強不足でした

本当に助かりました

ありがとうございました

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