在Excel中对字母数字日期排序

时间:2016-03-03 22:21:26

标签: excel

我有一个数据集,一列代表产品的有效期,格式如下:1M,2M,1Y,2Y,1W,2W,1D,2D。我想在Excel中基于这些日期对数据进行排序,但我是以非常低效的方式进行排序,通过在几天内表达所有内容然后根据我创建的Days_column对数据进行排序。有没有更好的方法来处理这类数据? enter image description here

2 个答案:

答案 0 :(得分:0)

我想我明白这一点。这是最终结果的图片: enter image description here

我在这里找到了一些很好的信息:https://support.office.com/en-us/article/Add-or-subtract-dates-b83768f5-f695-4311-98b1-757345f7e926#bm6

我把它放在D2中并将其复制下来:Sigma = { 'a', 'b', '(', ')' }。在单元格E2中,我放了=LEFT(C2,LEN(C2)-1),并将其一直复制下来。在F2中,我有=RIGHT(C2,1)

注意:添加月份取决于即将到来的月份中的天数,并不总是等于30.请注意,1月31日加入到2016年2月29日。添加年份的方式相同,您不必担心闰年会弄乱您。

几个星期以来,我用了几周的时间乘以7,然后将这几天添加到购买日期。

答案 1 :(得分:0)

您可以将到期时间分为两列 - Expiry_number,即到期的持续时间或数字部分,以及Expiry_unit即M,D,Y。您可以使用函数将其拆分,例如数字栏:

=LEFT(D3, LEN(D3)-1)

其中D3到期。然后你的单位列:

=Right(D3, 1)

然后你可以在两个级别上对数据进行排序 - 按Expiry_unit的字母顺序排列(如果持续时间单位的长度按字母顺序增加D,M,Y),然后按数字Expiry_number进行数字排序