Also ich mag es ja selber nicht unbedingt, wenn man eine Frage stellt und dann als Antwort bekommt, dass man es ganz anders machen soll(te). Trotzdem muss ich mal fragen, warum verwendest Du kein DBGrid? Gibt es irgendwas, dass Dich dazu zwingt? (Das Zusammenführen lasse ich nicht gelten, das ist eine Kernfunktion von
SQL)
Alles was Du schreibst, (Mehrfach-)Sortierung (erst recht nach Datum, Zahlen), Listen zusammenführen usw. verlangt nach
SQL und folglich einem DBGrid zur Darstellung. Dein "Monstercode", der nicht mal einen Teil der Anforderungen erfüllt, würde sich auf wenige Zeilen reduzieren und zudem robust werden.