【发布时间】:2014-06-02 08:57:20
【问题描述】:
Form 有 2 个 ComboBox(boxLaborCore、boxPosition)和一个 Button(runQuery)。通过控件向导构建的按钮,一个运行查询按钮。运行具有名为 LaborCore 和 Position 的参数的查询。根据所选工作区域/职位的类型,选择查询中会显示不同的技能。当我手动输入劳动力核心/职位时,查询运行良好,我希望能够自动执行此操作。
我将查询中的条件从 [Enter labour core] 切换为
[Forms]![Form1]![boxLaborCore]
以及从[输入位置]到
[Forms]![Form1]![boxPosition]
我了解到我需要编辑 BoundColumn 属性才能存储值。
有人可以指出我解决此问题的正确方向吗? VBA 代码会使用事件 After_Update 来解决问题吗?
你知道是什么导致了这个问题吗?我的梦想表格看起来像这样:(第 1 步)在组合框中选择劳动力核心/位置(第 3 步)单击运行查询的按钮。生成一个表格,其中包含针对指定参数的正确技能集。
此处用于查询的 SQL 代码。涉及 5 个表,2 tbls 用于 labourcore 和 position,一个 table 用于 labourcore/position 的所有可能组合,称为 workarea,以及一个包含所有技能的 table:
SELECT tblWorkArea.ID_WorkArea, tblWorkArea.[Labor Core], tblWorkArea.Position, tblSkills.Wiring, tblSkills.[Wire Type], tblSkills.[Terminal Types], tblSkills.[NEMA Ratings], tblSkills.[UL 508], tblSkills.[Attention to Detail], tblSkills.[Lifting 50lbs], tblSkills.[Knowledge of Procedure], tblSkills.Crimper, tblSkills.[Heat Gun], tblSkills.Screwdriver, tblSkills.Stripper, tblSkills.[Impact Drill], tblSkills.[Radial Saw], tblSkills.Multimeter, tblSkills.[Torque Screwdriver/Wrench], tblSkills.[Tape Measure], tblSkills.Vacuum, tblSkills.[Drill Press], tblSkills.[Jig Saw], tblSkills.[Troubleshooting Components], tblSkills.[Problem Solving], tblSkills.Organization, tblSkills.[Large Panel], tblSkills.[Test Procedures], tblSkills.[Functional Testing], tblSkills.[Writing Test Procedures], tblSkills.[Material Management], tblSkills.[Set Meter Ability], tblSkills.[Tone Generator], tblSkills.[Megger Testing], tblSkills.[Network Tracer], tblSkills.Components, tblSkills.Fuses, tblSkills.[Heat Shrink Color Codes], tblSkills.[Proper Lug or Crimping], tblSkills.[Resistors Knowledge], tblSkills.Oscilloscopes, tblSkills.Waveforms, tblSkills.[Voltage Separation], tblSkills.[Skill x_Stapling]
FROM ((tblLaborCore INNER JOIN tblWorkArea ON tblLaborCore.[Labor Core] = tblWorkArea.[Labor Core]) INNER JOIN tblPosition ON tblWorkArea.Position = tblPosition.Postion) INNER JOIN tblSkills ON tblWorkArea.ID_WorkArea = tblSkills.ID_WorkArea
WHERE (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Reading Schematics])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Wiring)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Wire Type])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Terminal Types])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[NEMA Ratings])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[UL 508])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Attention to Detail])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Lifting 50lbs])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Knowledge of Procedure])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Crimper)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Heat Gun])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Screwdriver)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Stripper)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Impact Drill])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Radial Saw])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Multimeter)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Torque Screwdriver/Wrench])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Tape Measure])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Vacuum)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Drill Press])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Jig Saw])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Troubleshooting Components])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Problem Solving])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Organization)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Large Panel])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Test Procedures])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Functional Testing])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Writing Test Procedures])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Material Management])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Set Meter Ability])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Tone Generator])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Megger Testing])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Network Tracer])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Components)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Fuses)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Heat Shrink Color Codes])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Proper Lug or Crimping])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Resistors Knowledge])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Oscilloscopes)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.Waveforms)<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblSkills.[Voltage Separation])<>0)) OR (((tblWorkArea.[Labor Core])=[Forms]![SkillsMatrix]![boxLaborCore]) AND ((tblWorkArea.Position)=[Forms]![SkillsMatrix]![boxPosition]) AND ((tblSkills.[Skill x_Stapling])<>0));
谢谢!
【问题讨论】:
-
糟糕,我打错字了。居然有boxWorkArea 不行
-
好的。发在上面!此代码中没有错误消息。当我尝试通过表单将参数存储在组合框中时出现问题。不填充选择查询
-
该死,没用。您认为问题出在表单中组合框的属性上吗?
标签: sql vba ms-access combobox ms-access-2010