Итак, я создал форму в Access, которая имеет поле со списком и текстовое поле. Форма вычисляет некоторые вещи после нажатия кнопки, но либо поле со списком, и текстовое поле должно быть заполнено, либо ни один из них не может быть заполнен. То, что я хотел бы сделать, заключается в условии, что, если заполняется только одна из них, появится окно сообщений, объясняющее, что нужно заполнить оба поля, а затем продолжить, чтобы остановить код. Я понимаю, как сделать часть окна сообщения, но сейчас он показывает окно сообщения, а затем продолжает код, который вызывает ошибку.Как остановить код VBA условно?
Я провел некоторое исследование, но большинство из того, что я нахожу, связано с временным приостановлением формы, а не с полной остановкой.
У меня есть пара идей о том, как это сделать, но у меня проблемы с их исполнением, и, честно говоря, я даже не уверен, что они будут работать. Мой первый план состоял в том, чтобы скопировать и вставить все части вычисления из процедуры, создать с ними новую процедуру, создать оператор if в процедуре нажатия кнопки и вызвать новую процедуру, если она передает оператор if. Мой второй план немного более утомительный, но я уверен, что он сработает. Это просто окружает весь код с помощью оператора if, если он передает исполняемый код, если это не так, ничего не делать и довести до конца процедуру и завершить ее. Моя единственная проблема со вторым - у меня есть много кода заранее, и я бы предпочел не тратить много времени на повторные отступы, если я могу помочь, но у меня есть это как резервная копия, если я не могу найти лучший способ.
Перейти к первому варианту :) – Fionnuala