Вниз
Скачать: 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.015 c
2-1180802187
Nipel
2007-06-02 20:36
2007.06.24
finddialog


2-1180620499
Riply
2007-05-31 18:08
2007.06.24
SizeOf("Device") - един в трех лицах :)


2-1180470696
Slimer
2007-05-30 00:31
2007.06.24
Extended to String


11-1163603498
SysError
2006-11-15 18:11
2007.06.24
http://www.kolnmck.ru/files/242a/kol_mck.7z


15-1180327638
Slider007
2007-05-28 08:47
2007.06.24
Установленные пиратские Вин 2000/ХР и лицензия




   Наверх