列全体を調べて 1 ~ 9 の値を探すスクリプトがあります。現在 10 個のメッセージ ボックスがスローされていない場合はメッセージ ボックスがスローされます。これは、2 番目のボックスがまだ incide であるためです。ループ。
ループの外に配置しようとしましたが、成功しませんでした。 Else: MsgBox "すべての場所が正しく入力されました" を一度表示するには、ポインタが最適です。
Sub Scoring()
Dim FindString As String
Dim rng As Range
Dim startVal As Integer, endVal As Integer
startVal = 1
endVal = 9
For i = startVal To endVal
FindString = CStr(i)
With Sheets("Scoring").Range("S:S")
Set rng = .Find(What:=FindString, _
After:=.Cells(.Cells.Count), _
LookIn:=xlValues, _
LookAt:=xlWhole, _
SearchOrder:=xlByRows, _
SearchDirection:=xlNext, _
MatchCase:=False)
If Not rng Is Nothing Then
MsgBox "There are one or more risks that do not contain the minimum information required for import, please ammend these and try again.", True
Exit For
Else: MsgBox "All locations correctly entered"
End If
End With
Next i
End Sub