2016-01-26 1 views
0

Несмотря на то, что я получил здесь, я нашел отправку данных в excel, чтобы использовать excel, созданный в сортировке, был намного быстрее Excel.Range.Sort ("sending it to Excel"). В моей голове я предположил, что excel, вероятно, написан на более эффективном языке, и эффективность такого большого набора данных перевешивает небольшие служебные данные COM для передачи данных.Сортировка класса vb.net быстрее, чем использование excel

Теперь я использую пользовательский класс, мне было интересно, если пользовательский сортировать IComparable быстрее. Кто-нибудь сравнил их?

+0

Вы не можете сортировать объект класса/класса - это всего лишь одно. Там должна быть какая-то коллекция вещей, которая сортируется. Никто не может сказать, почему это может быть медленным, не видя кода. – Plutonix

+0

Не медленнее, я уже сбросил 2-х мерный массив, и да, я знаю, что могу сортировать класс. Я пытаюсь проверить, выполняется ли сортировка класса быстрее, чем отправка данных в excel для сортировки. – blindguy

+1

[Который быстрее?] (Http://ericlippert.com/2012/12/17/performance-rant/) – Plutonix

ответ

0

Ваш вопрос не очень ясен. Я принимаю это означает, что вы сравниваете два метода:

  1. Держа свои данные в электронную таблицу, и вызов Excel.Range.Sort («отправить его в Excel»)

  2. Проведение данных в Массив Visual Basic и сортировка его с помощью собственного кода с использованием циклов и сравнений, написанных в VBA.

Техника 1 будет намного быстрее.

+0

Техника 2 - это старая техника. Может быть, не стоит упоминать, как я добрался туда, где я нахожусь. – blindguy

+1

Это неверно. Как обмен данными Excel, так и визуальные методы, такие как «Range.Sort», имеют значительные накладные расходы. Я почти всегда мог сопоставлять или превосходить Excel * даже * с VBA, особенно *, если данные не были уже в диапазоне, который нужно отсортировать. Если данные находятся на VB.net, это вообще не конкурс. – RBarryYoung

+0

Ни ответ, ни комментарий не содержат каких-либо эмпирических доказательств, подтверждающих утверждение претензии. Поэтому почему я голосовал, чтобы закрыть этот вопрос, поскольку привлек в основном ответы, основанные на мнениях ... – Jeroen