Вниз
Скачать: CL | DM;

Сортировка данных   Найти похожие ветки 

 
Soi_ ©   (2007-05-31 10:43) [0]

Добрый день! Подскажите как можно решить следующий вопрос:
У меня есть 2 excel- файла, вот его содержание.

  Файл №1                                        Файл №2
  Вася                                              Федя
  Петя                                              Ваня
  Федя                                             Петя
  Ваня                                              Кузя    

Мне необходимо их отсортировать вот в таком порядке:

   Файл №1                                        Файл №2
   Ваня                                              Ваня
   Петя                                              Петя
   Федя                                             Федя
   Вася                                              Кузя  

(мне в общем надо чтобы имена в какждой ячейке соответствовали друг другу, а те которых нет парных оставались в низу). Результат желательно поместить в третий excel-файл.


 
Сергей М. ©   (2007-05-31 10:52) [1]

Если содержимое обоих xls-таблиц сравнительно невелико, можно задействовать класс TStringList.


 
Soi_ ©   (2007-05-31 11:00) [2]

Да вот содержимое как раз приличное, примерно 6000 строк.  А вообще подскажите мне сам принцип, я если честно не представляю как это сделать


 
Сергей М. ©   (2007-05-31 11:15) [3]


> 6000 строк


Не так уж и много.


> принцип


1. Списки строк из обоих xls-таблиц грузятся соответственно в SL1 и SL2.

2. Один из списков, например SL2, подвергается сортировке для ускорения поиска.

3. В цикле по числу элементов списка SL1 для каждого i-го элемента ищется его вхождение в список SL2. Если вхождение найдено, элемент SL1[i] асооциируется с индексом j найденного элемента, например, SL1.Objects[i] = j, иначе  SL1.Objects[i] = -1.

4. На основании полученной инф-ции о соответствии оба списка упорядочиваются в соответствии с требованиями топика.

5. Оба списка выгружаются в соответствующие xls-таблицы.



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.013 c
15-1180508378
pasha_golub
2007-05-30 10:59
2007.06.24
В Англии удалено упоминание холокоста...


15-1180078735
iXT
2007-05-25 11:38
2007.06.24
Bitmap(16*16)


8-1160133927
Korneley
2006-10-06 15:25
2007.06.24
Запись с одного источника в несколько звуковых потоков


4-1166968703
vertal
2006-12-24 16:58
2007.06.24
Нахождение имен всех com-портов в системе


2-1180439008
Sasha Sanches
2007-05-29 15:43
2007.06.24
Аппраксимация...




   Наверх