#vba #ms-access #where-clause
#vba #ms-access #where-предложение
Вопрос:
Новый участник здесь — Рад быть с вами!
Я надеюсь, что вы можете помочь мне с тем, что мне кажется проблемой синтаксиса. У меня есть отчет с несколькими вложенными отчетами, все из которых основаны на запросах. В запросах есть критерии, предлагающие пользователю [Ввести SampleID]. Когда я запускаю отчет, он работает корректно, но является громоздким, потому что мне предлагается ввести каждый критерий по отдельности, поэтому я хотел создать форму с кнопкой и полем ввода для пользователя, чтобы ввести SampleID. Затем код извлек бы этот SampleID и использовал его для «ответа» на запросы критериев. Очевидно, что то, что я сделал до сих пор, неверно, поскольку я получаю несоответствие типа ошибки 13 во время выполнения…Я попытался найти руководство относительно того, как правильно использовать синтаксис для строк, но эти изменения, похоже, не работают:(
Вот начало текущего кода для вашего обзора и понимания — он продолжается, но синтаксис везде один и тот же. Обратите внимание, что SampleID — это короткая текстовая строка.
DoCmd.OpenReport «DEV_GenRpt_Comp_Info», , , «Образцы.SampleID=» amp; Me.SampleID И «ReportDemos_TestOrderAndSampleReportInfo.Samples.SampleID=» amp; Me.SampleID И «200_8_Query.SampleID=» amp; Me.SampleID И «300_Query.SampleID=» amp; Me.SampleID
Очень ценится!
Комментарии:
1. Поскольку вы используете форму и текстовое поле для ввода,
SampleID
затем передайте этоSampleID
всем запросам напрямую. Затем вы можете просто открыть отчет безWhere Caluse
. Таким образом, данные будут отфильтрованы из запроса. В поле критерии запросов используйте эту строкуForms![YourFormName]![SampleID]
Поместите одну и ту же строку для всех запросов, используемых для отчета и вложенных отчетов.2. @Harun24HR Спасибо! Я попробую это и дам вам знать!