ID非公開

2020/10/25 17:11

22回答

Excel VBAについて 入力もれのミスを減らしたい

画像

Excel | Visual Basic37閲覧

ベストアンサー

0

ThanksImg質問者からのお礼コメント

ありがとうございました。 うまくいきました。 正直どちらの方もベストアンサーにしたかったのですが、今回は先に回答をしていただいた方にします。

お礼日時:10/26 22:02

その他の回答(1件)

0

VBAによる回答です。 【考え方】 B~F列の最終入力行を調べ、全ての列の最終入力行が同じでなければ警告を出します。 データはSheet1にあるものとします。 もし、違うなら(A)の「Sheet1」を変更して下さい。 WorkbookのWorkbook_BeforeCloseイベントに以下を。 Dim LRB, LRC, LRD, LRE, LRF, T, Ret With Worksheets("Sheet1") '<---(A)     LRB = .Cells(Rows.Count, "B").End(xlUp).Row     LRC = .Cells(Rows.Count, "C").End(xlUp).Row     LRD = .Cells(Rows.Count, "D").End(xlUp).Row     LRE = .Cells(Rows.Count, "E").End(xlUp).Row     LRF = .Cells(Rows.Count, "f").End(xlUp).Row End With T = LRB + LRC + LRD + LRE + LRF If T Mod 5 <> 0 Then     Ret = MsgBox("未入力があります" & vbCr & _                 "このまま終了しますか?", _                 vbYesNo + vbQuestion + vbDefaultButton2)     If Ret = vbNo Then         Cancel = True     End If End If

ID非公開

質問者

2020/10/25 23:50

ありがとうございます。 考え方も含めてなるほどと思いました。 ちなみに宜しければ、教えていただきたいのですが、 全ての列の最終入力行が同じでなければ、 ファイルを閉じられなくなるのではなく、 シート移動を禁止するといったことは可能でしょうか。