如何将Excel数值转换为桶?

分类: mobile3656 时间: 2025-10-11 02:10:00 作者: admin 阅读: 2037
如何将Excel数值转换为桶?

2525正确的方法是使用您所需的限制和相应名称创建一个范围。

然后,您可以使用vlookup()函数,并将第四个参数设置为True,以创建范围查找。

注意:我的计算机使用;作为分隔符,您的可能使用,。

根据您的区域设置调整公式。

- iDevlop14我经常回到这个帖子查找这个超级有用的公式。但每次我这样做时,我都必须重新记住要用逗号替换分号。最终我查明了原因,发现这是一个Windows区域设置造成的! - colorlace回答链接1717一种创建区间桶的好方法是使用LOOKUP()函数。

在此示例中,单元格A1包含天数计数。第二个参数是值列表,第三个参数是区间名称列表。

=LOOKUP(A1,{0,7,14,31,90,180,360},{"0-6","7-13","14-30","31-89","90-179","180-359",">360"})

- Data Teddy11这个应该在这里排名更高。在我多年编写的所有函数和VBA脚本中,这无疑是最简单和最清晰的,特别是当你处理大量数据时。 - pheeper回答链接1010创建这个的另一种方法是使用if条件语句...意思是你将引用一个具有值的单元格,并根据该值给出桶的大小,例如small。

例如:=if(b2>30,"large",if(b2>20,"medium",if(b2>=10,"small",if(b2<10,"tiny",""))))

所以如果单元格b2的值为12,它将返回单词small。

希望这是您想要的内容。

- Aris Laguna回答链接66也许不完全符合您的要求,但尝试使用Excel的条件格式功能如何?

编辑:

作为替代方案,您可以创建一个VBA函数作为公式来执行计算。类似于:

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

- Nathan Fisher回答链接66如果您只需要计算每个类别中有多少值,那么这是一个经典的统计问题,并且可以通过“直方图”非常简洁地解决。在Excel中,您可以使用数据分析插件(如果尚未安装,请参考下面的链接)。一旦了解了直方图,就可以将数据迅速分成称为“bin”的桶,轻松调整您的bin并自动绘制数据。它只需要三个简单的步骤:

1)将您的数据放入一列

2)为bin(10、20、30等)创建一个列

3)选择“数据” - > “数据分析” - > “直方图”,然后按照选择数据范围和bin的说明操作(您可以将结果放入新工作表并从同一菜单中绘制结果)

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

- Alex11链接无法使用。这个可以:https://support.office.com/zh-cn/article/%E5%88%9B%E5%BB%BA%E6%9F%B1%E7%8A%B6%E5%9B%BE-b6814e9e-5860-4113-ba51-e3a1b9ee1bbe - JustAC0der回答链接66您需要查找LOOKUP函数。请参阅以下页面以了解更多信息:数据桶(在范围内)

- RussellZ回答链接44这里是一个解决方案,它具有以下特点:

自包含

不需要VBA

不像IF函数在桶的最大值方面受到限制

不需要像LOOKUP函数那样精确的值

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

用适当的单元格引用替换[INPUT_VALUE],并确保按Ctrl+Shift+Enter,因为这是一个数组公式。

每个数组常量可以扩展到任意长度;只要公式不超过Excel的最大字符限制8,192个。第一个常量应包含返回值,第二个应包含有序阈值,第三个应该只是升序整数。

- Skoddie回答链接33我更喜欢使用数字公式来标记存储桶。如果存储桶大小为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)

- arx回答链接22也许这会对你有所帮助:

=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")))))

只需要更改数值以及文字,就可以将其设置为小、中、大三种尺寸。

- user6547605回答链接00如果条件是最好的方法。如果您想要计数,请使用桶的数据透视表。这是最简单的方法,而且条件语句也可以用于超过5-6个桶。

- Lucky Parashar回答链接

相关推荐