Страницы: 1
RSS
Добавление промежуточных задач в таблицу задач сотрудника
 
Добрый день, великие умы планеты Excel.

Есть проблема, не могу понять как можно обойти формулу "НАИМЕНЬШИЙ()" в массиве так, чтобы выводить другие значения, но не вместо каких-то записей, а выводить между нужными.

Более детально, наверное, можно будет понять из таблицы)
 
Александр Зуев, c таким названием темы мы не найдем скоро Вашу тему)  
Не бойтесь совершенства. Вам его не достичь.
 
Понял вас) Но, как мне кажется, её уже не скорректировать?)
Изменено: Александр Зуев - 24.11.2020 13:54:14
 
Предложите новое - модераторы поменяют. А лучше - СРАЗУ формулировать так, чтобы из названия была понятна ЗАДАЧА.
 
Добавление промежуточных задач в таблицу задач сотрудника, сформированных при помощи функции НАИМЕНЬШИЙ() - Так пойдёт?)
 
Юрий М, создал новую зачем-то https://www.planetaexcel.ru/forum/index.php?PAGE_NAME=read&FID=1&TID=134901&...
Не бойтесь совершенства. Вам его не достичь.
 
А если решение без этой функции - не предлагать?
 
Цитата
Mershik написал:
создал новую зачем-то
Прошу прощения, моё сообщение не отображалось, подумал, что закрыли данную тему)
 
Цитата
Юрий М написал:
А если решение без этой функции - не предлагать?
Готов рассмотреть, главное из общей таблицы сформировать список задач в другие по сотрудникам)
 
Тогда зачем в названии упоминать конкретную функцию?  
 
Цитата
Юрий М написал:
Тогда зачем в названии упоминать конкретную функцию?  
Думал - для большей информативности (как делал), но если это важно - то пусть будет без упоминания данной функции в названии)
 
Александр Зуев,  прекратите бездумно цитировать!
 
Тема: Выбор всех задач по указанному сотруднику с учетом обеда и опоздания

вариант макросом:
Код
Sub ds()
Dim i As Long, lr As Long
lr = Cells(Rows.Count, 1).End(xlUp).Row
Range("H7:L" & lr).ClearContents
k = 7

For i = 7 To lr
s = Application.WorksheetFunction.Sum(Range(Cells(6, 10), Cells(k, 10)))
If Cells(3, 11) <> "" And s = Cells(3, 10) Then
    Cells(k, 9) = Cells(3, 11)
    Cells(k, 10) = Cells(3, 9)
    Cells(k, 11) = Application.WorksheetFunction.Sum(Range(Cells(6, 10), Cells(k, 10)))
    Cells(k, 12) = Cells(1, 9)
    k = k + 1
End If
If s = Cells(4, 10) And Cells(4, 10) <> "" Then
s = Application.WorksheetFunction.Sum(Range(Cells(6, 10), Cells(k, 10)))
    Cells(k, 9) = Cells(4, 11)
    Cells(k, 10) = Cells(4, 9)
    Cells(k, 11) = Application.WorksheetFunction.Sum(Range(Cells(6, 10), Cells(k, 10)))
    Cells(k, 12) = Cells(1, 9)
    k = k + 1
Else
    If Cells(i, 5) = Cells(1, 9) Then
        Cells(k, 8) = Cells(i, 1)
        Cells(k, 9) = Cells(i, 2)
        Cells(k, 10) = Cells(i, 3)
        Cells(k, 11) = Application.WorksheetFunction.Sum(Range(Cells(6, 10), Cells(k, 10)))
        Cells(k, 12) = Cells(1, 9)
        k = k + 1
    End If
End If
Next i
End Sub


Не бойтесь совершенства. Вам его не достичь.
 
А формулами такое нельзя осуществить?)
 
Александр Зуев, наверное можно)
просто уверен что вы не полные данные указали. типа а может быть ли сотрудник опоздать не с 0 минуты а после обеда? или вообще среди рабочего дня отлучился так сказать?
Изменено: Mershik - 24.11.2020 15:15:34
Не бойтесь совершенства. Вам его не достичь.
 
Верно, может быть несколько случае в разное время, потому и искал что-то динамичное, но, увы, макрос тут не совсем подходит)
 
Александр Зуев, как раз то в данному случает только макрос и подходит) а формулами хотите подождите, но мой Вам совет - сразу заменить файл-пример с учетом нашего обсуждения, а именно показать возможные варианты с максимальным кол-вом переменных, потмоу что Вас кто-то с формулой поможет, а вы скажете "ой я забыл сказать что опоздания могут быть среди дня" или что-то в этом духе, а макрос же настроить проще) но вообщем удачи
Не бойтесь совершенства. Вам его не достичь.
 
Понял вас, подкорректировал, надеюсь что всё же кто-то поможет решить данную задачу через формулы)
 
Александр Зуев, и все же лучше использовать макрос (но уже нужно переделывать) - но делать я этого не стану так как вам не нужен он, мне кажется формула тут будет очень большой и возможно поэтому ее не будет)
Не бойтесь совершенства. Вам его не достичь.
Страницы: 1
Наверх