Страницы: 1 2 След.
RSS
Формирование графика движения ТС
 
Добрый день, коллеги. Подскажите, пожалуйста, какую формулу или функцию необходимо использовать при следующих условиях:

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

P.S.
Жёлтым цветом выделил строку, где необходимо сформировать график движения.
Буду крайне признателен за помощь.  
 
КРОСС
 
Подскажите, пожалуйста, что это значит?  
 
evdokimovpavel28, это значит что Вы создали такую же тему на другом форуме.  
Изменено: zvolkz - 20.06.2022 14:07:51
 
То есть мне нужно просто удалить тему на другом форуме?
 
Цитата
evdokimovpavel28 написал:
То есть мне нужно просто удалить тему на другом форуме?
Нет, просто Вы должны об этом сообщать, читайте ПРАВИЛА
 
Извините, просто новичок на данных форумах. Подскажите, пожалуйста, как лучше поступить, чтобы получить совет от знающих специалистов ?
 
Цитата
evdokimovpavel28 написал:
Подскажите, пожалуйста, как лучше поступить
Если не срочно, то ждать, возможно помощь придет быстро, а возможно нет, а если срочно, то можете попросить модератов перенести тему в раздел РАБОТА
 
Понял, спасибо большое. Ещё раз извините за нарушение правил :)  
 
Чё-то в башку ничего не лезет кроме этого безумства, и то если у Вас офис 2019 и выше
Код
=--НЕ(ЕНД(ПОИСКПОЗ(B2;ФИЛЬТР(ФИЛЬТР($B$2:$EQQ$2;НЕ($B$4:$EQQ$4));ТРАНСП(ФИЛЬТР.XML("<t><s>"&ПОДСТАВИТЬ(ЛЕВСИМВ(ПОВТОР(ОБЪЕДИНИТЬ(";";0;$B$11:$K$11)&";";ОКРУГЛВВЕРХ(СЧЁТЗ(ФИЛЬТР($B$2:$EQQ$2;НЕ($B$4:$EQQ$4)))/СЧЁТЗ($B$11:$K$11);0));СЧЁТЗ(ФИЛЬТР($B$2:$EQQ$2;НЕ($B$4:$EQQ$4)))*2-1);";";"</s><s>")&"</s></t>";"//s")));0)))

Не понимаю зачем такой график нужен. Вообще лучше это макросом сделать
Изменено: Msi2102 - 20.06.2022 15:53:48
 
У меня офис 2019 года, но почему-то в файле формула некорректно отображается.

Но результат увидел, это прямо то, что мне нужно было!  
 
Цитата
evdokimovpavel28 написал:
но почему-то в файле формула некорректно отображается
, что именно некорректно отображается, сейчас скачал свой файл, всё как должно быть
 
Вот таким образом отображается формула и почему-то она не протягивается дальше
 
А у Вас точно 2019?
Сделайте макросом и не мучайтесь
Код
Sub Макрос1()
Dim arr1, arr2, n As Long, m As Byte
arr1 = Range(Cells(4, 1), Cells(4, Cells(4, Columns.Count).End(xlToLeft).Column))
arr2 = Array(1, 1, 1, 0, 0, 1, 1, 1, 1, 0)
m = 0
For n = LBound(arr1, 2) + 1 To UBound(arr1, 2)
    If arr1(1, n) = 0 Then
        arr1(1, n) = arr2(m)
        If m = UBound(arr2) Then m = 0 Else m = m + 1
    Else
        arr1(1, n) = 0
    End If
Next
arr1(1, 1) = "Рабочие дни"
Range(Cells(8, 1), Cells(8, Cells(4, Columns.Count).End(xlToLeft).Column)) = arr1
End Sub
 
Пишет, что 2019...

Спасибо, попробую макросом сделать тогда.

Но формула очень крутая, жаль, что у меня "ФИЛЬТР" не отображается, так бы её точно использовал.

Огромное Вам спасибо, что не бросили в этой задаче :)  
 
УПС, у меня LTSC  :D
 
Ещё раз спасибо большое)

Теперь создам новую тему, как сделать отсрочку платежа )
 
evdokimovpavel28, для мака отдельная ветка есть
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Спасибо большое, не видел
 
Подскажите, пожалуйста, как можно преобразовать формулу из листа "прогноз по дням" (строка 5), чтобы при изменении данных из таблицы рабочий цикл (24-25 строки листа "входная информация") всё менялось согласно новому циклу?

вот ссылка на файл: https://disk.yandex.ru/i/iGegpYUOiYMQ0g
Изменено: evdokimovpavel28 - 20.06.2022 21:12:51
 
Цитата
evdokimovpavel28 написал:
всё менялось согласно новому циклу?
оно так и меняется, меняете значения в диапазоне G25:P25 листа "входная информация", и у Вас меняется график на листе "прогноз по дням" (строка 5). Попробуйте заменить, единицы на ноли и посмотрите на график.
Только я всё равно не пойму, для чего Вам это делать формулой, файл же тупит, делайте это макросом. И вообще не понятно зачем Вам такой график на каждый день, да ещё на 10 лет, Вы бы его хотя-бы транспонировали, всё удобнее было бы.
PS: и если всё-таки у Вас МАК, то лучше в ветку с МАКАМИ, не всё работает одинаково
Изменено: Msi2102 - 21.06.2022 09:53:31
 
Сложность в том, что я ранее на работал с макросом. Если у Вас есть возможность это реализовать, то буду крайне благодарен.  
 
Немного переписал код из 14 сообщения
Код
Sub Макрос1()
Dim arr1, arr2, n As Long, m As Byte
lc = Worksheets("Прогноз по дням").Cells(4, Columns.Count).End(xlToLeft).Column
arr1 = Worksheets("Прогноз по дням").Range(Worksheets("Прогноз по дням").Cells(4, 1), Worksheets("Прогноз по дням").Cells(4, lc))
arr2 = Worksheets("Входная информация").Range(Worksheets("Входная информация").Cells(25, 7), Worksheets("Входная информация").Cells(25, 16)).Value
m = 1
For n = LBound(arr1, 2) + 1 To UBound(arr1, 2)
    If arr1(1, n) = 0 Then
        arr1(1, n) = arr2(1, m)
        If m = UBound(arr2, 2) Then m = 1 Else m = m + 1
    Else
        arr1(1, n) = 0
    End If
Next
arr1(1, 1) = "Рабочие дни для машины"
Worksheets("Прогноз по дням").Range(Worksheets("Прогноз по дням").Cells(5, 1), Worksheets("Прогноз по дням").Cells(5, lc)) = arr1
End Sub

PS: Удалил информацию, чтобы смог загрузить. Скопируете из рабочего файла
Жмите кнопку "РАБОЧИЙ ЦИКЛ" на листе "Входная информация"
Изменено: Msi2102 - 21.06.2022 11:14:17
 
Супер, супер!

Огромное спасибо!
 
Подскажите, правильно ли я понимаю, что этот макрос при изменении горизонта планирования (например, старт планирования не 30.06.2022, а 15.07.2022), то он уже будет работать не совсем корректно ?  
 
Цитата
evdokimovpavel28 написал:
что этот макрос при изменении горизонта планирования
А где вообще шла речь о горизонте планирования?
 
Извините, видимо, это я в голове по умолчанию держал, поэтому и не упомянул...

Но это решение реальное, чтобы макрос ещё учитывал горизонт планирования?  
 
Цитата
evdokimovpavel28 написал:
чтобы макрос ещё учитывал горизонт планирования
Реально, только не понятно, у нужно будет только значения вставлять в нужный диапазон?
И где указывается этот диапазон?
 
То есть у нас есть ячейка сейчас "начало планирования" (в листе "входная информация"), сейчас в ней стоит 30.06.2022.

Но если в ней изменит на другую дату, то весь горизонт планирования изменится (автоматом изменятся выходные и праздники) и можно ли так, чтобы сами рабочие смены авто тоже изменились ?  
 
То есть если мы тут меняем дату, то ничего не работет

Ссылка на модель: https://disk.yandex.ru/d/FU0jyF9EpUVKHg
Страницы: 1 2 След.
Наверх