Заполнение данных в Excel

Программирование на Visual Basic for Applications
unituz
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.02.2009 (Ср) 8:32

Заполнение данных в Excel

Сообщение unituz » 04.02.2009 (Ср) 9:34

Здравствуйте

Так как я новичок в програмировании , столкнулся недавно с такой проблемой,
Есть таблица в ексель первый столбец - фамилия работника , второй столбец - имя , третий столбец табельный номер, примерно две тысячи записей, в этой же книге на другом листе нужен код или пользовательская функция для того что бы при вводе в определеную ячейку табельного номера работника рядом в ячейках сразу забивались бы его имя и фамилия чтобы в ручную не искать на первом листе его имя и фамилию. При кажущейся простоте довольно непростая задача, функция промотр здесь толком не работает так она требует сортировки по возрастанию а данные у меня постоянно меняются (меняется таб номер или приходит новаый работник и тд. и тп.) У меня уже получилось написать код с циклом который находит и выделяет нужную ячейку но как её перенести туда куда надо? Помогите если сможите

С Уважением Дамир

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Заполнение данных в Excel

Сообщение alibek » 04.02.2009 (Ср) 10:42

Если табельные номера не дублируются, то предварительной сортировки не требуется.
"=ВПР(123;Лист1!A:C;1;0)"
123 — искомый табельный номер, Лист1 — название листа, где указаны сотрудники. Только столбец с табельными номерами сделай первым (а не третьим).
Lasciate ogni speranza, voi ch'entrate.

KL
Microsoft MVP
 
Сообщения: 483
Зарегистрирован: 30.10.2005 (Вс) 0:31
Откуда: Madrid

Re: Заполнение данных в Excel

Сообщение KL » 04.02.2009 (Ср) 18:28

alibek писал(а):Если табельные номера не дублируются, то предварительной сортировки не требуется.
"=ВПР(123;Лист1!A:C;1;0)"
123 — искомый табельный номер, Лист1 — название листа, где указаны сотрудники. Только столбец с табельными номерами сделай первым (а не третьим).

Если порядок столбцов менять нежелательно, то:
=ИНДЕКС(Лист1!A:A;ПОИСКПОЗ(123;Лист1!C:C;1;0))
Привет,
KL

unituz
Начинающий
Начинающий
 
Сообщения: 3
Зарегистрирован: 04.02.2009 (Ср) 8:32

Re: Заполнение данных в Excel

Сообщение unituz » 05.02.2009 (Чт) 7:02

Спасибо Всем большое за ответы
реально мне помогли, хотя я и раньше пробывал функцию ВПР но у меня она не срабатывала видимо потому что я в графе где указывается диапазон таблицы вставлял вместо А1:B4000 имена которые я присвоил выделеному диапазону столбца для мобильности, хотя по идее должно было сработать

С уважением Дамир

alibek
Большой Человек
Большой Человек
 
Сообщения: 14205
Зарегистрирован: 19.04.2002 (Пт) 11:40
Откуда: Russia

Re: Заполнение данных в Excel

Сообщение alibek » 05.02.2009 (Чт) 8:54

unituz писал(а):но у меня она не срабатывала видимо потому что я в графе где указывается диапазон таблицы вставлял вместо А1:B4000 имена которые я присвоил выделеному диапазону столбца для мобильности, хотя по идее должно было сработать

Имена тут не причем, их можно использовать.
Скорее ты не указывал четвертый аргумент функции.
Lasciate ogni speranza, voi ch'entrate.


Вернуться в VBA

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 88

    TopList