按列中的部分值对Excel工作表进行排序

时间:2015-04-10 21:27:26

标签: excel excel-vba vba

我在Excel工作表中有一些列,每行都有不同的数据。 Excel中有大约3,000行。如下图所示:

SeNo    Object  contents
2   Zclss   5mport sy-mandt = '080'
5   Zclss   abcd sy-mandt = '070'
3   zinvice cVb sy-mandt = '060'
6   Zclss   exportsy-mandt = '050'
7   Zclss   import sy-mandt = '060'
1   zmed    import sy-mandt = '070'
4   zgood   jmport sy-mandt = '050'

每行有一个数据,其中包含一些数字。现在我的requireMt根据数字和数据在Excel表格中排列数据。列中的值假设列“C”中的070是否为70行。我希望所有包含数字070的行在一个工作表中或按顺序显示

1   zmed    import sy-mandt = '070'
5   Zclss   abcd sy-mandt = '070'
4   zgood   jmport sy-mandt = '050'
6   Zclss   exportsy-mandt = '050'
7   Zclss   import sy-mandt = '060'
3   zinvice cVb sy-mandt = '060'
2   Zclss   5mport sy-mandt = '080'

他们不需要是同一个订单更好的代码,我希望所有070一面,50面......

如何解决此问题?

1 个答案:

答案 0 :(得分:0)

我认为这个问题与工作有关。

1)首先从070列中的值中提取包含三位数字(C等)的字符串部分到另一个空(或新)列。

2)然后先按A列排序,然后再按新列排序。 (如果在工作表上执行此操作,请不要忘记选择标题单元格 - 而不是每个列的整个列。)

您将看到数据将按三位数字分组,并按每组Sello排序。

此操作可以通过但不需要vba来完成。