Excel VBA質問箱 IV

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

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


16708 / 76732 ←次へ | 前へ→

【65488】Re:時刻・分数の矛盾チェック
質問  パトラッシュ  - 10/5/26(水) 2:07 -

引用なし
パスワード
   ▼超初心者 さん:

ありがとうございます。

あらかじめ関数を設定しておいて入力すれば,
>A・B列は計算ゆえ、入力不要(A2,B2のみ入力)。
>よって、
>> (分数が足らない,時間が重複する
は発生しない。

は、ひとつのヒントになったような気がします。


ただ、すでに入力してあるものに対してチェックを行いたいというのが私が
今回求めるところです。

みなさまには引き続き案をご提供いただけましたらと思います。

1.例えば、B3のセルが2155、B2のセルが2100、C2のセルが055
  だったとすれば、B3のセルは2155でOKとしてセルには何も色付けしない。
  仮にここでB3のセルが2155でなければNGとしてセルを赤く塗りつぶす
  といったことができないでしょうか?

例えば、下のような感じで。
(ただし、これでは※の部分で処理が止まってしまいますし、単純な足し算の
ため時間計算が合わなくなります。)

Sub test()

Dim LastRow As Long
  With Cells(Rows.Count, 1)
    LastRow = WorksheetFunction.Max( _
         .End(xlUp).Row, _
         .Offset(, 1).End(xlUp).Row, _
         .Offset(, 2).End(xlUp).Row _
         )
  End With


For i = 2 To LastRow '最終行を取得

If Range("B" & i) <> Range("B" & i - 1) + Range("C" & i - 1) Then ※
  Range("B" & i).Select
  With Selection.Interior
     .ColorIndex = 3
  End With

Else
  Range("B" & i).Select
  With Selection.Interior
     .ColorIndex = xlNone
End With
End If
Next i
End Sub


2.さらに,例えばA列が月曜のときのC列の分数の合計が1440分でなければ
  特定のセルに色を塗るまたはメッセージを出すといったことをしたいです。
  (各曜日の合計分数は必ず1440分になるという仕様です。)
  例えば,下のような感じで(いけるのかどうかわかりませんが)。
  ※C列の分数の合計を求める部分がわかりません。

  If Range("A" & i) = "月" And ※C列の分数の合計 <> 1440 Then
  Range("B" & i).Select
  With Selection.Interior
     .ColorIndex = 3
  End With

End If
Next i
End Sub

2 hits

【65457】時刻・分数の矛盾チェック パトラッシュ 10/5/23(日) 22:42 質問
【65465】Re:時刻・分数の矛盾チェック 超初心者 10/5/24(月) 14:28 発言
【65488】Re:時刻・分数の矛盾チェック パトラッシュ 10/5/26(水) 2:07 質問

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