Excel VBA質問箱 IV

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

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


9 / 13065 ツリー ←次へ | 前へ→

【79542】基準日の変更 T-K 17/12/24(日) 0:46 質問[未読]

【79548】Re:基準日の変更 T-K 17/12/24(日) 22:44 発言[未読]
【79549】Re:基準日の変更 γ 17/12/24(日) 23:32 発言[未読]
【79554】Re:基準日の変更 T–K 17/12/25(月) 20:52 お礼[未読]
【79555】Re:基準日の変更 γ 17/12/25(月) 21:57 発言[未読]

【79548】Re:基準日の変更
発言  T-K  - 17/12/24(日) 22:44 -

引用なし
パスワード
   Function myDay(stDay As Range, myVal As Long, myAry As Range)
Dim i As Long, j As Long, K As Long '変数 iをLong型 jをLong型に宣言
Dim 納期 As Date
Dim d As Date
d = stDay.Value


 'stDay=納期希望日
 'myVal=リードタイム
 'MyAry=定休日データ


Do
If WorksheetFunction.CountIf(myAry, d - K) = 0 Then
納期 = d - K


Exit Do
End If
K = K + 1
Loop


i = 1
Do Until j = myVal

If WorksheetFunction.CountIf(myAry, 納期 - i) = 0 Then 'Countif関数で、
myDay = 納期 - i


j = j - 1


End If


  i = i + 1

Loop

そのままでも使えるのは拝見していてわかりましたが、
アプローチがちがうだけで求めている処理は同じところは少し修正して
そのまま使用しました。
求めたい処理はわかってもそれを流れで考えてコードにするのは
むずかしいです
ほんとにありがとうございました。

【79549】Re:基準日の変更
発言  γ  - 17/12/24(日) 23:32 -

引用なし
パスワード
   ご苦労さまです。

そのコードで本当に結果が得られていますか?
j はドンドン減っているから、いつまで経っても終了条件を満たさないと
思いますが。

それと、きちんとインデントをつけるべきです。
一丁目一番地、初歩の初歩ですよ。
頑張ってください。

# 回答から学んでいないんだなあ。残念!

【79554】Re:基準日の変更
お礼  T–K  - 17/12/25(月) 20:52 -

引用なし
パスワード
   何回か動作確認
していますので問題
ありません
また教えてください

【79555】Re:基準日の変更
発言  γ  - 17/12/25(月) 21:57 -

引用なし
パスワード
   投稿する場合は、コードをまるまるこちらにコピーペイストしてください。
こちらに手打ちで入力していませんか? (j = j + 1 じゃないのか。)
そして、インデントをきちんとつけてください。
この2点、厳守してください。
返事はいらないです。

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