Excel VBA質問箱 IV

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

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


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

【37889】利用率の算出の仕方 あい 06/5/22(月) 17:50 質問[未読]
【37890】Re:利用率の算出の仕方 ichinose 06/5/22(月) 19:07 発言[未読]
【37928】Re:利用率の算出の仕方 あい 06/5/23(火) 16:23 お礼[未読]
【37896】Re:利用率の算出の仕方 谷 誠之 06/5/22(月) 21:07 発言[未読]

【37889】利用率の算出の仕方
質問  あい  - 06/5/22(月) 17:50 -

引用なし
パスワード
   一日ごとの利用率を算出したいと思っていますがなかなかいいアイデアが思いつかず悩んでいますので投稿しました。

A列:入日付、B列:入時間、C列:出日付、D列:出時間が入っています。

このデータが全て同日付ならば、(出時間−入時間)×100で利用率は算出できるのですが、データには算出したい当日以前の日付なども入っていますので単純計算ではできませんでした。

例えばA列:2006/05/21、B列:23:00、C列:2006/05/22、D列:09:50のようになっているのですが、2006/05/22の利用率を算出したい場合、利用時間は2006/05/22の0:00から出時間の09:50までの利用時間を算出しなければなりません。
また出日付についても、算出したい日付の翌日が表示されていることもあります。
このように例外があってもうまく算出できるような計算式やマクロがあれば教えてください。

ちょっと説明がわかりにくいかもしれませんが、どうぞよろしくお願いします。

【37890】Re:利用率の算出の仕方
発言  ichinose  - 06/5/22(月) 19:07 -

引用なし
パスワード
   ▼あい さん:
こんにちは。

私が投稿・削除を繰り返していたため、一時投稿ができなかったことを
お詫びします。


ワークシート関数のMaxやMin関数を使えば
可能なことだと思いますが・・・。

全てデータがシリアル値で入っているとして(日付と時刻)、

2006/5/22の利用率は、

利用率を算出したいセルに

「=(MIN(C2+D2,"2006/5/22"+1)-MAX(A2+B2,"2006/5/22"))*100」

但し、上記は2行目のデータに対しての数式です。
後は、この日付にあたる2006/5/22の部分を変数化することです。
適当なセルに入れる方法がよいと思いますが・・・。


>一日ごとの利用率を算出したいと思っていますがなかなかいいアイデアが思いつかず悩んでいますので投稿しました。
>
>A列:入日付、B列:入時間、C列:出日付、D列:出時間が入っています。
>
>このデータが全て同日付ならば、(出時間−入時間)×100で利用率は算出できるのですが、データには算出したい当日以前の日付なども入っていますので単純計算ではできませんでした。
>
>例えばA列:2006/05/21、B列:23:00、C列:2006/05/22、D列:09:50のようになっているのですが、2006/05/22の利用率を算出したい場合、利用時間は2006/05/22の0:00から出時間の09:50までの利用時間を算出しなければなりません。
>また出日付についても、算出したい日付の翌日が表示されていることもあります。
>このように例外があってもうまく算出できるような計算式やマクロがあれば教えてください。
>
>ちょっと説明がわかりにくいかもしれませんが、どうぞよろしくお願いします。
最低、3,4行の入力データ例を記述して下さい。
(上記で言う入日付、入時間、出日付、出時間の具体例です)

そして、その例に対しての結果も記述してください。
(9:50だけでなく、最終的な結果もね(利用率でしょ?))

そうすれば、もっとわかりやすくなると思います。

【37896】Re:利用率の算出の仕方
発言  谷 誠之 E-MAIL  - 06/5/22(月) 21:07 -

引用なし
パスワード
   谷です。
ごめんなさい、これは実験用の書き込みです。

【37928】Re:利用率の算出の仕方
お礼  あい  - 06/5/23(火) 16:23 -

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

こんばんは。

>ワークシート関数のMaxやMin関数を使えば
>可能なことだと思いますが・・・。

このヒントでひらめきました。
簡単なことだったのですね。すいません。
解決しました。
ありがとうございました。
別件で解決しないといけないことが出てきましたのでまた新規投稿させてもらいます。

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