将Sheet3 和Sheet5 中的数据项同时按关键列排序, 一般默认按A-Z升序排列. (关于数组的排序可以参考高效的QuickSort排序算法). 在此不将Sheet3 和Sheet5 的排序的时间计算在内.
下面先给出按指定名称建立新Sheet的函数, 若不存在指定名称的Sheet, 则新建; 若Sheet已存在且用户同意删除, 则删除后新建一页Sheet, 若用户不同意删除, 则对新建的Sheet命名为指定名称后加Sheets.Count.
取数据项交集的VBA 代码:
该算法的时间复杂度为 O(m+n) = O(n), 缺点是调用GetMixedData函数需要传递的参数过于多.
Author:David
Mail:xiang.okay@gmail.com