Excel VBA質問箱 IV

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

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


43671 / 76736 ←次へ | 前へ→

【38110】Re:時間帯別利用率の算出
回答  Kein  - 06/5/26(金) 16:04 -

引用なし
パスワード
   利用率の計算式はそちらでやって下さい。
とりあえず全ての時間帯の、各室の利用状況を表示する表を作る
ところまでのマクロを提示しておきます。
表は I列 以降に作られます。AB:AC列を作業列として使います。

Sub Mk_Room_Schedule()
  Dim MxR As Long, Tm As Long
  Dim i As Long, j As Long
  Dim Get1 As Long, Get2 As Long, MyC As Long
  Dim StD As String, Edt As String
  Dim MxDy As Date, MiDy As Date
  Dim C As Range
   
  Range("B1", Range("B65536").End(xlUp)).AdvancedFilter _
  xlFilterCopy, , Range("I1"), True
  With Range("I2", Range("I65536").End(xlUp))
   .Copy
   Range("J1").PasteSpecial , , , True
   .ClearContents
  End With
  MxR = Range("A65536").End(xlUp).Row
  With Range("AB2:AB" & MxR)
   .Resize(, 2).NumberFormat = "h:mm:ss"
   .Formula = _
   "=FLOOR($D2,TIMEVALUE(""1:00:00""))"
   .Offset(, 1).Formula = _
   "=CEILING($F2,TIMEVALUE(""1:00:00""))"
  End With
  With Application
   MxDy = .Max(Range("C2:C" & MxR & ", E2:E" & MxR))
   MiDy = .Min(Range("C2:C" & MxR & ", E2:E" & MxR))
  End With
  Tm = (MxDy - (MiDy - 1)) * 24
  With Range("I2")
   .Resize(Tm + 1).NumberFormat = "@"
   .Value = Format(MiDy, "yyyy/m/d") & TimeSerial(0, 0, 0)
   j = 1
   For i = 1 To Tm
     If i Mod 24 = 0 Then
      j = 0: MiDy = MiDy + 1
     End If
     .Offset(i).Value = Format(MiDy, "yyyy/m/d") & _
     TimeSerial(j, 0, 0)
     j = j + 1
   Next i
  End With
  With Range("I1")
   .Value = "↓日付・時刻; " & .Value & "→"
   .EntireColumn.AutoFit
   .Select
  End With
  With Application
   For Each C In Range("B2:B" & MxR)
     MyC = .Match(C.Value, Rows(1), 0) - 9
     Sdt = C.Offset(, 1).Text & C.Offset(, 26).Text
     Edt = C.Offset(, 3).Text & C.Offset(, 27).Text
     Debug.Print Sdt & " : " & Edt
     Get1 = .Match(Sdt, Range("I:I"), 0)
     Get2 = .Match(Edt, Range("I:I"), 0)
     Range("I" & Get1 & ":I" & Get2).Offset(, MyC) _
     .Value = "入室"
   Next
  End With
End Sub

0 hits

【38087】時間帯別利用率の算出 あい 06/5/26(金) 9:38 質問
【38094】Re:時間帯別利用率の算出 lespoir2 06/5/26(金) 10:40 回答
【38095】Re:時間帯別利用率の算出 neptune 06/5/26(金) 10:44 発言
【38102】Re:時間帯別利用率の算出 あい 06/5/26(金) 13:26 発言
【38106】Re:時間帯別利用率の算出 neptune 06/5/26(金) 14:47 回答
【38101】Re:時間帯別利用率の算出 あい 06/5/26(金) 13:23 質問
【38103】Re:時間帯別利用率の算出 M 06/5/26(金) 14:06 発言
【38110】Re:時間帯別利用率の算出 Kein 06/5/26(金) 16:04 回答
【38107】Re:時間帯別利用率の算出 ハト 06/5/26(金) 14:50 回答
【38181】Re:時間帯別利用率の算出 sin 06/5/29(月) 12:09 発言
【38198】Re:時間帯別利用率の算出 ハト 06/5/29(月) 15:16 発言
【38203】Re:時間帯別利用率の算出 sin 06/5/29(月) 17:44 発言
【38204】Re:時間帯別利用率の算出 あい 06/5/29(月) 17:50 お礼
【38108】Re:時間帯別利用率の算出 再送 ichinose 06/5/26(金) 14:59 発言
【38109】Re:時間帯別利用率の算出 再送 追伸 ichinose 06/5/26(金) 15:09 発言
【38205】Re:時間帯別利用率の算出 再送 あい 06/5/29(月) 17:52 お礼

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