Delphi-Quellcode:
for i:=0 to Tage.Items.Count-1 do
if Tage.Items.Strings[i]='' then Tage.Items.Delete(i);
Die Schleife solltest Du rückwärts laufen lassen, da Du sonst 2 aufeinander folgende Leerzeilen nicht erkennst.
Ansonsten:
Was funktioniert denn nicht?
Setze mal einen Haltepunkt, debugge schrittweise und untersuche Deine Variablen. Das sollte helfen...