У меня есть пользовательская функция в Access2007, которая зависит от извлечения данных из конкретного запроса. Он открывает Outlook, создает новое электронное письмо и заполняет поля конкретными адресами и данными, взятыми из запроса ("DecisionEmail")
.
Теперь я хочу сделать другой запрос ("RequestEmail")
и заполнить его этими данными. Так что все, что мне нужно сделать, это изменить эту строку:
Set MailList = db.OpenRecordset("DecisionEmail")
и вот где я в тупике.
Это мой желаемый результат:
Если пользователь на Form_Decision
и нажмет кнопку "Send email"
, "DecisionEmail"
будет подключен к функции, и эти данные появятся в электронном письме.
Если пользователь нажмет кнопку Form_SendRequest
и нажмет кнопку "Send email"
, вместо него будет "RequestEmail"
.
Причина того, что это разные запросы, заключается в том, что они содержат очень разную информацию, которая размазывается по-разному. Тем не менее, поскольку в коде функции нужно изменить только одну маленькую вещь, я не думаю, что новая функция - это хорошая идея.
Моим последним средством было бы создать совершенно новую функцию и использовать поле «Условия» в интерфейсе макроса для выбора между ними, но я чувствую, что возможно более элегантное решение.
У меня есть смутное представление о том, чтобы задавать имена запросов в качестве переменных и использовать оператор If, но у меня просто нет умственного словаря для обдумывания этого.