У меня есть список, содержащий идентификатор сотрудника в Col A, имя в Col B, фамилия в поле Col C. Мне нужно написать макрос, который дает форму пользователя для ввода First и last Фамилия и оттуда он поместит правильный идентификатор сотрудника в первую неиспользуемую ячейку в Col E, а затем вернется к пользовательской форме.Поиск идентификатора на основе имени и фамилии
Я уже знаю, как создать Userform, и на нем будут две кнопки, которые читают «Далее» и одну, которая читает «Конец». Кнопка «Далее» зациклирует Userform, а «End» просто закроет Userform.
Планируйте оставить Userform с именем Userform1 и обозначить поля ввода как «FirstName» и «LastName». Поэтому я знаю, что для ссылки на них из макроса я бы назвал Userform1.FirstName.Value или Userform1.LastName.Value в зависимости от того, какую часть мне нужно в данный момент.
Часть, на которую я не уверен, это как сопоставление двух переменных, а затем поиск влево для идентификатора. Я могу переместить идентификатор Col, чтобы он был после имени Cols, если это помогает, но я все еще не уверен, как писать, чтобы оба имени совпадали.
Что касается захвата ошибок, то я планировал иметь состояние MsgBox «Нет соответствующих записей». Если человек не существует в списке. Однако я не уверен, как справиться с супер маловероятной, но возможной ситуацией, если два человека в списке имеют одинаковое имя. Поэтому любые предложения по этому поводу будут очень признательны.
Я использую Excel 2013.
Это идеальное решение для того, что мне нужно, спасибо вам, сэр. Один вопрос, хотя я этого раньше не видел: что делает UCase? –
Это изменение всех символов в верхнем регистре, поэтому сравнение не чувствительно к регистру. –
Идеальное мышление –