次のコードは、列内の特定のテキスト文字列を検索し、一致するとメッセージボックスを表示します。コードは複数のテキスト文字列を検索します。したがって、1つの列に "X"と "y"があり、コードが両方のテキスト文字列を検索すると、2つのmsgボックスが表示されます。私は最初のmsgボックスが残りを表示して隠すだけです。これを行う方法はありますか?Excel VBAでポップアップする他のメッセージボックスを非表示にする
つまり、コードは複数のテキスト文字列を検索し、テキスト文字列が一致するとmsgボックスをポップアップします。複数のテキスト文字列が確実に一致しますが、最初のボックスのみを表示し、残りの文字列を非表示にします。
おかげ
Private Sub Worksheet_Change(ByVal Target As Range)
Dim icounter As Long
Dim icounter1 As Long
Dim lastrow As Long
Dim MSG As String, ans As Variant
For icounter = 2 To 31
If Cells(icounter, 2) = "Job Code Name" Then
MsgBox ("Please note you may need to add in additional attributes under this field" & vbNewLine & vbNewLine & "1. PS Group" & vbNewLine & "2. Level" & vbNewLine & "3. Box Level" & vbNewLine & vbNewLine & "Please add in these additional fields as needed")
ElseIf Cells(icounter, 2) = "Personnel Area" Then
MsgBox ("Please note you may need to add in additional attributes under this field" & vbNewLine & vbNewLine & "1. Personnel Subarea" & vbNewLine & vbNewLine & "Please add in these additional fields as needed")
ElseIf Cells(icounter, 2) = "Line of Sight" Then
MsgBox ("Please note you may need to add in additional attributes under this field" & vbNewLine & vbNewLine & "1. 1 Up Line of Sight" & vbNewLine & vbNewLine & "Please add in these additional fields as needed")
ElseIf Cells(icounter, 2) = "Title of Position" Then
MsgBox ("Please note you may need to add in additional attributes under this field" & vbNewLine & vbNewLine & "1. Job Code Name" & vbNewLine & "2. PS Group" & vbNewLine & "3. PS Level" & vbNewLine & "4. Box Level" & vbNewLine & vbNewLine & "Please add in these additional fields as needed")
ElseIf Cells(icounter, 2) = "Company Code Name" Then
MsgBox ("Please note you may need to add in additional attributes under this field" & vbNewLine & vbNewLine & "1. Cost Center" & vbNewLine & "2. Line of Sight" & vbNewLine & "3. 1 Up Line of Sight" & vbNewLine & "4. Personnel Area" & vbNewLine & "5. Location" & vbNewLine & vbNewLine & "Please add in these additional fields as needed")
ElseIf Cells(icounter, 2) = "Function" Then
MsgBox ("Please note you may need to add in additional attributes under this field" & vbNewLine & vbNewLine & "1. Sub Function" & vbNewLine & vbNewLine & "Please add in these additional fields as needed")
Else
End If
Next icounter
End Sub
をしましたあなたが何をしっかりしているのか分かりませんが、Exit Forでループを終了することができます。 – Comintern
あなたがしたいところで 'exit sub'か' exit for'だけです。すべての 'MsgBox'コールの後にあなたのケースで – lokusking
ループを最初の一致の後に停止するようにコードを編集するには?ありがとう! – Daruki