□投稿者/ Toshi (3回)-(2010/06/03(Thu) 14:08:15)
|
分類:[VB.NET/VB2005 以降]
2010/06/03(Thu) 16:56:36 編集(投稿者) 2010/06/03(Thu) 15:48:46 編集(投稿者)
<pre><pre>こんにちは、お世話になっております、Toshiと申します。 時間の計算について、ご質問させていただきます。 Listviewに下記のような時間があり、これらの時間を下記のように計算したい。
日付/開始時間1/終了時間1/経過時間1/17:00以降の時間1/開始時間2/終了時間2/経過時間2/17:00以降の時間2/経過時間合計 2010/06/01/09:00/18:00/***/***/14:00/19:00/***/***/***
上記の(***)は計算したい列として、以下のような結果を出力させたい。 2010/06/01/09:00/18:00/(08:00)/(01:00)/18:00/19:00/(01:00)/(01:00)/(09:00)
条件1 開始と終了時間 06:00 〜 05:59
>条件2 >経過時間1と2は 8時間毎 (−1)時間とする。 > >式1→(終了時間-開始時間)
条件2(修正)休憩時間を考えない。
式1→(終了時間-開始時間)
※終了時間が(00:01〜05:59)の場合は(終了時間+24:00)とする?
条件3 17:00以降の時間1と2は 17:00以降の時間を計算する、
式1→開始時間が17:00以前の場合は、(終了時間-17:00) 式2→開始時間が17:00以降の場合は、(終了時間-開始時間)
条件4 経過時間合計は、経過時間1と2の経過時間の合計、 ※ただし、開始時間2/終了時間2の時間は、開始時間1/終了時間1と重なる時間は計算しない。 ※経過時間1と2の実質の重ならない時間合計を求めたい。 Dim lst_time As DateTime Dim max_Items As Integer Dim liv As Object = ListView1 max_Items = liv.Items.Count If max_Items = 0 Then Exit Sub lst_time = DateTime.Parse("17:00") dim 開始時間1 As DateTime ' liv.Items(i - 1).SubItems(1).Text dim 終了時間1 As DateTime ' liv.Items(i - 1).SubItems(2).Text dim 17:00以降の時間1 As DateTime ' liv.Items(i - 1).SubItems(3).Text dim 開始時間2 As DateTime ' liv.Items(i - 1).SubItems(4).Text dim 終了時間2 As DateTime ' liv.Items(i - 1).SubItems(5).Text dim 経過時間2 As DateTime ' liv.Items(i - 1).SubItems(6).Text dim 17:30以降の時間2 As DateTime ' liv.Items(i - 1).SubItems(7).Text dim 経過時間合計 As DateTime ' liv.Items(i - 1).SubItems(8).Text
For i = 1 To max_Items '2010/06/01/09:00/18:00/(08:00)/(01:00)/18:00/19:00/(01:00)/(01:00)/(09:00) ' 0 1 2 3 4 5 6 7 8 9 ???????????
Next</pre></pre>
|
|