Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
При выборе Checkbox'а автоматическое добавление шаблона таблицы на лист
 
Добрый день! Подскажите, пожалуйста, как реализовать:
При нажатии кнопки "Начать день" открывается форма, где ты отмечаешь сотрудников, которые будут работать сегодня. Соответственно для сотрудников, которые работают сегодня на листе "Ежедневный план" должны сформироваться шаблоны таблицы ("DailyPlan") и заполниться поля (этот лист представляет собой форму для печати).
как реализовать форму для печати? у меня приходит только глупая мысль на листе навставлять шаблонов и потом заполнить их данными из чекбокса и других листов
И еще вопрос, можно ли "подружить" ListBox и , то есть на форме создать ListBox, а потом уже  в него добавлять checkbox'ы в зависимости от количества заполненных строк в таблице на листе "Main", а не как у меня просто присваивание уже готовым Checkbox'ам значений
 
сотрудников у вас только 6? По моему лучше использовать Листбок с мультивыбором.
 
Нет, это не полный список (он тоже формируется динамически), это для примера, их может быть и 2 и 15.  
 
Цитата
AnMig17 написал:
их может быть и 2 и 15
тем более лучше использовать ListBox.
св-ва ListStyle - 1, MultiSelect - 1
Изменено: V - 26 Мар 2018 13:48:34
 
Не совсем понятен конечный результат, что делает каждый CheckBox? Щелкая по одному и тому же CheckBox(у) наблюдаю изменение количества "факт" только в одной таблице.
Изменено: Nordheim - 26 Мар 2018 13:45:54
"Все гениальное просто, а все простое гениально!!!"
 
Форму тоже можно распечатать. В смысле UserForm.
 
Насчёт ListBox с Mulichoice поняла - это  действительно то, что мне нужно

Форму распечатать мне недостаточно, в принципе можно и просто по почте отправлять данные. Но данное решение с добавлением шаблона таблицы на страницу, мне необходимо и для других нужд. У меня при выборе сотрудника -  формируется его дневной план (который ему распечатывают) и эта данные заносятся в отчет. Вот собственно и хотелось бы понять есть ли какая-то возможность добавить шаблон таблицы на лист. Нашла только что можно её нарисовать (прописав какие строки и столбцы в ней сделать), а вот та чтобы уже готовый шаблон подгрузить - не нашла
 
Listbox c multichoice реализовала, теперь надо понять как засчитывать отработанные дни выбранным сотрудникам
 
А шаблон готовый где хотите брать? выложите файл с шаблоном, и что да как заполняется. А то в гадалки играем :)
"Все гениальное просто, а все простое гениально!!!"
 
При нажатии на кнопку на листе "Main" всем выбранным в ListBox сотрудникам добавляется по 1 дню в столбец "С"
"Все гениальное просто, а все простое гениально!!!"
 
Готовый шаблон "DailyPlan" находится на странице "Ежедневный план". А также на странице "Форма отчета по дням" необходимо заполнять поля, согласно выбраному сотруднику в ListBox (я так понимаю мне необходимо организовать поиск по строкам и при совпадении Value производить запись значений?)
 
Чем необходимо заполнять? Откуда брать данные и по какому условию?
"Все гениальное просто, а все простое гениально!!!"
 
посмотрите эту тему может такой подход подойдет. Если я правильно понял. только нужен будет еще макрос перестановки метки и печати.
Изменено: V - 26 Мар 2018 15:31:00
 
Сформировала полный файл с учетом корректировок, на которые вы мне указали
Теперь о том, что необходимо заполнять и откуда брать данные:
По кнопке "Начать день" мы отметили сотрудников, которые работают сегодня, и после нажатия на кнопку "Распределить планы" по задумке:
1) на листе "Форма отчета по дням" должны заполниться поля. В первой строке встать дата (на свободную ячейку, то есть предыдущие дни не перезатирать, а записывать на свободной) из DistributionOfDailyPlans.Label5.Text. Затем поиск по странице и согласно фамилии заполнение планов по Продуктам 1-8. Если это первый рабочий день этого сотрудника, то его план берется из листа Hidden, а все последующие дни расcчитываются по формуле забитой на листе "Форма отчета по дням" в ячейках F4:F11
2) на Листе "Ежедневный план по сотрудникам" сформироваться таблица (шаблон, которой этом на листе под названием Daily_plan) и добавлять равно столько шаблонов сколько выбрали сотрудников. В шаблон вставлять фамилию сотрудника и дату, на которую формируем план, а также планы со страницы "Форма отчета по дням"

Как-то так. Понимаю, что расписывать что да как - это явно никто не захочет, но хотя бы подскажите в какую сторону смотреть. Каким образом добавлять шаблоны на страницу и только нужное количество
 
откуда берутся сотрудники?
 
Сотрудники берутся из листа Data. В зависимости от выбрагного ВСП на форме Main. А в таблицу  на листе отчёт_основной попадают при нажатии на кнопку начать месяц.
 
Подскажите как Selected Items в Multiple ListBox передать в другой ListBox?
Изменено: AnMig17 - 28 Мар 2018 06:47:05
 
Перебираем строки на в "первом" Листбоксе: если выбрана - additem во второй ЛистБокс.
 
For j = 0 To Me.ListBox1.ListCount - 1
           If Me.ListBox1.Selected(j) Then
           EndOfDay.ListBox1.AddItem Me.ListBox1.Selected(j)
           End If
Next j

Что-то вроде этого?
 
Я не знаю, сколько у Вас столбцов в первом и втором ЛистБоксах и какой (какие) из них необходимо добавлять. Набросайте небольшой файл-пример - поговорим предметно.
 
По кнопке "начать день" выбираем Itemы из ListBox1, а подставиться они должны в форму EndOfDay в ListBox1
Изменено: AnMig17 - 28 Мар 2018 07:12:46
 
У меня получилось, спасибо
 
Цитата
Юрий М написал:
Набросайте небольшой файл-пример
Хорошо, что разобрались. Но всё же посмотрите, чем файл-пример отличается от рабочего файла: только проблемные контролы и ничего лишнего.
 
И ещё один момент: ознакомьтесь с нашими Правилами. Обратите внимание на пункт 2.6 - Ваш вопрос из #17 не имеет никакого отношения к заявленной теме. А я невольно стал помощником нарушителю.
 
Вот только не совсем поняла какой функционал у переменной x?
 
Номер строки второго ЛистБокса.
Закончили обсуждение не по теме.
 
Извиняюсь за нарушение, думала что лучше не плодить миллион тем, потому как ноги растут из изначального вопроса
Впредь исправлюсь
Страницы: 1
Читают тему (гостей: 1)