Форум программистов, компьютерный форум, киберфорум
MS Office Excel
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.66/47: Рейтинг темы: голосов - 47, средняя оценка - 4.66
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 5
1

Составить график ТО

26.06.2016, 19:49. Показов 9801. Ответов 10
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Задача такова. Нужно построить автоматический график:
слева в столбик названия агрегатов, вверху даты(1,2,3 и т.д.) в зависимости от месяца. Месяц и год выбирать из выпадающего списка. Выходные закрашиваются серым.
Так вот нужно чтоб (в зависимости от даты последнего ТО) в графике ставился Х каждые 10 дней. Если Х попадает на выходной, то переносится на следующий день.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.06.2016, 19:49
Ответы с готовыми решениями:

Составить график функции. Дана функция нужно построить график по полученным точкам
Помогите составить график функции. Дана функция нужно построить график по полученным точкам...

Составить график дежурств
Для четырех дружинников, фамилии которых начинаются буквами А,Е,Р,С необходимо составить график...

Составить график функции
Составить график функции! Помоему надо с параболой чтобы был) Добавлено через 1 минуту...

Составить график платежа
Не пойму как сделать график платежа. Делал никак не получается. Пробовал пользоваться for и foreach...

10
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 5
26.06.2016, 20:14  [ТС] 2
график1.xlsx вот такого вида что-то
0
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
27.06.2016, 14:09 3
Как вы полагаете определить последний ТО предыдущего месяца? Когда выпадающими списками открыт месяц, например Июнь, то данные Мая должны исчезнуть.
Скорее всего нужна дата самого первого ТО и от нее считать. Эту задачу формулами не решить. Надо использовать VBA, написать функцию пользователя.
В приложенном файле таблица без Х, сделано только автоматическое форматирование выходных.
Вложения
Тип файла: xls график1.xls (31.0 Кб, 48 просмотров)
0
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 5
27.06.2016, 20:39  [ТС] 4
спасибо и за это! вопрос усложнился, как написать формулу??? я с макросами не очень, впринципе как и с бесиком...
0
24 / 1 / 1
Регистрация: 12.04.2012
Сообщений: 13
27.06.2016, 23:02 5
Сложное решение получается, при этом не очень понятно зачем именно в такой форме представлять данные. Эксель изначально предназначен для расчетов связанных данных, а не для автоматического рисования календариков. Очень похоже, чтобы решить задачу, нужно подняться на уровень выше, понять зачем вообще это делается, тогда и появится хорошее решение.

Если что-то в этом роде нужно, то думаю нужно идти через сводные таблицы. Сначала формируется исходный массив данных, тут формулы в помощь, а потом из них сводная таблица строится.
1
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
28.06.2016, 00:34 6
Лучший ответ Сообщение было отмечено Donich как решение

Решение

Решение с функцией пользователя и с алгоритмом из сообщения №3, с датой первого ТО
Вложения
Тип файла: xls график3.xls (40.5 Кб, 161 просмотров)
1
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
28.06.2016, 09:27 7
Лучший ответ Сообщение было отмечено Donich как решение

Решение

Немного сократил код функции
Visual Basic
1
2
3
4
5
6
7
Function TI(Date1 As Double, Date2 As Double, iStep As Long) As String
Dim i As Double
For i = Date1 To Date2 Step iStep
    i = i + IIf(Weekday(i, 7) > 2, 0, 3 - Weekday(i, 7))
    If CDate(i) = Date2 Then TI = "X"
Next i
End Function
1
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 5
28.06.2016, 20:35  [ТС] 8
ОГРОМНОЕ ЧЕЛОВЕЧЕСКОЕ СПАСИБО!!!!!
это то что нужно!
Вы мега крутой чувак!
0
AlexM
28.06.2016, 20:56
  #9

Не по теме:

Цитата Сообщение от Donich Посмотреть сообщение
крутой чувак
Чувствую себя моложе лет этак на сорок.

0
0 / 0 / 0
Регистрация: 06.07.2015
Сообщений: 5
28.06.2016, 21:04  [ТС] 10
и еще маленький вопрос (уж простите), что поменять в коде, чтоб если выпадает на субботу, то переносил на пятницу, а не на понедельник?
0
2904 / 1718 / 705
Регистрация: 04.09.2015
Сообщений: 3,445
28.06.2016, 22:25 11
Лучший ответ Сообщение было отмечено Donich как решение

Решение

Не назначайте первое ТО на среду и тогда на субботу ТО никогда не попадет.
Если все же первое ТО в среду, то всего один раз (только второй ТО) будет перенесен на понедельник.
2
28.06.2016, 22:25
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.06.2016, 22:25
Помогаю со студенческими работами здесь

Составить разноцветный график функции
Составить график функции у=8х-4. Нужно чтобы каждый элемент был разным цветом.

Составить проект, рисующий график функции
Составить проект, рисующий график функции: y=\sqrt{\mid \sin x-\cos x\mid } В проекте...

Составить график движения автобуса по маршруту
Добрый день! Прошу пожалуйста помогите решить задачу я не селен в экселе. Автобус курсирует по...

Составить график посещения на ближайшую неделю.
Пожалуйста решите эту задачу:Четыре студентки, имена которых начинаются буквами А,Е,С,Р посещают...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
11
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru