Как преобразовать значения Excel в ведра?

У меня есть набор данных в Excel и в одном столбце-это оценка (количество недель)

Я хочу, чтобы формула Excel ведро его в

  • маленький
  • средний
  • большой

где, если значение 0-10, то поместите его маленьким. Если значение 10-20, поместите его в среду и т. д. . .

Если есть какой-либо элегантный способ сделать это, кроме вложенных операторов if, все вместе взятых?

10 ответов


может быть не совсем то, что вы искали, но как насчет использования функции условного форматирования Excel

изменить: Качестве альтернативы вы могли бы создать функцию VBA, которая выступает в качестве формулы, которая будет делать calulation для вас. что-то вроде

Function getBucket(rng As Range) As String
    Dim strReturn As String

    Select Case rng.Value
        Case 0 to 10
            strReturn = "Small"
        Case 11 To 20
             strReturn = "Medium"
        Case 21 To 30
             strReturn = "Large"
        Case 31 To 40
             strReturn = "Huge"
        Case Else
             strReturn = "OMG!!!"
    End Select
    getBucket = strReturn
End Function

правильным инструментом для этого является создание диапазона с вашими ограничениями и соответствующими именами. Затем вы можете использовать функцию vlookup () с 4-м параметром, установленным в Trueсоздать поиск.

enter image description here


другой метод для создания этого будет использовать if условные...это означает, что вы ссылаетесь на ячейку, которая имеет значение, и в зависимости от этого значения она даст вам ведро, такое как small.

например, =if(b2>30,"large",if(b2>20,"medium",if(b2>=10,"small",if(b2<10,"tiny",""))))

так, если ячейка b2 имеет значение 12, тогда он вернет слово small.

надеюсь, это то, что вы ищете.


Если все, что вам нужно сделать, это графа сколько значений в каждой категории, то это классический вопрос статистики и может быть очень элегантно решена с "гистограммы."

в Excel вы используете надстройку анализа данных (если у вас ее еще нет, обратитесь к ссылке ниже). Как только вы поймете гистограммы, вы можете разделить свои данные на ведра - называемые "бункерами" - очень быстро, легко настроить свои бункеры и автоматически отображать данные.

Это три простых шага: 1) Поместите данные в один столбец 2) Создайте столбец для своих бункеров (10, 20, 30 и т. д.) 3) Выберите Данные --> Анализ данных --> гистограмма и следуйте инструкциям по выбору диапазона данных и бункеров (вы можете поместить результаты в новый лист и отобразить результаты из этого же меню)

http://office.microsoft.com/en-us/excel-help/create-a-histogram-HP001098364.aspx


вы ищете функцию поиска. дополнительную информацию см. На следующей странице:

ведра данных (в диапазоне)


хорошим способом создания ведер является функция LOOKUP ().

в этом примере содержит ячейку A1-это количество дней. Второй параметр - это список значений. Третий параметр-это список имен ведра.

=поиск (A1,{0,7,14,31,90,180,360},{"0-6","7-13","14-30","31-89","90-179","180-359",">360"})


может быть, это может помочь вам:

=IF(N6<10,"0-10",IF(N6<20,"10-20",IF(N6<30,"20-30",IF(N6<40,"30-40",IF(N6<50,"40-50")))))

просто замените значения и текст на малый, средний и большой.


вот решение, которое:

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

=INDEX({"Small","Medium","Large"},LARGE(IF([INPUT_VALUE]>{0,11,21},{1,2,3}),1))

заменить [INPUT_VALUE] С соответствующей ссылкой на ячейку и обязательно нажмите Ctrl + Shift+Enter поскольку это массив формула.

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


Если условия-лучший способ сделать это. Если вы хотите, чтобы счетчик использовал сводную таблицу ведер. Это самый простой способ, и если условия могут пойти на более чем 5-6 ведер тоже


Я предпочитаю помечать ведра числовой формулой. Если размер ведра равен 10, то это обозначает ведра 0,1,2,...

=INT(A1/10)

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

если ячейка B1 содержит ведро (0,1,2,...) и столбец 6 содержит имена Low, Medium, High, тогда эта формула преобразует ведро в имя:

=INDIRECT(ADDRESS(1+B1,6))

кроме того, это помечает ведра с наименьшим значением в наборе, т. е. 0,10,20,...

=10*INT(A1/10)

или это ярлыки них с диапазоном 0-10,10-20,20-30,...

=10*INT(A1/10) & "-" & (10*INT(A1/10)+10)