2016-05-16 4 views
1

У меня есть столбец, содержащий 123 уникальных названия сырья и другой столбец, называемый OutgoingRawMaterial, идея состоит в том, что мы можем посмотреть на таблицу и увидеть, что 270 единиц ингредиента A покинули компанию и т. Д.Microsoft Access Duplicate Output Destination обходной путь

Я хотел создать запрос обновления, который будет обновлять связанный OutgoingRawMaterial с рисунком из запроса «qrySumManufacturingRawMaterials», который содержит цифры, которые я хочу. Query Update отлично работает для отдельных записей, как показано ниже:

Field: OutgoingRawMaterial 
Table: tblRawMaterialsManufactured 
Update to: [tblSumManufacturingRawMaterials Query].[Expr1] 
Criteria: [RawMaterial] Like "Raw Material 1*" 

Проблема заключается в том, что я хочу сделать то же самое для всех 123 записей и не знаю, как это сделать, короткие созданий 123 запросов и работают все они из макроса или VBA. Я также собирался создать единый запрос со всеми 123 Raw Materials, используя другой «LIKE», чтобы изолировать их, но получить «Duplicate Output Destination» tblRawMaterialsManufactured.OutgoingRawMaterial »« Я могу подтвердить, что у меня есть только один столбец с именем «OutgoingRawMaterial» ».

ответ

0

UPDATE:

Ответ ниже, как вы обычно решить эту проблему. То, как вы пытаетесь это сделать, имея 2 столбца с кучей записей и 3-й столбец с суммой, фактически считается bad design, потому что ваш третий столбец не связан с первыми двумя столбцами. Вы расскажете мне больше, чтобы понять, как работает этот третий столбец - содержит ли он 123 суммарных (совокупных) значения, в то время как первые 2 столбца содержат сотни отдельных значений?

Самый простой способ - удалить все и заново создать таблицу. Например, предположим, что «qrySumManufacturingRawMaterials» выводит что-то вроде этого:

Raw1 | 1

Raw2 | 2

...

И OutgoingRawMaterial имеет тот же формат, то вы можете просто сделать INSERT INTO SELECT:

DELETE FROM OutgoingRawMaterial; 
INSERT INTO OutgoingRawMaterial SELECT 'qrySumManufacturingRawMaterials' 

Есть много вариаций на это - например, если запрос выводит различные имена столбца, может изменить запрос на INSERT INTO OutgoingRawMaterial (Col1, Col2, ...), поэтому, если вам нужна дополнительная помощь, обновите вопрос.

+0

Привет, Чарли, Большое спасибо за это. Похоже, это сработает, и вы тоже верны тем, что первоначальный дизайн оставил меня за баррель, поэтому я думаю, что удалю и нормализовать таблицы. «INSERT INTO SELECT» выполняется в SQL, не так ли, или это также можно сделать в VBA? – Juddles

+0

VBA не может взаимодействовать с Access, кроме как через SQL, так что да, это оператор SQL, который выполняется VBA с помощью драйвера Access. Подумайте об этом, так как VBA печатает документ. VBA ничего не знает о принтерах, но может указать драйвер принтера, который он хочет распечатать. – Charlie

+0

@ Juddles - Любое обновление по этому вопросу? Была ли проблема решена? – Charlie

Смежные вопросы