KutoolsforOffice — Одно решение — пять мощных инструментов.Меньше усилий — больше результата.

Как отбросить наименьшую оценку и рассчитать среднее значение или сумму остальных значений в Excel?

АвторСяоянДата изменения

При работе со списком оценок или баллов в Excel вам может понадобиться рассчитать итоговую оценку студента, исключив его самый низкий результат или даже *n* самых низких результатов перед вычислением среднего значения или суммы оставшихся значений. Это распространённая практика в образовательной сфере, где студентам разрешают не учитывать худшие результаты — чтобы сгладить случайные сбои или обеспечить большую справедливость. Выполнение такой операции вручную быстро становится утомительным, особенно при работе с большими объёмами данных или при частой корректировке расчётов. К счастью, Excel предлагает несколько гибких решений: от простых формул до автоматизации с помощью VBA для пакетной обработки.

Отбросьте наименьшую оценку и получите среднее значение или сумму с помощью формул

Код VBA — отбросьте наименьшую или n наименьших оценок и автоматически вычислите сумму или среднее значение


синяя стрелка вправо в пузыреОтбросьте наименьшую оценку и получите среднее значение или сумму с помощью формул

Если вы хотите исключить наименьшее или *n* наименьших значений из строки данных или списка, а затем выполнить расчёты — например, найти среднее значение или сумму оставшихся чисел, — встроенные формулы Excel обеспечивают практичное и гибкое решение. Такой подход особенно удобен при работе с умеренным объёмом данных или когда вы цените прозрачность и простоту настройки, которые дают формулы.

Ниже приведены отдельные пояснения методов суммирования и вычисления среднего значения, включая подробные инструкции и практические советы для их гибкого применения.

Просуммируйте числа, но отбросьте наименьшее или N наименьших чисел:

Чтобы вычислить сумму для каждой строки или списка с исключением наименьшего значения, используйте следующий метод:

1. Выберите пустую ячейку, в которую хотите поместить сумму по первой строке (например, I2, если ваши данные находятся в диапазоне B2:H2), и введите следующую формулу:

=SUM(B2:H2)-SMALL(B2:H2,1)

2. Нажмите клавишу Enter, чтобы подтвердить ввод, затем перетащите маркер заполнения вниз — так формула автоматически применится ко всем нужным строкам. В результате в каждой строке будут просуммированы все числа, за исключением наименьшего значения.

Скриншот для справки:

Суммирование чисел с отбрасыванием наименьшего значения с помощью формулы

Примечания и советы:

  • Чтобы исключить два, три или даже больше наименьших значений, просто расширьте формулу, вычитая дополнительные результаты функции SMALL. Например:
=SUM(B2:H2)-SMALL(B2:H2,1)-SMALL(B2:H2,2)
=SUM(B2:H2)-SMALL(B2:H2,1)-SMALL(B2:H2,2)-SMALL(B2:H2,3)
=SUM(B2:H2)-SMALL(B2:H2,1)-SMALL(B2:H2,2)-SMALL(B2:H2,3)-...-SMALL(B2:H2,n)
  • В этих формулах B2:H2 — это диапазон, который вы хотите просуммировать, а числа 1, 2, 3 и т.д. указывают, сколько наименьших значений следует исключить. Настройте значение n в зависимости от количества наименьших оценок, которые вы хотите отбросить.
  • Будьте внимательны: не устанавливайте значение n больше или равным общему количеству значений — в противном случае вы получите ошибку или нежелательные результаты.
  • Эти формулы работают независимо для каждой строки. Если ваши данные организованы по столбцам, а не по строкам, скорректируйте диапазоны соответствующим образом.
  • Если в вашем наборе данных есть дубликаты наименьшего числа, функция SMALL(B2:H2,1) исключит только одно вхождение за раз. Чтобы исключить несколько вхождений, повторите функцию SMALL, увеличивая значение k, как показано выше.

Вычислите среднее значение чисел, но отбросьте наименьшее или N наименьших чисел:

Чтобы вычислить среднее значение, исключив наименьшее или n наименьших значений, воспользуйтесь приведёнными ниже формулами. Этот приём особенно полезен в системах оценивания, где низкие выбросы не должны влиять на итоговое среднее.

1. Выберите ячейку для отображения среднего значения (например, J2, если ваши оценки находятся в диапазоне B2:H2) и введите формулу:

=(SUM(B2:H2)-SMALL(B2:H2,1))/(COUNT(B2:H2)-1)

2. После нажатия клавиши Enter перетащите формулу вниз столько, сколько нужно, чтобы рассчитать среднее значение для дополнительных строк, каждый раз исключая наименьшую оценку из диапазона соответствующей строки.

Вычисление среднего значения чисел с отбрасыванием наименьшего значения с помощью формулы

Примечания и важные рекомендации:

  • Чтобы вычислить среднее значение с отбрасыванием более чем одной наименьшей оценки, расширьте формулу, вычитая дополнительные члены SMALLи соответственно уменьшая делитель:
=(SUM(B2:H2)-SMALL(B2:H2,1)-SMALL(B2:H2,2))/(COUNT(B2:H2)-2)
=(SUM(B2:H2)-SMALL(B2:H2,1)-SMALL(B2:H2,2)-SMALL(B2:H2,3))/(COUNT(B2:H2)-3)
=(SUM(B2:H2)-SMALL(B2:H2,1)-SMALL(B2:H2,2)-SMALL(B2:H2,3)-...-SMALL(B2:H2,n))/(COUNT(B2:H2)-n)
  • Напоминаем ещё раз: B2:H2 — это диапазон для вычисления среднего значения, а n указывает, сколько наименьших значений будет исключено из расчёта.
  • Если вы попытаетесь исключить из расчёта больше чисел, чем содержится в диапазоне, формулы вернут ошибку #ЧИСЛО!, сигнализирующую о недостаточном количестве значений для вычисления среднего. Всегда убедитесь, что значение n меньше общего количества чисел.
  • Перед исключением наименьших значений обязательно убедитесь, что они не являются критически важными или необходимыми для вашего расчёта — это может повлиять на окончательный результат.
  • Для очень больших наборов данных или динамического отбрасывания n наименьших значений рекомендуем использовать автоматизированные решения или формулы с массивами.
снимок экрана kutools for excel ai

Раскройте магию Excel с помощью KUTOOLS AI

  • Интеллектуальное выполнение: Выполняйте операции с ячейками, анализируйте данные и создавайте диаграммы — всё это доступно через простые команды.
  • Пользовательские формулы: создавайте индивидуальные формулы для оптимизации рабочих процессов.
  • Программирование на VBA: Пишите и внедряйте код VBA легко и без усилий.
  • Анализ формул: Легко разбирайтесь даже в самых сложных формулах.
  • Перевод текста: Ломайте языковые барьеры прямо в ваших таблицах.
Расширьте возможности Excel с помощью инструментов на базе ИИ.Скачать сейчаси ощутите эффективность, как никогда раньше!

синяя стрелка вправо в пузыре Код VBA — отбросьте наименьшую или n наименьших оценок и автоматически вычислите сумму или среднее значение

В ситуациях с большими или часто обновляемыми наборами данных, а также при необходимости автоматизировать отбрасывание n наименьших значений и расчёт сумм или средних по множеству строк, VBA существенно упрощает рутинные задачи. С помощью макроса вы задаёте диапазон данных и количество наименьших значений, подлежащих исключению, — и код мгновенно обрабатывает все выбранные строки за один проход.

Такой автоматизированный подход особенно полезен преподавателям, управляющим таблицами нескольких классов, а также всем, кто стремится свести к минимуму ручной ввод формул и возможные ошибки. Представленное ниже решение позволяет легко настраивать как количество исключаемых оценок, так и целевую функцию — сумму или среднее значение.

Прежде чем начать, обязательно сохраните книгу — макросы нельзя отменить напрямую.

1. Щёлкните Разработчик > Visual Basic. В окне Microsoft Visual Basic для приложений нажмите Вставка > Модуль и введите следующий код:

Sub DropLowestNandCalculate()
    Dim WorkRng As Range
    Dim OutputRng As Range
    Dim n As Integer
    Dim FuncType As String
    Dim i As Integer, j As Integer, k As Integer
    Dim Arr() As Variant, TempArr() As Double
    Dim RowSum As Double
    Dim RowCount As Integer
    Dim MinIdx() As Integer
    
    On Error Resume Next
    xTitleId = "KutoolsforExcel"
    
    Set WorkRng = Application.Selection
    Set WorkRng = Application.InputBox("Select the score range (rows to process):", xTitleId, WorkRng.Address, Type:=8)
    
    Set OutputRng = Application.InputBox("Select output cells (top-left for results):", xTitleId, WorkRng.Offset(0, WorkRng.Columns.Count).Cells(1, 1).Address, Type:=8)
    
    n = Application.InputBox("Number of lowest grades to drop (n):", xTitleId, "1", Type:=1)
    
    FuncType = Application.InputBox("Type 'SUM' to calculate total or 'AVG' to calculate average (not case sensitive):", xTitleId, "AVG", Type:=2)
    
    For i = 1 To WorkRng.Rows.Count
        Arr = Application.WorksheetFunction.Transpose(Application.WorksheetFunction.Transpose(WorkRng.Rows(i).Value))
        RowCount = UBound(Arr)
        
        ReDim TempArr(1 To RowCount)
        For j = 1 To RowCount
            TempArr(j) = Arr(j)
        Next j
        
        ' Mark n lowest values as used by setting to very high number
        For k = 1 To n
            Dim MinVal As Double, MinPos As Integer
            MinVal = Application.WorksheetFunction.Min(TempArr)
            
            For j = 1 To RowCount
                If TempArr(j) = MinVal Then
                    TempArr(j) = 1E+308
                    Exit For
                End If
            Next j
        Next k
        
        RowSum = 0
        Dim ValidCount As Integer
        ValidCount = 0
        
        For j = 1 To RowCount
            If TempArr(j) <> 1E+308 Then
                RowSum = RowSum + Arr(j)
                ValidCount = ValidCount + 1
            End If
        Next j
        
        If UCase(FuncType) = "AVG" Then
            If ValidCount = 0 Then
                OutputRng.Cells(i, 1).Value = "N/A"
            Else
                OutputRng.Cells(i, 1).Value = RowSum / ValidCount
            End If
        Else
            OutputRng.Cells(i, 1).Value = RowSum
        End If
    Next i
End Sub

2. После добавления кода нажмите кнопку Кнопка запуска или клавишу F5, чтобы выполнить его.

3. Следуйте появившимся подсказкам:

  • Выберите диапазон оценок для обработки (убедитесь, что оценки каждого студента расположены в одной строке).
  • Выберите верхнюю левую ячейку в области размещения списка (результаты будут заполняться вниз в зависимости от количества строк).
  • Укажите количество самых низких оценок, которые нужно отбросить (например,)1, чтобы исключить только одну самую низкую оценку в каждой строке).
  • Введите SUM, чтобы получить сумму (исключая отброшенные оценки), или AVG, чтобы получить пересчитанное среднее (исключая отброшенные оценки).

Макрос обрабатывает каждую строку из указанной области оценок и размещает в вашей Области размещения списка либо сумму, либо среднее значение (в зависимости от вашего выбора). Если все оценки в строке исключаются, результат помечается как Н/Д, чтобы избежать ошибок.

  • Убедитесь, что структура входного диапазона соответствует вашим данным: оценки одного студента должны находиться в одной строке.
  • Нечисловые ячейки (например, пустые или содержащие текст) по умолчанию игнорируются.
  • Этот код VBA значительно ускоряет повторяющиеся расчёты оценок для целых классов и обеспечивает гибкую настройку количества отбрасываемых оценок.
  • Если вы часто выполняете подобные операции, мы рекомендуем назначить этот макрос кнопке на листе — так вы получите ещё более быстрый доступ!

Если возникают проблемы, такие как некорректные результаты или ошибки, дважды проверьте правильность указания диапазонов и убедитесь, что значение «n» не Больше или равно общего количества доступных оценок в каждой строке.

Для аналогичных задач автоматизации, например отбрасывания как наивысших, так и наименьших оценок или обработки столбцов вместо строк, можно внести небольшие изменения в логику кода VBA.

Лучшие инструменты повышения продуктивности в Office

🤖KUTOOLS AI Помощник: Преобразуйте Анализ данных с помощью:Интеллектуального выполнения   |  Генерации кода|  Создания пользовательские формулы  |  Анализа данных и построения диаграмм|  Вызова Расширенные функции
Популярные функции:Поиск, выделение или Отметить дубликаты   |  Удалить пустые строки   |  Объединить столбцы или ячеек без потери данных   |  Округление без использования формул
Супер ПОИСК:VLookup по нескольким критериям  |  VLookup по нескольким значениям  |   VLookup по нескольким листам   |   Распознавание нечетких соответствий
Расширенный раскрывающийся список:Быстрое создание выпадающего списка   |  Зависимый выпадающий список   |  Выпадающий список с множественным выбором
Управление столбцами:Добавление заданного количества столбцов|Перемещение столбцов|Переключение видимости скрытых столбцов|Сравнение диапазонов и столбцов
Избранные функции:Сетка фокусировки   |  Просмотр дизайна   |Улучшенная строка формулы   | Управление рабочими книгами и листами   |  Библиотека ресурсов(автотекст)|  Выбор даты   |  Объединить листы  |  Шифрование/Расшифровать ячейки   | Отправка писем по списку   |  Супер фильтр   |   Специальный фильтр(Фильтр ячеек с жирным шрифтом/курсив/зачёркивание…) …
Лучшие наборы инструментов 15:12 Текстовыеинструменты(Добавить текст,Удалить определенные символы, …)|   50+Типыдиаграмм(Диаграмма Ганта, …)|   40+ Практические формулы(Рассчитать возраст на основе даты рождения, …)|   19 Инструментывставки(Вставить QR-код,Вставка изображения по пути, …)|   12 Инструментыпреобразования(Преобразовать в слова,Конвертация валют, …)|   7 Объединить и разделитьИнструменты(Расширенное объединение строк,Разделить ячейки, …)|… и многое другое
Используйте Kutools на предпочитаемом языке — поддержка английского, испанского, немецкого, французского, китайского и ещё 40+ языков!

Раскройте весь потенциал Excel с помощью Kutools для Excel и ощутите эффективность как никогда раньше.Kutools для Excel предлагает более 300 расширенных функций для повышения продуктивности и Экономия времени.Нажмите здесь, чтобы получить нужную Вам функцию…


Office Tab добавляет в Office вкладки и значительно упрощает Вашу работу

  • Включите редактирование и чтение во вкладках в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Открывайте и создавайте несколько документов во вкладках одного окна — вместо того чтобы использовать отдельные окна.
  • Повышает вашу продуктивность на 50 % и экономит сотни кликов мышью каждый день!

Все надстройки Kutools — один установщик

Kutools for Office — набор надстроек для Excel, Word, Outlook и PowerPoint, а также Office Tab Pro, идеально подходящий командам, работающим с разными приложениями Office.

ExcelWordOutlookTabsPowerPoint
  • Единый комплект— надстройки для Excel, Word, Outlook и PowerPoint + Office Tab Pro
  • Один установщик, одна лицензия— настройка занимает считанные минуты (готово для MSI)
  • Лучше работать вместе— оптимизированная продуктивность во всех приложениях Office
  • 30-дневная полнофункциональная пробная версия— без регистрации и кредитной карты
  • Лучшее соотношение цены и качества— экономия по сравнению с покупкой отдельных надстроек