【问题标题】:Sorting data by range of numbers按数字范围对数据进行排序
【发布时间】:2014-05-18 22:51:25
【问题描述】:

我在 asc 中收到按采购订单采购订单编号排序的数据表。 为了进一步分析数据,我应该按业务方向(例如部门或部门)对其进行分类。有一系列订单号,每个订单号都与特定方向相关,如 1000-1999 方向 A,2000-2999 方向 B。 理想情况下,我需要它们按升序自动排序,下方有额外的总和行,上方有方向名称。 问题是,数字中的数字数量不受限制,这意味着对于一些额外的订单,可能会在旁边添加一位数字,甚至是斜线和字母,例如 2000/A 或 20,000 - 最后一个应该是在 2000-2999 个 PO 范围内。

什么可以用来解决问题?

【问题讨论】:

  • 那么你真的只关心字段的第一个数字吗?
  • 好吧,这么说吧,PO的第一个范围是1到99000,第二个是100000到199999,以此类推。我最关心前 6 位数字,其余在数字末尾添加不同的 PO 可能会手动排序。

标签: excel sorting numbers range


【解决方案1】:

我不确定这是否能解决您的问题。这个函数会从右边依次收缩一个字符串,直到它是一个数字。您可以将此函数输入到 vba 模块中,然后在电子表格中使用它。

Function getnumber(s As String) As Integer
    Dim i As Integer
    For i = Len(s) To 0 Step -1
        If IsNumeric(Left(s, i)) Then
            getnumber = Left(s, i)
            i = 0
        End If
    Next i
End Function

如果这可行,我很高兴。如果没有,您需要说明您要查找的内容。

我建议的最重要的事情是重新定义您的输入,以减少这种乏味。

【讨论】:

    猜你喜欢
    • 2017-10-30
    • 1970-01-01
    • 2019-02-07
    • 2020-03-21
    • 2021-12-19
    • 2018-02-04
    • 1970-01-01
    • 2019-01-01
    • 2012-09-17
    相关资源
    最近更新 更多