Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
VBA Функция или процедура, которая найдет город(-а) назначения по командировке и выдаст их в одной ячейке
 
Есть командировки с городом отправления и назначения.
Может быть более одного города назначения.
Нужно в отчете по номеру командировки вписать в одну ячейку все города назначения. Разделителем может быть запятая или новая строка.
Пример во вложении.
В исходных данных на одну командировку заведено несколько строк, т.к. есть другие столбцы с уникальными данными, я их просто не пишу здесь.
У меня уже есть таблица со всеми уникальными номерами командировок, поэтому 1-й вариант - это написать процедуру, которая по каждой командировке на листе "вар1" ставит ее город или города назначения в отдельный столбец.
Но всего таких командировок 1500 шт, а в отчете нужно показать только 10 шт.
Поэтому лучше второй вариант, который по пользовательской функции исходя из значения ячейки А3 на листе "вар2" добавляет города в ячейку В3.

Я придумала такой алгоритм: присваиваем переменной значение "номер командировки" из ячейки А3 лист "вар2", ищем такой номер в столбце А лист "данные", берем номер строки найденного значения, и заносим в массив значение Город1 = Worksheets("данные" ;) .Cells(найденная строка; столбец 3). Далее ищем следующее значение города. Если Город2=Город1, оставляем Город1 и ищем дальше. Если Город2 отличается от Города1, то добавляем в массив Город2. В итоге у нас получится массив всех уникальных городов по командировке. Вот как его запихнуть в одну ячейку вывода данных???

Кто может, помогите пожалуйста.
Заполнить шапку таблицы по условию (VBA)
 
В условном примере есть следующие данные:
- отдел
- сотрудник
- оклад сотрудника
- возраст

Есть таблица соответствия сотрудников и отделов ("staff" ;) . А также таблица данных с окладом и возрастом каждого сотрудника ("data" ;)  . Видоизменять структуру таблиц, к сожалению, нельзя.

Задача минимум: на странице "report" я выбираю отдел, сотрудника, нажимаю кнопку "Показать" и в заголовки таблицы вписывается название отдела и сотрудника. Если не выбираю сотрудника, то выводятся все сотрудники этого отдела. Если не выбираю отдел, то выводятся вообще все. Также можно не указывать отдел, а только сотрудника из общего списка.
В реальном задании ниже, ссылаясь на заголовок, будут производиться расчеты с помощью формул.

Задача максимум: дополнительно я указываю минимальное и максимальное значение, а также выбираю, что это за значение: возраст или оклад. Соответственно, выводятся только те сотрудники, которые удовлетворяют этому условию: больше либо равно минимума и меньше либо равно максимума.

Помогите пожалуйста.
Понимаю, что алгоритм несложный, не могу сама перевести на VBA.

P.S. если кто-то покопается в файле, подскажите, как обнулить значение в ячейке B2, если изменяется значение в ячейке B1?
Изменено: lennja - 18.07.2013 17:25:27
Не удаляются дубликаты, Значения выглядят как одинаковые, по для Excel они разные
 
Я удалила дубликаты по столбцу. И все равно там осталось много значений, которые визуальные выглядят одинаково: текст, регистр, пробелы. Но Excel все равно считает их уникальными. В чем может быть причина?
Составить таблицу всех вариантов соответствий (x;y;z) по трем таблицам.
 
Есть 3 таблицы-справочника: филиалы (x), статьи (y), периоды (z). Нужно составить таблицу всех возможных вариантов соответствий (x;y;z). Берем первый филиал, первую статью, первый период (1;1;1). Следующая строка: первый филиал, первая статья, второй период (1;1;2) и т.д. Когда закончатся периоды - берем первый филиал, вторую статью, первый период (1;2;1). И так далее. Если впоследствии будут добавлены новые строки в один из справочников, то добавятся данные в таблицу-вывод.
Образец во вложении.
Как можно это сделать?
Страницы: 1
Наверх