排序变种?

时间:2011-11-14 05:36:15

标签: excel excel-vba vba

有没有人可以帮我分类变种

   var_a = activesheet.range("A3:AL" & lastrow ).value 

   var_a 1 column has some numbers
   var_a 2 column has dates 2/22/2011 like these
   var_a 3 column some other and so on

现在考虑到具有日期的第2列,整个变体var_a应按升序排序

我知道在纸张上的方法,但从未使用过变体,是的我可以对纸张进行排序,然后将纸张的内容放入var_a是一种解决方案,但对纸张进行分类30到40秒,这是不希望的,所以我想对变体而不是表单进行排序。

请帮我解决这些问题

2 个答案:

答案 0 :(得分:0)

这是一个选择vb6排序算法以满足您需求的好地方:http://www.codeguru.com/vb/gen/vb_misc/algorithms/article.php/c14627

请记住,如果您希望它们正确排序,您可能需要将变量变量包装在转换函数(即cint(),cstr()等)中。例如,您不希望将1000和20排序为字符串,因为它会先放1000个。

答案 1 :(得分:0)

尼科,

不是在变体中实现排序例程,而是应该使用Excel的本机排序。如果您正在努力处理当前文件(我建议您首先尝试使用手动计算对当前数据进行排序),那么解决方法将是

  • 从您当前的文件
  • 派生您的变体
  • 将变体转储到新工作簿(关闭当前文件是一个选项)
  • 运行排序,然后创建新的已排序变体数组,或更新现有变体数组
  • 将已排序的变量数组转储回原始文件(或根据需要进一步操作)