2016-11-23 21 views
2

私は、クエリ1が3つのフィールドのうちの1つに(別のテーブルから取得した)タスク値が選択されているかどうか(trueまたはfalseチェックボックス)を挿入するようにしようとしています。この部分は動作します。VBAでのSQLテーブルの追加/更新

クエリ2は、コンボボックスの値に空の他の2つのフィールドを更新することになっています。この部分は機能しません。構文的には正しいと思われ、クラッシュすることはありません。しかし、私はそれが最初にそれを読んでいるとは思わない。

これはすべて、1回のクリックで達成されるはずです。

クエリ1:

Sub DBInsert_SkillMatrix() 
sSQL = "Insert into tblSkillMatrix (Task) Select Task from tblTask WHERE Selected = true" 
Set db = CurrentDb 
db.Execute (sSQL) 
db.Close 
End Sub 

クエリ2:

Sub DBUpdate_SkillMatrix() 
Dim db As DAO.Database 
sSQL = "UPDATE tblSkillMatrix SET Skill = '" & Me.cboAST_Skill & "', Requirement = '" & Me.cboAST_Requirement & "' WHERE Skill = ''" 
Set db = CurrentDb 
Debug.Print (sSQL) 
db.Execute (sSQL) 
End Sub 
+0

2番目のクエリの終わりに 'WHERE Skill = ''" 'が表示されていますか?そうでしょうか?debug.print(sSQL)を表示できますか? – Vityata

+0

これはDebug.Print UPDATEです。tblSkillMatrix SET Skill = 'TCMによるツールの校正(基本的な測定ツール)の実践的な経験'、Requirement = 'R' WHERE Skill = ''最後にsSQLは文字列が必要です値。 –

+0

問題はWHERE文を正しく解釈していないことがわかりますが、NULL値を持つスキルを取得するためにどのようにそれを伝えることができないのか分かりません。 –

答えて

関連する問題