のロジックを探すのに苦労しています。テーブルをループして、1〜4の値を含む特定の列が4行あるかどうかを確認する必要があります。Forループ - 特定の状況
テーブルの例:
| cty | st | val |
| 03 | 23 | 1 |
| 03 | 23 | 2 |
| 03 | 23 | 3 |
| 03 | 23 | 4 |
カラムvalに1〜4の値が含まれているかどうかを確認する必要があります。テーブルは常にval ASCによってソートされますが、テーブルには常に4つの値がすべて含まれているとは限りません。この表に1〜4がない場合は、ユーザーにエラーメッセージを発行する必要があります。 (問題ではない)。
私の問題はこれをチェックするループロジックです。
私はいくつかの方法を試しましたが、これは現在私が探しているものが得られていません。
For i As Integer = 1 To 4 Step 1
For Each dr As DataRow In dt.Rows
'if not all 4 growing season per county are entered, show error message
If i <> dr("grows") Then
FillErrorResultObject("ERROR00139", "", "", strCountyName, "", "", "", "", "", dtErrorTable, objErrorResult)
blnError = True
Exit For
End If
Next
If blnError = True Then Exit For
Next
****私のサンプルテーブルのEDIT - 'val'は、コード例で 'grows'と同じ列です。私はそれをそのまま残して、このコメントを追加することを考えました。
dr( "Grows")<0またはdr( "Grows")> 4 Then Error ... 'のように辞書を使用することはできますか? 'i'ループを取り除く。 – LarsTech
私は1、2、3、4のすべての値を持っていることを確認する必要があります。私は1と2、または1,2,3を持っていればこのステートメントはエラーになりません。 – madmike