0

私はこのコードを機能させようとしましたが、うまくいきませんでした。

このコードは、cmbsourceと同じ製品コードのセクションを持つ製品を選択することになっています。

Private Sub cmbSource_AfterUpdate()

Dim Worktop As String

If ProductType = 1 Then

Worktop = "SELECT [products/stock].[Product Code], [products/stock].Description, [products/stock].[Stock Level] FROM [products/stock] " & _
"WHERE Category = 'DPALRC' " & _
"AND Mid('[Product Code]',1,5) = Mid('" & Me.cmbSource.Value & "',1,5) " & _
"AND Mid('[Product Code]',9,6) = Mid('" & Me.cmbSource.Value & "',9,6) " & _
"ORDER BY [Product Code];"

Me.cmbResult.rowSource = Worktop
Me.cmbResult = vbNullString

End If

何か案は?

よろしくお願いします、ボブP

4

2 に答える 2

1

ここではただの大げさな推測です。

Worktop = "SELECT ps.[Product Code], ps.Description, ps.[Stock Level]" & vbCrLf & _
"FROM [products/stock] AS ps" & vbCrLf & _
"WHERE ps.Category = 'DPALRC'" & vbCrLf & _
"AND Mid([Product Code],1,5) = '" & Mid(Me.cmbSource,1,5) & "'" & vbCrLf & _
"AND Mid([Product Code],9,6) = '" & Mid(Me.cmbSource,9,6) & "'" & vbCrLf & _
"ORDER BY ps.[Product Code];"
Debug.Print Worktop

イミディエイトウィンドウ(Ctrl+g)に移動し、そこからステートメントをコピーします。次に、新しいAccessクエリを作成し、SQLビューに切り替えて、ステートメントテキストを貼り付け、実行します。

私が提案したコードが希望する結果を返さない場合は、実際のSQLステートメントのテキストを表示して、その何が問題になっているのかを説明してください。

于 2012-10-03T17:29:04.113 に答える
0
Worktop = "SELECT [products/stock].[Product Code], [products/stock].Description, [products/stock].[Stock Level] FROM [products/stock] " & _
"WHERE Category = 'DPALRC' " & _
"AND Mid([Product Code],1,5) = Mid('" & Me.cmbSource.Value & "',1,5) " & _
"AND Mid([Product Code],9,6) = Mid('" & Me.cmbSource.Value & "',9,6) " & _
"ORDER BY [Product Code];"

これは私の更新されたバージョンであり、コーディングの唯一のエラーは、の周りに一重引用符が含まれていることでした[Product Code]

于 2012-10-05T07:32:24.157 に答える