Excel VBA質問箱 IV

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

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


21360 / 76738 ←次へ | 前へ→

【60779】Re:Find関数の使い方について
発言  kanabun  - 09/3/13(金) 21:39 -

引用なし
パスワード
   ▼Porta さん:
>
>少し私に理解できない点があります。
>> With [A6].Offset(DateDiff("d", [A6].Value, theDay))
>>   .Select
>>   MsgBox theDay & " 日へジャンプしました", , .Address(0, 0)
>> End With
>DateDiff関数がうまく使われていることは分かりますが…今一
>頭にしっかりと入りません。
>シート関数でいえば、ここの"d"は何なんでしょう?

ヘルプにあるとおりです。
  DateDiff(interval, date1, date2)
最初の引数 interval は date1 と date2 の間隔を計算するときの単位を
指定するものです。
 "yyyy" なら 年単位で、
 "m" なら 月単位で、
 "d" なら 日単位で 間隔を計算します。

しかし、よく考えてみれば、
> With [A6].Offset(DateDiff("d", [A6].Value, theDay))

こんなことしなくても「日差」ですから、
 With [A6].Offset(CLng(theDay) - [A6].Value2)

でよかったですね。

>
>それから
>If StrPtr(ss) = 0& Then Exit Sub
>のStrPtrと 0&の意味を教えてください。

StrPtr関数は 文字列変数の格納されているメモリ上の先頭アドレス(Pointer)
を返します。
StrPtr関数の戻り値が 0& (長整数の0 )のときは 変数がどこにも格納されてい
ない状態を意味し、InputBox関数で[Cancel]ボタンが押されると、アドレス無しの
文字列変数が返されることになっています。

>
>この方法ですと、記述していない20年先の年月日のセルアドレスも
>分かるということになりますね。

う〜ん、確かに(-_-)
最終の日付のチェックが必要でしたかね?

1 hits

【60775】Find関数の使い方について Porta 09/3/13(金) 19:30 質問
【60776】Re:Find関数の使い方について kanabun 09/3/13(金) 19:37 発言
【60777】Re:Find関数の使い方について kanabun 09/3/13(金) 20:06 発言
【60778】Re:Find関数の使い方について Porta 09/3/13(金) 21:22 発言
【60779】Re:Find関数の使い方について kanabun 09/3/13(金) 21:39 発言
【60783】Re:Find関数の使い方について Porta 09/3/14(土) 9:50 質問
【60784】Re:Find関数の使い方について kanabun 09/3/14(土) 11:48 発言
【60789】Re:Find関数の使い方について Porta 09/3/14(土) 20:50 お礼

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