2
根据用户的作业ID号,我创建了一个具有不同单元类型(思考管道尺寸)和单位(认为管道镜头)的ID的记录集。每个单元类型记录已经具有表单文本框的名称,其中总素材进入不同的列。我想要做的是遍历每个记录集并为每个单位类型插入该作业ID号码(用户放在表单中)的素材。使用记录中的文本粘贴到Access窗体控制箱中
Dim rst_UnitEntryCounts As Recordset
Set rst_UnitEntryCounts = CurrentDb.OpenRecordset("SELECT tbl_UnitTypes.UnitTypes_WeeklyTextBoxUserEntryForm, " _
& " tbl_PMEntry.PMEntry_Week_Ending, " _
& " tbl_UnitTypes.UnitTypes_CumalativeTextBoxUserEntryForm, " _
& " Sum(tbl_UnitEntry.UnitEntry_Unit_Count) AS SumOfUnitEntry_Unit_Count " _
& "FROM tbl_UnitTypes " _
& " INNER JOIN tbl_UnitEntry ON tbl_UnitTypes.UnitTypes_ID = tbl_UnitEntry.UnitEntry_UnitTypes_ID) " _
& " INNER JOIN (tbl_PMHeader " _
& " INNER JOIN tbl_PMEntry ON tbl_PMHeader.PMHeader_ID = tbl_PMEntry.PMEntry_PMHeader_ID) ON tbl_UnitEntry.UnitEntry_PMEntry_ID = tbl_PMEntry.PMEntry_PMHeader_ID " _
& "WHERE tbl_PMHeader.PMHeader_ID = " & num_PM _
& "GROUP BY tbl_UnitTypes.UnitTypes_WeeklyTextBoxUserEntryForm, " _
& " tbl_PMEntry.PMEntry_Week_Ending, " _
& " tbl_UnitTypes.UnitTypes_CumalativeTextBoxUserEntryForm ")
rst_UnitEntryCounts.MoveFirst
Do Until rst_UnitEntryCounts.EOF = True
[rst_UnitEntryCounts.UnitTypes_WeeklyTextBoxUserEntryForm] = SumOfUnitEntry_Unit_Count
rst_UnitEntryCounts.MoveNext
Loop
Exit Sub
image of what my query table looks like 此外,即时得到一个错误3131语法错误在FROM子句为好。 在此先感谢!
我建议让您的查询先运行 - 你有一些不匹配的括号开始。解决这个问题的最佳方法是将动态SQL分配给字符串变量和Debug.Print,以显示它是什么 - 复制/粘贴到SQL窗口并在那里测试 - 在此处返回工作或破坏的实际SQL。而这个[[rst_UnitEntryCounts.UnitTypes_WeeklyTextBoxUserEntryForm]]是错误的 - 你的组合框的实际名称是什么? – dbmitch
会做。就我的组合框而言,它将是动态的。所以名称将根据特定列上的记录而变化。 (请参阅上面的图片链接) – Dan